Paso 1: Hardware
Sensor de
Para este proyecto he utilizado un desglose de BME280 que he comprado de eBay para $5. Puede utilizar otros breakout (eventual necesidad de cambiar la dirección I2C de SW o HW), pero he elegido éste por el precio.
Este es el link exacto del listado ordené de, pero otras fuentes deben trabajar así: http://www.ebay.com/itm/1PCS-Breakout-Temperature...
Aunque la imagen muestra un módulo con la máscara de la soldadura azul, mina era de color púrpura. En la parte delantera tiene el sensor y 3 teclas para cambiar la dirección I2C. En la parte posterior es lo que supongo que al ser un regulador de voltaje y un desplazador de nivel de lógica, pero no he probado todavía el módulo en un sistema de 5V.
El breakout salidas sólo los pernos I2C pero es OK ya que el ESP8266 no tiene demasiadas clavijas de repuesto y el sensor no produce una corriente de datos de alta para necesita un interfaz más rápido como SPI.
Módulo Wi-Fi
Porque sólo necesitaba una conexión I2C pensé que sería interesante tomar un módulo ESP-01 y modifíquela. J esto se describe a continuación, pero si no quieres hacer la modificación también puede usar un módulo diferente que todos los pernos hacia afuera, como el ESP-07. Si se decide por un módulo de stock, no olvide atar el pin CH_PD a Vcc.
Para el I2C necesitaba GPIO2 SDA y GPIO14 para SCL. El primero de ellos ya estaba disponible, pero el segundo requiere alguna modificación que hacer. Como generalmente no activamente utilizo el pin CH_PD, decidí modificar el PCB con el fin de la ruta GPIO14 (pin 9) a lo que solía ser el pin de la CH_PD del tablero y cableado pin 7 (que fue conectado previamente al CH_PD) del SoC a Vcc. En la siguiente foto me has marcado con rojo el lugar donde rascó el rastro de PCB y con verde las nuevas conexiones que hice (con hilo de 0,1 mm).
De esta manera obtener un módulo pequeño y robusto tiene 2 GPIOs, no debe preocuparse por mantener CH_PD alto y no haya interferencias con las conexiones necesarias para programar el chip.
Conexiones de
Sensor | Módulo de
SDA à GPIO2
SCL à GPIO14
VCC y GND de ambos módulos ir en paralelo y a un 3,3 v Fuente de alimentación. La fuente de alimentación no se describe en este proyecto pero usar un cargador de teléfono de 5V con un regulador de tensión fija de APL1117-3.3 y 2 condensadores.
Para la programación de conectar los pines TX, RX, RST y GPIO0 a un convertidor de USB-UART. Generalmente uso uno con un CI de CP2102, pero tenga cuidado que sus 3.3V salida no puede entregar corriente suficiente para la ESP8266. Con PL-2303HX parece ser capaces de suministrar el ESP8266.