
Shelly H&T Gen3 je bateriový (4x AA) Wi-Fi senzor teploty a vlhkosti s velkým e-paper displejem. TapHome komunikuje se zařízením přes MQTT pomocí Gen2+ RPC notifikací na topicu events/rpc. Toto je doporučený protokol pro bateriová Shelly Gen3 zařízení, protože senzor většinu času spí a publikuje data pouze při probuzení.
Šablona vytvoří jedno zařízení Senzor teploty a vlhkosti a servisní atribut Baterie na úrovni modulu. Mechanismus detekce offline sleduje poslední přijatý timestamp a hlásí varování nebo chyby, pokud zařízení delší dobu neodpovídalo.
Konfigurace
MQTT Client ID
Každý Shelly H&T Gen3 má unikátní MQTT Client ID ve formátu shellyhtg3-<MAC12>, kde <MAC12> je plná 12znaková MAC adresa v hexadecimálním tvaru velkými písmeny (např. shellyhtg3-AABBCCDDEEFF). Toto ID slouží i jako výchozí prefix MQTT topiců.
Client ID najdete:
- Na štítku zařízení (MAC adresa)
- Ve webovém rozhraní Shelly: Settings → MQTT → Client ID
- Přes API:
GET http://<device-ip>/rpc/Mqtt.GetConfig→ poleclient_id
Nastavení šablony
Po importu šablony v TapHome:
- Otevřete modul Shelly H&T Gen3 MQTT
- Nastavte MQTT Broker IP na adresu MQTT brokeru
- Nastavte Port (výchozí
1883) - Nastavte import parametr MQTT ID na Client ID zařízení (např.
shellyhtg3-AABBCCDDEEFF)
Modul se přihlásí k odběru <device-id>/# a listenerové skripty parsují NotifyStatus JSON-RPC události z topicu events/rpc.
Ujistěte se, že na Shelly H&T Gen3 je povolené MQTT a
rpc_ntf(RPC notifikace) je nastaveno natrue(výchozí). Šablona se spoléhá naevents/rpcnotifikace, ne na individuální stavové topicy.
Měření a hlášení
Shelly H&T Gen3 funguje odlišně podle zdroje napájení:
- Bateriový režim — probuzení každou 1 minutu pro měření. Hlásí přes MQTT, pokud se teplota změní o více než 0,5 °C nebo vlhkost o více než 5 %. Nepodmíněné hlášení se odesílá každé 2 hodiny, pokud nebyl překročen žádný práh.
- USB napájení — probuzení každých 5 minut pro měření, aktualizaci displeje a hlášení v každém cyklu.
E-paper displej se aktualizuje při změně teploty o více než 0,2 °C nebo vlhkosti o více než 3 %.
Zařízení je napájeno z baterie a není trvale připojeno k MQTT brokeru. Očekávejte mezery mezi měřeními, zejména v bateriovém režimu. Pokud má místo senzoru slabý Wi-Fi signál, časté opětovné připojování může zkrátit výdrž baterie.
Schopnosti zařízení
Teplota a vlhkost
Senzorové zařízení čte teplotu a vlhkost z NotifyStatus událostí na topicu events/rpc:
- Teplota — okolní teplota ve stupních Celsia, čtená z
params['temperature:0'].tC - Vlhkost — relativní vlhkost v procentech, čtená z
params['humidity:0'].rh(listenerový skript dělí hodnotu 100 pro převod na rozsah 0–1 očekávaný TapHome)
Obě hodnoty jsou pouze ke čtení a aktualizují se při každém probuzení senzoru a publikování dat.
Práh hlášení teploty je nastavitelný na zařízení (výchozí 0,5 °C, rozsah 0,5–5,0 °C). Práh vlhkosti je výchozí 5 % (rozsah 1–20 %). Tyto prahy lze upravit přes webové rozhraní Shelly nebo API pro vyvážení frekvence hlášení oproti výdrži baterie.
Monitorování baterie
Modul poskytuje servisní atribut Baterie [%], který čte procentuální úroveň nabití baterie z params['devicepower:0'].battery.percent v události NotifyStatus. Varování o nízké baterii se spustí, když úroveň klesne pod 30 %.
Stav baterie se aktualizuje s každým hlášením senzoru. Na 4x AA bateriích je očekávaná výdrž přibližně 1 rok za normálních podmínek.
Detekce offline
Šablona monitoruje konektivitu zařízení pomocí mechanismu založeného na timestampu. Listenerový skript modulu ukládá Unix timestamp z každé NotifyStatus události do custom proměnné timestamp. Čtecí skript poté porovnává uložený timestamp s aktuálním časem:
- Offline > 12 hodin — WARNING: “Device is offline > 12H”
- Offline > 24 hodin — ERROR: “Device is offline > 24H”
Toto je obzvláště užitečné pro bateriová zařízení, která mohou přestat komunikovat kvůli vybitým bateriím nebo ztrátě Wi-Fi připojení.
Další schopnosti
Shelly H&T Gen3 také publikuje stav online/offline přes MQTT Last Will and Testament (LWT) topic, napětí baterie ve Voltech a stav externího napájení (zda je připojen USB Type-C). Individuální stavové topicy komponent (status/temperature:0, status/humidity:0, status/devicepower:0) jsou dostupné při povoleném status_ntf a teplota je dostupná i ve Fahrenheitech. Zařízení má e-paper displej s nastavitelnou jednotkou teploty a formátem hodin. Tyto schopnosti mohou být přidány v budoucí aktualizaci šablony.
Řešení problémů
Senzor nehlásí data
- Ověřte, že Shelly H&T Gen3 je připojen k Wi-Fi a MQTT je povoleno v nastavení zařízení (Settings → MQTT → Enable)
- Zkontrolujte, že
rpc_ntfje nastaveno natrue(výchozí) — šablona vyžaduje RPC notifikace naevents/rpc - Potvrďte, že import parametr MQTT ID přesně odpovídá Client ID zařízení (např.
shellyhtg3-AABBCCDDEEFF) - Použijte MQTT klienta (např. MQTT Explorer) pro přihlášení k odběru
<device-id>/#a ověřte, že senzor publikujeNotifyStatuszprávy při probuzení - Zkontrolujte úroveň baterie zařízení — vybité baterie brání senzoru připojit se k Wi-Fi
Měření vlhkosti se zdá nesprávné
- TapHome šablona dělí surovou hodnotu vlhkosti 100 (např.
rh: 55.3se stane0.553v TapHome). Toto je očekávané chování — TapHome interně používá rozsah 0–1 - Senzor má nastavitelný offset vlhkosti (
Humidity.SetConfig→offset) — ověřte, že není nastaven na nesprávnou hodnotu - Provozní rozsah vlhkosti senzoru je 30–70 % RH. Měření mimo tento rozsah mohou být méně přesná
Offline varování navzdory fungujícímu senzoru
- Detekce offline porovnává uložený timestamp s aktuálním časem. Pokud jsou hodiny TapHome Core výrazně posunuty, mohou se objevit falešná varování
- Na bateriové napájení senzor hlásí pouze při překročení prahů nebo každé 2 hodiny nepodmíněně — mezery do 2 hodin mezi hlášeními jsou normální
- Pokud je senzor na místě s nestabilním Wi-Fi, může vynechat okna hlášení. Ověřte sílu Wi-Fi signálu v místě senzoru