Schemat blokowy układu pokazano na rysunku 1.
Na rysunku 2 widzimy schemat wymaganego zasilacza stabilizowanego. Zbudowany jest on w oparciu o transformator obniżający z uzwojeniem wtórnym z odczepem w środku (12 V-0-12 V, 750 mA), prostownik pełnookresowy składający się z dwóch diod 1N4007 (D1 i D2), stabilizator 5 V 7805 (IC1) oraz dwa kondensatory elektrolityczne: 1000 µF/25 V (C1) i 100 µF/25 V (C2).
Układ główny, pokazany na rysunku 3, składa się z modułu czujnika wilgotności gleby DHT11, modułu Blue Pill STM32F103, wyświetlacza LCD LM016L, modułu ESP8266 oraz kilku innych elementów. Napięcia zasilania to 5 V dla STM32 i 3,3...3,6 V dla modułu Wi-Fi ESP8266.
Napięcie zasilające 5 V jest obniżane do 3,6 V w obwodzie dzielnika napięcia utworzonym przez diody krzemowe D3 i D4 oraz rezystor 1 k w szereg z nimi. Napięcie przewodzenia diody krzemowej wynosi 0,7 V. Tak więc dwie diody połączone szeregowo obniżają napięcie o 1,4 V i otrzymujemy 5 V–1,4 V=3,6 V.
Czujnik DHT11 służy do pomiaru temperatury i wilgotności. Czujnik jest wyposażony we wbudowany termistor NTC, mierzący temperaturę. Zawiera też 8-bitowy mikrokontroler, który wysyła wartości temperatury i wilgotności w postaci szeregowej przy użyciu protokołu jednoprzewodowego. Czujnik ma tylko jedną linię danych, przez którą można odczytywać wartości zarówno temperatury, jak i wilgotności, co zmniejsza zapotrzebowanie na piny mikrokontrolera. Czujnik łatwo współpracuje z mikrokontrolerem. Jest fabrycznie skalibrowany.
Stabilizator napięcia dla STM32 można zastąpić baterią 5 V lub zasilaczem 5 V prądu stałego. Mikrokontroler STM pobiera dane z czujników, przedstawia je na wyświetlaczu LCD i wysyła do karty Wi-Fi. Karta ESP odbiera dane i przesyła je do chmury ThingSpeak. Wcześniej jednak musimy ThingSpeak skonfigurować, uzyskać token API i dołączyć go do programu.