På fritiden driver familen min med hundekjøring og vi har 10 alaska huskyer på gården vår. Jeg tenkte derfor det var på tide å lage overvåkning av alle hundehusene slik at vi kan se hvordan hundene har det gjennom året. Er det for varmt, kaldt eller akkurat passe? Dette skal vi nå finne ut av.
I første omgang testet jeg NodeMCU for å se om denne kjekke dingsen kunne brukes til formålet, men det kunne den ikke. Strømforbruket var altfor høyt i deepsleep (ca 10 mA) og jeg fikk bare batteriene til å vare i ca 10 dager. Det blir litt mye styr å skifte batterier hver tiende dag i 10 hundehus, så dette slo jeg raskt fra meg.
Jeg bestilte så noen barebone ESP8266 og satte igang med testing av disse. Her viste det seg med engang at strømforbruket i deepsleep bare var 20 μA. Dette bør fungere. Teoretisk sett så bør jeg klare å kjøre sensorene i 60 dager på 2 vanlige AA-batterier dersom jeg sender data hvert 5 minutt og med dagens kodebase.
En typisk syklus tar ca 7 sek og er fordelt slik:
Alt dette kommer i små deler og må loddes sammen, så det krever litt loddekunnskap for å få det til.
Jeg har ikke noen PCBer til disse sensorene mine ennå, så jeg gikk derfor igang med å lage de ledningene som trengs.
Hovedsensoren BME280 må også loddes, men dette er fort gjort. Det er bare å lodde på pinnene og så plugge på dupont-ledninger.
Siste koblinger er nå på plass og boksen er klare til test.
Her kan du lese mer om hvordan jeg oppdaterer alle IoT-enhetene mine
Alle hundehusene sender data over til mqtt som igjen sender dette over til AWS IoT. Her er det satt opp regler for varsling av batteritilstand og temperatur. I tillegg lagres all data i Elasticsearch slik at jeg kan bruke dette til maskinlæring senere.
Nå har jeg loddet og knotet lenge nok med kabler og koblinger, så nå har tiden kommet for å lage sitt eget kretskort.
Flere har spurt meg om hvordan de kommer igang med IoT-utvikling, så derfor har jeg laget en liten 101-guide på hvordan du enklest starter opp.