Stap 1: Hardware
Sensor
Voor dit project heb ik een uitbraak van de BME280 die ik van eBay voor $5 gekocht heb gebruikt. U kunt andere breakout (uiteindelijk nodig hebben om de I2C adres in SW of HW te wijzigen), maar ik heb gekozen dit een gevolg van de prijs.
Dit is de exacte link van de aanbieding die ik besteld bij, maar andere bronnen moeten eveneens werken: http://www.ebay.com/itm/1PCS-Breakout-Temperature...
Hoewel de afbeelding een module met blauwe soldeer masker toont, was mijn paarse. Aan de voorzijde heeft het de sensor en 3 pads voor de I2C adres wijzigen. Op de achterkant het heeft wat ik veronderstellen dat een spanningsregelaar en een logica level shifter, maar ik heb nog niet geprobeerd de module in een 5V-systeem.
De breakout uitgangen alleen de I2C pinnen, maar dit is OK, aangezien de ESP8266 niet teveel pinnen hoeft te sparen en de sensor niet dergelijke een hoge data stream produceren om een snellere interface zoals SPI nodig.
Wi-Fi module
Omdat ik alleen nodig een I2C-verbinding ik dacht dat het zou interessant zijn om te nemen van een ESP-01-module en wijzigen. J dit wordt hieronder beschreven, maar als u niet wilt om te doen de wijziging u kunt ook een andere module, die alle pinnen teruggetrokken, net als de ESP-07 heeft. Als u voor een voorraad module besluit, vergeet niet om het binden van de pin van de CH_PD tot de Vcc.
Voor de I2C nodig ik GPIO2 voor SDA en GPIO14 voor SCL. De eerste was al beschikbaar, maar naar de tweede men vereist enige aanpassing te doen. Als ik meestal niet actief de CH_PD pin gebruikt, besloten heb ik om te wijzigen de PCB om route GPIO14 (pin 9) tot wat vroeger de pin van de CH_PD van de Raad van bestuur en hardwired pin 7 (die was eerder verbonden met CH_PD) worden van de SoC aan de Vcc. In de afbeelding hieronder ik heb gemarkeerd met rood de plaats waar ik de PCB-trace krabde en groen met de nieuwe verbindingen die ik heb (met 0,1 mm draad gemaakt).
Op deze manier krijg ik een kleine en robuuste module die heeft 2 GPIOs, ik heb geen zorgen over het houden van de CH_PD hoog te en er is geen interferentie met de verbindingen die nodig zijn voor het programmeren van de chip.
Verbindingen
Sensor | Module
SDA à GPIO2
SCL à GPIO14
VCC en GND van beide modules parallel en gaan om daar een 3.3V stroomvoorziening. De voeding wordt niet beschreven in dit project, maar ik gebruik een 5V telefoonlader met een APL1117-3.3 vaste spanningsregelaar en 2 condensatoren.
Voor de programmering sluit ik de TX, RX, RST en GPIO0 pinnen naar een USB-UART-converter. Ik meestal de database met een IC CP2102 gebruiken, maar wees voorzichtig dat zijn 3,3 v uitgang kan niet genoeg stroom leveren voor de ESP8266. Degenen met PL-2303HX lijken te kunnen leveren de ESP8266.