---
title: "Shelly Plus H\u0026T"
description: "Bateryjny czujnik temperatury i wilgotności przez MQTT z poziomem baterii, napięciem i diagnostyką. Szablon TapHome dla Shelly Plus H\u0026T."
url: "https://taphome.com/pl/compatibility/shelly-plus-ht-mqtt/"
language: pl
lastmod: 2026-03-30
generator: hugo
ai:
  topics: ["mqtt","sensor","wifi","battery-powered","temperature-humidity"]
  questions: ["Jak zintegrować Shelly Plus H\u0026T z TapHome przez MQTT?","Co mierzy szablon Shelly Plus H\u0026T w TapHome?","Jakie atrybuty serwisowe udostępnia szablon Shelly Plus H\u0026T?","Dlaczego Shelly Plus H\u0026T nie raportuje temperatury i wilgotności?","Czy Shelly Plus H\u0026T raportuje poziom baterii i napięcie w TapHome?","Jaka jest różnica między Shelly Plus H\u0026T a Shelly H\u0026T Gen3?"]
---

# Shelly Plus H&T

Komunikacja: Packet Parser → MQTT

- [Strona produktu Shelly Plus H&T](https://www.shelly.com/en/products/shop/shelly-plus-h-t)

> Adres w sieci
> 
> Przy brokerze MQTT wbudowanym w TapHome wpisz w TapHome jako adres brokera `127.0.0.1`. W urządzeniu wpisz adres IP TapHome Core i nadaj jednostce Core rezerwację IP w routerze.
> 
> [Przygotowanie sieci](https://taphome.com/pl/docs/setup/network-preparation/)

## Poradnik integracji

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` → pole `client_id`

### Konfiguracja szablonu

Po zaimportowaniu szablonu w TapHome:

1. Otwórz moduł **Shelly Plus H&T MQTT**
2. Ustaw **MQTT Broker IP** na adres brokera MQTT
3. Ustaw **Port** (domyślnie `1883`)
4. 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.

> [!TIP]
> Upewnij się, że MQTT jest włączone na Shelly Plus H&T i `status_ntf` (powiadomienia o statusie) jest ustawione na `true`. Szablon opiera się na indywidualnych topicach statusu (`/status/temperature:0`, `/status/humidity:0` itd.), a nie na skonsolidowanym topicu `events/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%.

> [!WARNING]
> 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 `tC` w topicu `/status/temperature:0`
- **Wilgotność** — wilgotność względna w procentach, odczytana z `rh` w 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.percent` w `/status/devicepower:0`
- **Battery voltage** — napięcie baterii w woltach z `battery.V` w `/status/devicepower:0`
- **External power** — czy zewnętrzne zasilanie USB Type-C jest podłączone, z `external.present` w `/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

1. Sprawdź, czy Shelly Plus H&T jest podłączony do Wi-Fi i MQTT jest włączone w ustawieniach urządzenia (**Settings** → **MQTT** → **Enable**)
2. Upewnij się, że `status_ntf` jest ustawione na `true` — szablon wymaga indywidualnych powiadomień o statusie na topicach `/status/`
3. Potwierdź, że parametr importu **Device ID** dokładnie odpowiada Device ID urządzenia (np. `shellyplusht-A8032AB12CD3`)
4. Użyj klienta MQTT (np. MQTT Explorer) do subskrypcji `<device-id>/#` i sprawdź, czy czujnik publikuje wiadomości statusu po wybudzeniu
5. Sprawdź poziom baterii urządzenia — wyczerpane baterie uniemożliwiają czujnikowi połączenie z Wi-Fi

### Odczyt wilgotności wydaje się nieprawidłowy

1. Szablon TapHome dzieli surową wartość wilgotności przez 100 (np. `rh: 55.3` staje się `0.553` w TapHome). To oczekiwane zachowanie — TapHome wewnętrznie używa zakresu 0–1
2. Czujnik ma konfigurowalny offset wilgotności (`Humidity.SetConfig` → `offset`) — sprawdź, czy nie jest ustawiony na nieprawidłową wartość
3. Zakres operacyjny wilgotności czujnika to 30–70% RH. Odczyty poza tym zakresem mogą być mniej dokładne

### Atrybuty serwisowe pokazują "-"

1. Atrybuty serwisowe wyświetlają `"-"`, dopóki czujnik się nie wybudzi i nie opublikuje danych na odpowiednim topicu statusu
2. 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
3. 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 — wymaga `status_ntf: true`
- **Gen3 (H&T Gen3)** używa skonsolidowanego topicu `events/rpc` ze zdarzeniami JSON-RPC `NotifyStatus` — wymaga `rpc_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

## Jak zainstalować w TapHome

### Wymagania wstępne

- Urządzenie Shelly połączone z Wi-Fi (2,4 GHz), np. przez aplikację Shelly lub własny punkt dostępowy urządzenia
- Broker MQTT działający w sieci lokalnej (np. Mosquitto, Home Assistant lub wbudowany broker TapHome)
- TapHome CCU w tej samej sieci co broker

> [!WARNING]
> Na urządzeniach **Gen1** włączenie MQTT **wyłącza Shelly Cloud**. Oba nie mogą działać jednocześnie. Na urządzeniach Gen2/Plus to ograniczenie nie obowiązuje.

### Krok 1 — Włącz MQTT na urządzeniu Shelly

#### Urządzenia Gen1 (Shelly 1, 1PM, 2.5, EM, 3EM, Plug S, RGBW2, Dimmer, TRV…)

1. Otwórz interfejs webowy Shelly: `http://<device-ip>/`
2. Przejdź do **Internet & Security** → **Advanced — MQTT**
3. Włącz **MQTT**
4. Ustaw **MQTT Server**: `<broker-ip>:<port>` (np. `192.168.1.10:1883`)
5. Opcjonalnie ustaw **MQTT User** i **MQTT Password**, jeśli broker wymaga uwierzytelniania
6. Kliknij **Save** — urządzenie zrestartuje się i połączy z brokerem

#### Urządzenia Gen2 / Plus (Shelly Plus 1, Plus 1PM, Plus 2PM, Plus Plug S, Plus H&T, Pro 3EM…)

1. Otwórz interfejs webowy Shelly: `http://<device-ip>/`
2. Przejdź do **Settings** → **MQTT**
3. Włącz **MQTT**
4. Ustaw **Server**: `<broker-ip>:<port>` (np. `192.168.1.10:1883`)
5. **Client ID** jest wstępnie wypełnione identyfikatorem urządzenia (np. `shellyplus1pm-AABBCCDDEE`) — pozostaw bez zmian, chyba że masz konkretny powód do zmiany
6. Kliknij **Save** i zrestartuj urządzenie

Przy wbudowanym brokerze TapHome `<broker-ip>` to adres IP TapHome Core. Nadaj jednostce Core rezerwację IP w routerze, w przeciwnym razie urządzenie straci brokera, gdy router zmieni adres → [Przygotowanie sieci](https://taphome.com/pl/docs/setup/network-preparation/).

> [!TIP]
> Aby sprawdzić, czy MQTT działa, użyj klienta MQTT (np. MQTT Explorer) i zasubskrybuj `shellies/#` (Gen1) lub `<device-id>/#` (Gen2). Powinieneś zobaczyć komunikaty o stanie z urządzenia.

### Krok 2 — Znajdź Device ID / MQTT Client ID

Niektóre szablony wymagają parametru **Device ID** lub **MQTT Client ID**. Jest to unikalny identyfikator używany w topikach MQTT.

- **Gen1:** znajduje się na etykiecie jako adres MAC (np. `AABBCCDDEE`). Device ID = `shelly<model>-<mac>`, np. `shelly1pm-AABBCCDDEE`
- **Gen2/Plus:** znajduje się w interfejsie webowym Shelly w sekcji **Settings** → **Device Info** → **Device ID** lub na etykiecie urządzenia

### Krok 3 — Konfiguracja w TapHome

1. W TapHome dodaj nowy moduł **Packet Parser (MQTT)**
2. **IP Address:** dla wbudowanego brokera TapHome `127.0.0.1` (jednostka łączy się sama ze sobą, adres nigdy się nie zmienia); dla zewnętrznego brokera jego adres IP (np. `192.168.1.10`)
3. **Port:** `1883` (domyślny; użyj `8883` dla TLS)
4. **Device ID / MQTT Client ID:** wprowadź wartość z kroku 2 (jeśli wymagane przez szablon)
5. Zaimportuj szablon — TapHome automatycznie zasubskrybuje topiki urządzenia

## Dostępne urządzenia 1

Te urządzenia pojawią się w TapHome po imporcie.

Shelly Plus H&T MQTT Moduł

Zmienne niestandardowe

`deviceId` (string) Identyfikator urządzenia MQTT używany jako prefiks topiców — format: shellyplusht-{MACADDRESS} (w interfejsie webowym Shelly → Settings → Device Info)

Open http://shellyIpAddress → Settings → Device info → copy Device ID (e.g. shellyplusht-A8032AB12CD3)

Czujnik temperatury i wilgotności Czujnik temperatury Tylko do odczytu

Temperatura otoczenia (°C) i wilgotność względna z indywidualnych topiców /status/ MQTT — wilgotność konwertowana na zakres 0–1 dla TapHome

json Jednostka: °C / %RH json\_path

Atrybuty serwisowe

|                      |                                                                                         |
|----------------------|-----------------------------------------------------------------------------------------|
| Bateria              | Procentowy poziom naładowania baterii — wyświetla '-' do pierwszego wybudzenia czujnika |
| Napięcie baterii     | Napięcie baterii w woltach — przydatne do śledzenia degradacji baterii w czasie         |
| Zasilanie zewnętrzne | Czy zewnętrzne zasilanie USB Type-C jest podłączone (true/false)                        |
| WiFi                 | SSID podłączonej sieci WiFi                                                             |
| Adres IP             |                                                                                         |
| Adres MAC            |                                                                                         |
| Połączony z chmurą   | Status połączenia z Shelly Cloud (true/false)                                           |
| MQTT połączony       | Status połączenia z brokerem MQTT (true/false)                                          |
| BLE włączone         | Status Bluetooth Low Energy (true/false)                                                |

Odczyt wilgotności

```taphome
Hu := listenHum / 100.0;
```

Nasłuchiwanie

```taphome
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
```

Atrybuty serwisowe

Battery

```taphome
IF (ISNAN(batteryPerc), "-", batteryPerc + "%");
```

Battery voltage

```taphome
IF (ISNAN(batteryV), "-", batteryV + "V");
```

External power

```taphome
IF (LENGTH(externalPower) = 0, "-", externalPower);
```

WiFi

```taphome
IF (LENGTH(wifi) = 0, "-", wifi);
```

IP Address

```taphome
IF (LENGTH(ipaddress) = 0, "-", ipaddress);
```

MAC Address

```taphome
IF (LENGTH(macAddress) = 0, "-", macAddress);
```

Cloud connected

```taphome
IF (LENGTH(cloudConnected) = 0, "-", cloudConnected);
```

MQTT connected

```taphome
IF (LENGTH(mqttConnected) = 0, "-", mqttConnected);
```

BLE enabled

```taphome
IF (LENGTH(BLEenabled) = 0, "-", BLEenabled);
```

**Połączenie:** Packet Parser → MQTT • Hostname: `shellyplusht-{MAC}.local`

Możliwe ulepszenia (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.

## Parametry importu

Te wartości podajesz podczas importu pliku XML.

| Pytanie w aplikacji  | Domyślnie                   |
|----------------------|-----------------------------|
| Mqtt Broker Adres IP | `192.168.0.1`               |
| Mqtt Broker port     | `1883`                      |
| Device ID            | `shellyplusht-yourDeviceId` |

## Źródła

- Shelly Gen2+/Gen3 RPC API Reference
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/) 2026-03-27
- Shelly Gen2+ System (Sys) Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Sys/) 2026-03-27
- Shelly Gen2+ WiFi Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/WiFi/) 2026-03-27
- Shelly Gen2+ MQTT Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Mqtt/) 2026-03-29
- Home Assistant Shelly Integration
  
  [www.home-assistant.io](https://www.home-assistant.io/integrations/shelly/) 2026-03-27
- Shelly Plus H&T Device API (Temperature, Humidity, DevicePower, HT\_UI)
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/0.14/Devices/ShellyPlusHT/) 2026-03-30
- Shelly Plus H&T Knowledge Base
  
  [kb.shelly.cloud](https://kb.shelly.cloud/knowledge-base/shelly-plus-h-t) 2026-03-30

## Powiązana dokumentacja

- [MQTT Integration](https://taphome.com/pl/compatibility/mqtt-guide/)
- [Packet Parser (HTTP, TCP, UDP, FTP, MQTT)](https://taphome.com/pl/docs/integration/packet-parser/)
- [Funkcje Packet parser](https://taphome.com/pl/docs/script/packet-parser/)
- [Funkcje parsowania](https://taphome.com/pl/docs/script/parsing-functions/)
- [Broker MQTT](https://taphome.com/pl/docs/integration/packet-parser/mqtt-broker/)
- [Skrypty listener](https://taphome.com/pl/docs/script/listener-scripts/)

