TapHome

Shelly Plus H&T

Packet Parser → MQTT
Pridal
Posledná aktualizácia: 06. 2026
Shelly Plus H&T

Shelly Plus H&T (SNSN-0013A) je batériový (4x AA) Wi-Fi senzor teploty a vlhkosti s e-paper displejom. Je to zariadenie Gen2 (séria Plus), teraz ukončené a nahradené Shelly H&T Gen3, ale stále široko nasadené. TapHome komunikuje so zariadením cez MQTT pomocou individuálnych /status/ topicov pre každý komponent. Toto je štandardný prístup pre Gen2 Shelly zariadenia — listenerový skript sa prihlási na odber <device-id>/# a spracováva prichádzajúce stavové správy, keď sa senzor prebudí z hlbokého spánku a publikuje dáta.

Šablóna vytvorí jedno zariadenie Senzor teploty a vlhkosti s 9 servisnými atribútmi na úrovni zariadenia pokrývajúcimi batériu, sieť a diagnostiku konektivity. Na rozdiel od Gen3 variantu (ktorý používa konsolidované events/rpc notifikácie), táto Gen2 šablóna spracováva individuálne topicy /status/temperature:0, /status/humidity:0, /status/devicepower:0 a ďalšie topicy špecifické pre komponenty.

Konfigurácia

Device ID

Každý Shelly Plus H&T má unikátne Device ID vo formáte shellyplusht-<MACADDRESS>, kde <MACADDRESS> je plná 12-znaková MAC adresa v hexadecimálnom tvare veľkými písmenami (napr. shellyplusht-A8032AB12CD3). Toto ID slúži aj ako prefix MQTT topicov.

Device ID nájdete:

  • Na štítku zariadenia (MAC adresa)
  • Vo webovom rozhraní Shelly: SettingsDevice InfoDevice ID
  • Cez API: GET http://<device-ip>/rpc/Mqtt.GetConfig → pole client_id
Nastavenie šablóny

Po importe šablóny v TapHome:

  1. Otvorte modul Shelly Plus H&T MQTT
  2. Nastavte MQTT Broker IP na adresu MQTT brokera
  3. Nastavte Port (predvolene 1883)
  4. Nastavte import parameter Device ID na Device ID zariadenia (napr. shellyplusht-A8032AB12CD3)

Modul sa prihlási na odber <device-id>/# a listenerový skript parsuje individuálne /status/ JSON správy z topicov každého komponentu.

Uistite sa, že na Shelly Plus H&T je povolené MQTT a status_ntf (stavové notifikácie) je nastavené na true. Šablóna sa spolieha na individuálne stavové topicy (/status/temperature:0, /status/humidity:0 atď.), nie na konsolidovaný topic events/rpc.

Meranie a hlásenia

Shelly Plus H&T funguje odlišne podľa zdroja napájania:

  • Batériový režim — prebudenie každú 1 minútu na meranie. Hlási cez MQTT ak sa teplota zmení o viac ako 0,5 °C alebo vlhkosť o viac ako 5 %. Nepodmienené hlásenie sa odosiela každé 2 hodiny, ak nebol prekročený žiadny prah. 5-minútová ochranná doba zabraňuje nadmerným prebudeniam.
  • USB napájanie — prebudenie každých 5 minút na meranie, aktualizáciu displeja a nepodmienené hlásenie v každom cykle.

E-paper displej sa aktualizuje pri zmene teploty o viac ako 0,2 °C alebo vlhkosti o viac ako 3 %.

Zariadenie je napájané z batérie a väčšinu času strávi v hlbokom spánku. TapHome nemôže aktívne dotazovať senzor — spolieha sa na to, že zariadenie samo odošle stav cez MQTT pri prebudení. Očakávajte medzery medzi meraniami, najmä v batériovom režime. USB Type-C napájanie poskytuje častejšie aktualizácie, ale nenabíja interné batérie.

Schopnosti zariadenia

Teplota a vlhkosť

Senzorové zariadenie číta teplotu a vlhkosť z individuálnych MQTT stavových topicov:

  • Teplota — okoliná teplota v stupňoch Celzia, čítaná z tC v topicu /status/temperature:0
  • Vlhkosť — relatívna vlhkosť v percentách, čítaná z rh v topicu /status/humidity:0 (skript readhumidity delí hodnotu 100 pre prevod na rozsah 0–1 očakávaný TapHome)

Obe hodnoty sú len na čítanie a aktualizujú sa pri každom prebudení senzora a publikovaní dát.

