
Shelly Plus H&T (SNSN-0013A) to bateryjny (4x AA) czujnik temperatury i wilgotności Wi-Fi z wyświetlaczem e-paper. Jest to urządzenie Gen2 (seria Plus), obecnie wycofane z produkcji i zastąpione przez Shelly H&T Gen3, ale nadal szeroko stosowane. TapHome komunikuje się z urządzeniem przez MQTT za pomocą indywidualnych topiców /status/ dla każdego komponentu. Jest to standardowe podejście dla urządzeń Shelly Gen2 — skrypt nasłuchujący subskrybuje <device-id>/# i przetwarza przychodzące wiadomości statusu, gdy czujnik budzi się z głębokiego uśpienia i publikuje dane.
Szablon tworzy jedno urządzenie Czujnik temperatury i wilgotności z 9 atrybutami serwisowymi na poziomie urządzenia obejmującymi baterię, sieć i diagnostykę łączności. W przeciwieństwie do wariantu Gen3 (który używa skonsolidowanych powiadomień events/rpc), ten szablon Gen2 przetwarza indywidualne topice /status/temperature:0, /status/humidity:0, /status/devicepower:0 i inne topice specyficzne dla komponentów.
Konfiguracja
Device ID
Każdy Shelly Plus H&T ma unikalny Device ID w formacie shellyplusht-<MACADDRESS>, gdzie <MACADDRESS> to pełny 12-znakowy adres MAC w szesnastkowym zapisie wielkimi literami (np. shellyplusht-A8032AB12CD3). Ten identyfikator służy również jako prefiks topiców MQTT.
Device ID można znaleźć:
- Na etykiecie urządzenia (adres MAC)
- W interfejsie webowym Shelly: Settings → Device Info → Device ID
- Przez API:
GET http://<device-ip>/rpc/Mqtt.GetConfig→ poleclient_id
Konfiguracja szablonu
Po zaimportowaniu szablonu w TapHome:
- Otwórz moduł Shelly Plus H&T MQTT
- Ustaw MQTT Broker IP na adres brokera MQTT
- Ustaw Port (domyślnie
1883) - Ustaw parametr importu Device ID na Device ID urządzenia (np.
shellyplusht-A8032AB12CD3)
Moduł subskrybuje <device-id>/#, a skrypt nasłuchujący parsuje indywidualne wiadomości JSON /status/ z topiców każdego komponentu.
Upewnij się, że MQTT jest włączone na Shelly Plus H&T i
status_ntf(powiadomienia o statusie) jest ustawione natrue. Szablon opiera się na indywidualnych topicach statusu (/status/temperature:0,/status/humidity:0itd.), a nie na skonsolidowanym topicuevents/rpc.
Pomiary i raportowanie
Shelly Plus H&T działa różnie w zależności od źródła zasilania:
- Tryb bateryjny — wybudzenie co 1 minutę na pomiar. Raportuje przez MQTT, jeśli temperatura zmieni się o więcej niż 0,5 °C lub wilgotność o więcej niż 5%. Bezwarunkowy raport statusu jest wysyłany co 2 godziny, jeśli nie zostały wyzwolone raporty progowe. 5-minutowy okres ochronny zapobiega nadmiernym wybudzeniom.
- Zasilanie USB — wybudzenie co 5 minut na pomiar, aktualizację wyświetlacza i bezwarunkowe raportowanie w każdym cyklu.
Wyświetlacz e-paper aktualizuje się przy zmianie temperatury o więcej niż 0,2 °C lub wilgotności o więcej niż 3%.
Urządzenie jest zasilane bateryjnie i większość czasu spędza w głębokim uśpieniu. TapHome nie może aktywnie odpytywać czujnika — opiera się na tym, że urządzenie samo wysyła status przez MQTT po wybudzeniu. Spodziewaj się przerw między odczytami, szczególnie w trybie bateryjnym. Zasilanie USB Type-C zapewnia częstsze aktualizacje, ale nie ładuje wewnętrznych baterii.
Możliwości urządzenia
Temperatura i wilgotność
Urządzenie czujnikowe odczytuje temperaturę i wilgotność z indywidualnych topiców statusu MQTT:
- Temperatura — temperatura otoczenia w stopniach Celsjusza, odczytana z
tCw topicu/status/temperature:0 - Wilgotność — wilgotność względna w procentach, odczytana z
rhw topicu/status/humidity:0(skrypt readhumidity dzieli wartość przez 100 w celu konwersji na zakres 0–1 oczekiwany przez TapHome)
Obie wartości są tylko do odczytu i aktualizują się przy każdym wybudzeniu czujnika i publikacji danych.
Próg raportowania temperatury jest konfigurowalny na urządzeniu (domyślnie 0,5 °C, zakres 0,5–5,0 °C). Próg wilgotności domyślnie wynosi 5% (zakres 1–20%). Progi te można dostosować przez interfejs webowy Shelly lub API, aby zrównoważyć częstotliwość raportowania z żywotnością baterii.
Atrybuty serwisowe
Szablon udostępnia 9 atrybutów serwisowych na poziomie urządzenia obejmujących status baterii i diagnostykę urządzenia:
Monitorowanie baterii:
- Battery — procentowy poziom naładowania baterii z
battery.percentw/status/devicepower:0 - Battery voltage — napięcie baterii w woltach z
battery.Vw/status/devicepower:0 - External power — czy zewnętrzne zasilanie USB Type-C jest podłączone, z
external.presentw/status/devicepower:0
Diagnostyka sieciowa:
- WiFi — SSID podłączonej sieci WiFi z
/status/wifi - IP Address — adres IP urządzenia z
/status/wifi - MAC Address — adres MAC urządzenia z
/status/sys
Status łączności:
- Cloud connected — status połączenia z Shelly Cloud z
/status/cloud - MQTT connected — status połączenia z brokerem MQTT z
/status/mqtt - BLE enabled — status Bluetooth Low Energy z
/status/ble
Wszystkie atrybuty serwisowe wyświetlają "-", gdy nie odebrano jeszcze żadnych danych (stan początkowy po imporcie szablonu, przed pierwszym wybudzeniem czujnika).
Dodatkowe możliwości
Shelly Plus H&T publikuje również temperaturę w Fahrenheitach (pole tF w /status/temperature:0), siłę sygnału WiFi (RSSI w dBm) i obsługuje komponent HT_UI do konfiguracji jednostki temperatury na wyświetlaczu e-paper (°C/°F). Urządzenie udostępnia również status online/offline przez topic MQTT Last Will and Testament (LWT). Możliwości te mogą zostać dodane w przyszłej aktualizacji szablonu.
Rozwiązywanie problemów
Czujnik nie raportuje danych
- Sprawdź, czy Shelly Plus H&T jest podłączony do Wi-Fi i MQTT jest włączone w ustawieniach urządzenia (Settings → MQTT → Enable)
- Upewnij się, że
status_ntfjest ustawione natrue— szablon wymaga indywidualnych powiadomień o statusie na topicach/status/ - Potwierdź, że parametr importu Device ID dokładnie odpowiada Device ID urządzenia (np.
shellyplusht-A8032AB12CD3) - Użyj klienta MQTT (np. MQTT Explorer) do subskrypcji
<device-id>/#i sprawdź, czy czujnik publikuje wiadomości statusu po wybudzeniu - Sprawdź poziom baterii urządzenia — wyczerpane baterie uniemożliwiają czujnikowi połączenie z Wi-Fi
Odczyt wilgotności wydaje się nieprawidłowy
- Szablon TapHome dzieli surową wartość wilgotności przez 100 (np.
rh: 55.3staje się0.553w TapHome). To oczekiwane zachowanie — TapHome wewnętrznie używa zakresu 0–1 - Czujnik ma konfigurowalny offset wilgotności (
Humidity.SetConfig→offset) — sprawdź, czy nie jest ustawiony na nieprawidłową wartość - Zakres operacyjny wilgotności czujnika to 30–70% RH. Odczyty poza tym zakresem mogą być mniej dokładne
Atrybuty serwisowe pokazują “-”
- Atrybuty serwisowe wyświetlają
"-", dopóki czujnik się nie wybudzi i nie opublikuje danych na odpowiednim topicu statusu - Na zasilaniu bateryjnym urządzenie może potrzebować do 2 godzin na wysłanie pierwszego bezwarunkowego raportu — naciśnij przycisk reset (za tylną pokrywą), aby wywołać natychmiastowy pomiar i raportowanie
- Sprawdź, czy broker MQTT odbiera wiadomości na wszystkich oczekiwanych topicach (
/status/sys,/status/wifi,/status/cloud,/status/mqtt,/status/ble)
Różnice w porównaniu z Shelly H&T Gen3
Shelly Plus H&T (Gen2) i Shelly H&T Gen3 mają podobne możliwości sensoryczne, ale różnią się w komunikacji MQTT:
- Gen2 (Plus H&T) używa indywidualnych topiców
/status/na komponent — wymagastatus_ntf: true - Gen3 (H&T Gen3) używa skonsolidowanego topicu
events/rpcze zdarzeniami JSON-RPCNotifyStatus— wymagarpc_ntf: true - Szablon Gen3 zawiera również wykrywanie offline oparte na znaczniku czasu (>12 godzin ostrzeżenie, >24 godziny błąd), którego szablon Gen2 nie implementuje