WiFi Termostat je inteligentný termostat postavený na platforme Espressif – ESP8266 a ESP32. Projekt poskytuje webové rozhranie a JSON API pre monitorovanie a ovládanie teploty v domácnosti.
📄 Rozšírený popis projektu, schéma zapojenia a dokumentácia: martinius96.github.io/WiFi-termostat
- Mikrokontrolér funguje ako webserver, ktorý poskytuje:
- HTML stránky – informačné a funkcionálne
- JSON stránku s aktuálnymi dátami
- JSON stránka distribuuje informácie o:
- aktuálnej teplote
- hysteréze
- cieľovej teplote
- ESP automaticky riadi výstupné relé podľa nastavených parametrov.
- Teplotu meria senzor Dallas DS18B20 (OneWire, normálne/parazitné zapojenie).
- ESP na UART vypíše:
- pridelenú IP adresu z DHCP
- stav relé
- voľnú HEAP pamäť
- Projekt môže fungovať celoročne, aj ako WiFi teplomer, ak je odpojený výstup na kotol.
| Názov zložky firmvéru | Funkcie |
|---|---|
WiFi_TERMOSTAT |
Základný termostat. Automatické riadenie vykurovania. |
WiFi_TERMOSTAT_mDNS |
Základný termostat + mDNS záznam pre jednoduché spustenie v LAN. |
WiFi_TERMOSTAT_MANUAL_experimental |
Termostat s možnosťou manuálneho ovládania výstupu cez web (režim Auto/Manual). |
WiFi_TERMOSTAT_OTA |
Termostat + mDNS + možnosť aktualizácie firmvéru cez Web OTA Updater. |
Dôležité:
- Serial monitor: 115200 baud
- Údaje o hysteréze a cieľovej teplote sú uložené v softvérovo emulovanej EEPROM.
- ESP vysiela vlastné SSID
WiFi_TERMOSTAT_AP, kým nezíska údaje o domácej WiFi sieti. - Priraďuje klientom IP adresy v rozsahu:
192.168.4.2 - 192.168.4.254 - Rozhranie WiFiManager na
192.168.4.1umožňuje nastaviť WiFi meno a heslo. - Po pripojení do domácej WiFi:
- ESP prestane vysielať SSID
- Prepne sa do STA módu a termostat začne fungovať.
- Dáta WiFi sa ukladajú do flash pamäte a nie je potrebné ich zadávať znova.
- Podpora mDNS/OTA umožňuje prístup cez lokálnu doménu:
http://wifi-termostat.local
| URL | Popis |
|---|---|
/ |
Root stránka s formulárom, stavom relé, aktuálnou teplotou a možnosťou zadania novej cieľovej teploty |
/action.html |
Spracovanie formulára, zápis do EEPROM, presmerovanie späť na root |
/get_data.json |
JSON výstup s aktuálnymi dátami: teplota, cieľová teplota, hysteréza |
- Klienti na platformách Arduino, ESP8266, ESP32 dokážu:
- Pripojiť sa k termostatu
- Získať dáta zo
/get_data.json - Spracovať a archivovať dáta (MySQL, cloud)
- Riadiť perifériu (solenoid, ventilátor, notifikácie)
- JSON klient sa pripája každých 15 sekúnd cez websocket
- MQTT implementácia umožňuje publikovať dáta na IoT Industries Slovakia broker
- Hlavný topic:
termostat - Subtopicy:
hysteresis,actual_temp,target_temp
- Hlavný topic:
- Podpora MQTTS pre šifrované spojenie (ESP8266/ESP32)
- Možnosť prispôsobiť súkromnému brokeru s autentizáciou