Prah hlásenia teploty je nastaviteľný na zariadení (predvolene 0,5 °C, rozsah 0,5–5,0 °C). Prah vlhkosti je predvolene 5 % (rozsah 1–20 %). Tieto prahy je možné upraviť cez webové rozhranie Shelly alebo API pre vyváženie frekvencie hlásení oproti výdrži batérie.

Servisné atribúty

Šablóna poskytuje 9 servisných atribútov na úrovni zariadenia pokrývajúcich stav batérie a diagnostiku zariadenia:

Monitorovanie batérie:

  • Battery — percentuálna úroveň nabitia batérie z battery.percent v /status/devicepower:0
  • Battery voltage — napätie batérie vo Voltoch z battery.V v /status/devicepower:0
  • External power — či je pripojené externé USB Type-C napájanie, z external.present v /status/devicepower:0

Sieťová diagnostika:

  • WiFi — SSID pripojenej Wi-Fi siete z /status/wifi
  • IP Address — IP adresa zariadenia z /status/wifi
  • MAC Address — MAC adresa zariadenia z /status/sys

Stav konektivity:

  • Cloud connected — stav pripojenia k Shelly Cloud z /status/cloud
  • MQTT connected — stav pripojenia k MQTT brokeru z /status/mqtt
  • BLE enabled — stav Bluetooth Low Energy z /status/ble

Všetky servisné atribúty zobrazujú "-", keď ešte neboli prijaté žiadne dáta (počiatočný stav po importe šablóny, pred prvým prebudením senzora).

Ďalšie schopnosti

Shelly Plus H&T tiež publikuje teplotu vo Fahrenheitoch (pole tF v /status/temperature:0), silu Wi-Fi signálu (RSSI v dBm) a podporuje komponent HT_UI na konfiguráciu jednotky teploty na e-paper displeji (°C/°F). Zariadenie tiež poskytuje stav online/offline cez MQTT Last Will and Testament (LWT) topic. Tieto schopnosti môžu byť pridané v budúcej aktualizácii šablóny.

Riešenie problémov

Senzor nehlási dáta
  1. Overte, že Shelly Plus H&T je pripojený k Wi-Fi a MQTT je povolené v nastaveniach zariadenia (SettingsMQTTEnable)
  2. Skontrolujte, že status_ntf je nastavené na true — šablóna vyžaduje individuálne stavové notifikácie na /status/ topicoch
  3. Potvrďte, že import parameter Device ID presne zodpovedá Device ID zariadenia (napr. shellyplusht-A8032AB12CD3)
  4. Použite MQTT klienta (napr. MQTT Explorer) na prihlásenie odberu <device-id>/# a overte, že senzor publikuje stavové správy pri prebudení
  5. Skontrolujte úroveň batérie zariadenia — vybité batérie bránia senzoru pripojiť sa k Wi-Fi
Meranie vlhkosti sa javí nesprávne
  1. TapHome šablóna delí surovú hodnotu vlhkosti 100 (napr. rh: 55.3 sa stane 0.553 v TapHome). Toto je očakávané správanie — TapHome interne používa rozsah 0–1
  2. Senzor má nastaviteľný offset vlhkosti (Humidity.SetConfigoffset) — overte, že nie je nastavený na nesprávnu hodnotu
  3. Prevádzkový rozsah vlhkosti senzora je 30–70 % RH. Merania mimo tohto rozsahu môžu byť menej presné
Servisné atribúty zobrazujú “-”
  1. Servisné atribúty zobrazujú "-" kým sa senzor neprebudí a nepublikuje dáta na zodpovedajúcom stavovom topicu
  2. Na batériové napájanie môže zariadeniu trvať až 2 hodiny, kým odošle prvé nepodmienené hlásenie — stlačte resetovacie tlačidlo (za zadným krytom) pre okamžité meranie a hlásenie
  3. Overte, že MQTT broker prijíma správy na všetkých očakávaných topicoch (/status/sys, /status/wifi, /status/cloud, /status/mqtt, /status/ble)
Rozdiely oproti Shelly H&T Gen3

Shelly Plus H&T (Gen2) a Shelly H&T Gen3 majú podobné senzorové schopnosti, ale líšia sa v MQTT komunikácii:

  • Gen2 (Plus H&T) používa individuálne /status/ topicy pre každý komponent — vyžaduje status_ntf: true
  • Gen3 (H&T Gen3) používa konsolidovaný topic events/rpc s NotifyStatus JSON-RPC udalosťami — vyžaduje rpc_ntf: true
  • Gen3 šablóna tiež obsahuje detekciu offline založenú na timestampe (>12h varovanie, >24h chyba), ktorú Gen2 šablóna neimplementuje

Ako nainštalovať v TapHome

Predpoklady

  • Zariadenie Shelly pripojené k Wi-Fi (ak ešte nie, pozrite návod na HTTP pripojenie)
  • MQTT broker bežiaci vo vašej lokálnej sieti (napr. Mosquitto, Home Assistant alebo vstavaný broker TapHome)
  • TapHome CCU v rovnakej sieti ako broker

Na zariadeniach Gen1 povolenie MQTT vypne Shelly Cloud. Oboje nemôže bežať súčasne. Na zariadeniach Gen2/Plus toto obmedzenie neplatí.

Krok 1 — Povoľte MQTT na zariadení Shelly

Zariadenia Gen1 (Shelly 1, 1PM, 2.5, EM, 3EM, Plug S, RGBW2, Dimmer, TRV…)

  1. Otvorte webové rozhranie Shelly: http://<device-ip>/
  2. Prejdite na Internet & SecurityAdvanced — MQTT
  3. Povoľte MQTT
  4. Nastavte MQTT Server: <broker-ip>:<port> (napr. 192.168.1.10:1883)
  5. Voliteľne nastavte MQTT User a MQTT Password, ak váš broker vyžaduje autentifikáciu
  6. Kliknite na Save — zariadenie sa reštartuje a pripojí k brokeru

Zariadenia Gen2 / Plus (Shelly Plus 1, Plus 1PM, Plus 2PM, Plus Plug S, Plus H&T, Pro 3EM…)

  1. Otvorte webové rozhranie Shelly: http://<device-ip>/
  2. Prejdite na SettingsMQTT
  3. Povoľte MQTT
  4. Nastavte Server: <broker-ip>:<port> (napr. 192.168.1.10:1883)
  5. Client ID je predvyplnené ID zariadenia (napr. shellyplus1pm-AABBCCDDEE) — ponechajte tak, pokiaľ nemáte konkrétny dôvod na zmenu
  6. Kliknite na Save a reštartujte zariadenie

Na overenie funkčnosti MQTT použite MQTT klienta (napr. MQTT Explorer) a prihláste sa na odber shellies/# (Gen1) alebo <device-id>/# (Gen2). Mali by ste vidieť stavové správy zo zariadenia.

Krok 2 — Zistite Device ID / MQTT Client ID

Niektoré šablóny vyžadujú parameter Device ID alebo MQTT Client ID. Ide o jedinečný identifikátor používaný v MQTT topicoch.

  • Gen1: nachádza sa na štítku ako MAC adresa (napr. AABBCCDDEE). Device ID = shelly<model>-<mac>, napr. shelly1pm-AABBCCDDEE
  • Gen2/Plus: nachádza sa vo webovom rozhraní Shelly v časti SettingsDevice InfoDevice ID, alebo na štítku zariadenia

Krok 3 — Konfigurácia v TapHome

  1. V TapHome pridajte nový modul Packet Parser (MQTT)
  2. IP Address: zadajte IP adresu MQTT brokera (napr. 192.168.1.10)
  3. Port: 1883 (predvolený; pre TLS použite 8883)
  4. Device ID / MQTT Client ID: zadajte hodnotu z kroku 2 (ak to šablóna vyžaduje)
  5. Importujte šablónu — TapHome sa automaticky prihlási na odber topicov zariadenia

Dostupné zariadenia

Shelly Plus H&T MQTT Modul
Vlastné premenné
deviceId (string)MQTT identifikátor zariadenia používaný ako prefix topicov — formát: shellyplusht-{MACADDRESS} (nájdete vo webovom rozhraní Shelly → Settings → Device Info)
Open http://shellyIpAddress → Settings → Device info → copy Device ID (e.g. shellyplusht-A8032AB12CD3)
Senzor teploty a vlhkosti Teplotný senzor Len na čítanie

Okoliná teplota (°C) a relatívna vlhkosť z individuálnych /status/ MQTT topicov — vlhkosť konvertovaná na rozsah 0–1 pre TapHome

json Jednotka: °C / %RH json_path
Servisné atribúty
BatériaPercentuálna úroveň nabitia batérie — zobrazuje '-' do prvého prebudenia senzora
Napätie batérieNapätie batérie vo Voltoch — užitočné na sledovanie degradácie batérie v čase
Externé napájanieČi je pripojené externé USB Type-C napájanie (true/false)
WiFiSSID pripojenej Wi-Fi siete
IP adresa
MAC adresa
Pripojený ku clouduStav pripojenia k Shelly Cloud (true/false)
MQTT pripojenýStav pripojenia k MQTT brokeru (true/false)
BLE povolenéStav Bluetooth Low Energy (true/false)

Senzor teploty a vlhkosti

Čítanie vlhkosti
Hu := listenHum / 100.0;
Listener
IF (INDEXOF(RECEIVEDMSG.TOPIC, deviceid +"/status/temperature:0") >= 0)
    Te := PARSEJSON(RECEIVEDMSG.PAYLOAD,"tC", true);
ELSEIF (INDEXOF(RECEIVEDMSG.TOPIC, deviceid +"/status/humidity:0") >= 0)
    listenHum := PARSEJSON(RECEIVEDMSG.PAYLOAD,"rh", true);
ELSEIF (INDEXOF(RECEIVEDMSG.TOPIC, deviceid +"/status/devicepower:0") >= 0)
    batteryPerc := PARSEJSON(RECEIVEDMSG.PAYLOAD,"battery.percent", true);
    batteryV := PARSEJSON(RECEIVEDMSG.PAYLOAD,"battery.V", true);
    externalPower := PARSEJSON(RECEIVEDMSG.PAYLOAD,"external.present", true);
ELSEIF (INDEXOF(RECEIVEDMSG.TOPIC, deviceid +"/status/sys") >= 0)
    macAddress := PARSEJSON(RECEIVEDMSG.PAYLOAD,"mac", true);
ELSEIF (INDEXOF(RECEIVEDMSG.TOPIC, deviceid +"/status/wifi") >= 0)
    ipaddress := PARSEJSON(RECEIVEDMSG.PAYLOAD,"sta_ip", true);
    wifi := PARSEJSON(RECEIVEDMSG.PAYLOAD,"ssid", true);
ELSEIF (INDEXOF(RECEIVEDMSG.TOPIC, deviceid +"/status/cloud") >= 0)
    cloudConnected := PARSEJSON(RECEIVEDMSG.PAYLOAD,"connected", true);
ELSEIF (INDEXOF(RECEIVEDMSG.TOPIC, deviceid +"/status/mqtt") >= 0)
    mqttConnected := PARSEJSON(RECEIVEDMSG.PAYLOAD,"connected", true);
ELSEIF (INDEXOF(RECEIVEDMSG.TOPIC, deviceid +"/status/ble") >= 0)
    BLEenabled := PARSEJSON(RECEIVEDMSG.PAYLOAD,"enable", true);
END
Servisné atribúty
Battery
IF (ISNAN(batteryPerc), "-", batteryPerc + "%");
Battery voltage
IF (ISNAN(batteryV), "-", batteryV + "V");
External power
IF (LENGTH(externalPower) = 0, "-", externalPower);
WiFi
IF (LENGTH(wifi) = 0, "-", wifi);
IP Address
IF (LENGTH(ipaddress) = 0, "-", ipaddress);
MAC Address
IF (LENGTH(macAddress) = 0, "-", macAddress);
Cloud connected
IF (LENGTH(cloudConnected) = 0, "-", cloudConnected);
MQTT connected
IF (LENGTH(mqttConnected) = 0, "-", mqttConnected);
BLE enabled
IF (LENGTH(BLEenabled) = 0, "-", BLEenabled);
Pripojenie: Packet Parser → MQTT
Možné vylepšenia (5)
  • RPC Event Notifications — Gen3 templates use consolidated events/rpc topic with NotifyFullStatus. This Gen2 template uses individual /status/ topics instead — functionally equivalent.
  • Connection Status (LWT) — Last Will and Testament topic — true on connect, false on disconnect. Not used by template.
  • Temperature in Fahrenheit — Temperature also available in Fahrenheit (tF field in /status/temperature:0). Template uses tC only.
  • E-Paper Display Configuration — Temperature unit (C/F) display setting — display-only configuration, not sensor data.
  • WiFi Signal Strength (RSSI) — WiFi signal strength in dBm. Template reads only SSID and IP, not RSSI.

Zdroje

Našli ste problém s touto šablónou zariadenia?

Napíšte nám, čo nefunguje, čo chýba, alebo ako by sa mala šablóna správať. Vaša spätná väzba nám pomáha udržiavať katalóg presný.

Overené TapHomom

Chcete to použiť vo svojom TapHome jadre?

Otvorte túto šablónu v Customer Portali a aplikujte ju na svoj domov, alebo navrhnite zmenu a odošlite ju späť do katalógu.

Otvoriť v portáli