---
title: "Shelly Flood"
description: "Bateryjny czujnik zalania Shelly Flood podłączony do TapHome przez MQTT. Wykrywa obecność wody, raportuje temperaturę otoczenia i poziom baterii."
url: "https://taphome.com/pl/compatibility/shelly-flood-mqtt/"
language: pl
lastmod: 2026-03-16
generator: hugo
ai:
  topics: ["mqtt","sensor","wifi","water-leak-detection","battery-powered"]
  questions: ["Jak zintegrować Shelly Flood z TapHome za pomocą MQTT?","Co wykrywa szablon TapHome dla Shelly Flood?","Jak skonfigurować wiele czujników Shelly Flood w jednym szablonie TapHome?","Dlaczego mój czujnik Shelly Flood nie wysyła danych?","Jak znaleźć ID urządzenia MQTT dla Shelly Flood?","Czy Shelly Flood przesyła poziom baterii i temperaturę do TapHome?"]
---

# Shelly Flood

Komunikacja: Packet Parser → MQTT

- [Strona produktu Shelly Flood](https://www.shelly.com/en/products/shop/shelly-flood)

Shelly Flood to bateryjny (CR123A) czujnik wycieku wody Wi-Fi. TapHome komunikuje się z urządzeniem przez MQTT — zalecany protokół dla bateryjnych urządzeń Shelly, ponieważ czujnik przez większość czasu pozostaje w trybie uśpienia i publikuje dane tylko po przebudzeniu.

Szablon obsługuje do 5 czujników Shelly Flood na moduł. Każda instancja czujnika jest identyfikowana przez zmienną niestandardową `sensorN_topic` wskazującą na Client ID MQTT urządzenia.

## Konfiguracja

### Device ID

Każdy czujnik Shelly Flood ma unikalny MQTT Device ID w formacie `shellyflood-<MAC6>`, gdzie `<MAC6>` to ostatnie 6 znaków adresu MAC zapisane małymi literami w postaci szesnastkowej (np. `shellyflood-112233`).

Device ID można znaleźć:

- Na etykiecie urządzenia (adres MAC)
- W interfejsie webowym Shelly: **Settings** → **Device Info**
- Przez API: `GET http://<device-ip>/settings` → pole `mqtt.id`

> [!TIP]
> To urządzenie obsługuje **odkrywanie mDNS**. Zamiast adresu IP w konfiguracji TapHome można użyć nazwy hosta `shellyflood-{MAC}.local`. Zastąp `{MAC}` ostatnimi 6 znakami adresu MAC urządzenia zapisanymi małymi literami w postaci szesnastkowej (np. `shellyflood-112233.local`). Użycie nazwy hosta zapobiega problemom z połączeniem, gdy adres IP urządzenia się zmieni.

### Konfiguracja szablonu

Po zaimportowaniu szablonu w TapHome:

1. Otwórz moduł **Shelly Flood MQTT**
2. Ustaw **IP brokera MQTT** i **port** (domyślnie `1883`)
3. Dla każdej instancji czujnika ustaw zmienną niestandardową `sensorN_topic` na Device ID odpowiedniego Shelly Flood (np. `shellyflood-112233`)

Moduł subskrybuje temat `shellies/#`, a skrypty nasłuchujące filtrują wiadomości według skonfigurowanego prefiksu tematu.

> [!TIP]
> Konfiguruj tylko te sloty czujników, których faktycznie używasz. Nieskonfigurowane sloty (z domyślną wartością `shellyflood-deviceid`) wyświetlają komunikat o błędzie z prośbą o ustawienie prawidłowego tematu.

## Możliwości urządzenia

### Wykrywanie zalania

Każda instancja czujnika jest mapowana jako urządzenie Reed Contact w TapHome. Stan zalania jest odczytywany z tematu `shellies/<id>/sensor/flood`:

- `true` → **Alarm** (wykryto wodę)
- `false` → **OK** (sucho)

Czujnik budzi się i publikuje swój stan po wykryciu lub ustąpieniu wody, a także podczas okresowych interwałów raportowania.

### Monitorowanie baterii i temperatury

Każda instancja czujnika udostępnia dwa atrybuty serwisowe:

- **Bateria** — procent poziomu baterii odczytywany z `shellies/<id>/sensor/battery`. Ostrzeżenie o niskim poziomie baterii jest generowane, gdy poziom spadnie poniżej 20%.
- **Temperatura** — temperatura otoczenia w °C odczytywana z `shellies/<id>/sensor/temperature`.

Oba atrybuty są tylko do odczytu i aktualizują się za każdym razem, gdy czujnik się przebudzi i opublikuje dane.

### Dodatkowe możliwości

Shelly Flood publikuje również status online/offline przez temat MQTT Last Will and Testament (LWT) oraz pełną wiadomość statusu JSON (firmware ≥1.8.0). Dostępne jest ustawienie `rain_sensor`, które odwraca logikę wykrywania zalania na potrzeby wykrywania deszczu na zewnątrz. Te możliwości mogą zostać dodane w przyszłej aktualizacji szablonu.

## Rozwiązywanie problemów

### Czujnik nie raportuje danych

1. Sprawdź, czy Shelly Flood jest połączony z Wi-Fi i czy MQTT jest włączone w ustawieniach urządzenia
2. Upewnij się, że zmienna niestandardowa `sensorN_topic` dokładnie odpowiada Device ID (np. `shellyflood-112233`)
3. Jeśli adres brokera MQTT się zmienił, spróbuj użyć nazwy hosta mDNS (`shellyflood-AABBCCDDEE.local`), aby sprawdzić, czy czujnik jest osiągalny w sieci
4. Użyj klienta MQTT (np. MQTT Explorer), aby zasubskrybować `shellies/#` i zweryfikować, czy czujnik publikuje wiadomości po przebudzeniu

### Alarm zalania nie wyzwala się

1. Sprawdź, czy styki czujnika na spodzie urządzenia są czyste i niczym nie zasłonięte
2. Przetestuj, kładąc czujnik na mokrej powierzchni — urządzenie powinno opublikować `true` w temacie `/sensor/flood` w ciągu kilku sekund
3. Sprawdź w TapHome stan urządzenia Reed Contact — 1 = alarm, 0 = OK

### Bateria szybko się rozładowuje

1. Shelly Flood jest zaprojektowany z myślą o długiej żywotności baterii (CR123A, typowo 1–2 lata w zależności od częstotliwości raportowania)
2. Częste przebudzenia (np. z powodu niestabilnego Wi-Fi wymagającego wielokrotnego ponownego łączenia) mogą szybciej rozładować baterię
3. Zapewnij silny sygnał Wi-Fi w miejscu montażu czujnika

> [!WARNING]
> Urządzenia Shelly Gen1 **nie** obsługują MQTT przez TLS. Komunikacja między czujnikiem a brokerem MQTT jest nieszyfrowana (plain MQTT, port 1883). Upewnij się, że broker MQTT znajduje się w zaufanej sieci lokalnej.

## 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

> [!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:** wprowadź adres IP brokera MQTT (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

Shelly Flood MQTT Moduł

Zmienne niestandardowe

|                                                 |                                                                                                                           |
|-------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------|
| `sensor1_topic` (string) = shellyflood-deviceid | Nazwa topicu MQTT czujnika zalania 1 — format 'shellyflood-DEVICEID' (Device ID w Shelly web UI → Settings → Device Info) |
| `sensor2_topic` (string) = shellyflood-deviceid | Nazwa topicu MQTT czujnika zalania 2                                                                                      |
| `sensor3_topic` (string) = shellyflood-deviceid | Nazwa topicu MQTT czujnika zalania 3                                                                                      |
| `sensor4_topic` (string) = shellyflood-deviceid | Nazwa topicu MQTT czujnika zalania 4                                                                                      |
| `sensor5_topic` (string) = shellyflood-deviceid | Nazwa topicu MQTT czujnika zalania 5                                                                                      |

Czujnik zalania 1 Kontakt reed Tylko do odczytu

Wykrywanie wycieku wody — zgłasza alarm przy obecności wody, OK gdy sucho

boolean

Atrybuty serwisowe

|             |
|-------------|
| Bateria     |
| Temperatura |

Czujnik zalania 2 Kontakt reed Tylko do odczytu

Wykrywanie wycieku wody — zgłasza alarm przy obecności wody, OK gdy sucho

boolean

Atrybuty serwisowe

|             |
|-------------|
| Bateria     |
| Temperatura |

Czujnik zalania 3 Kontakt reed Tylko do odczytu

Wykrywanie wycieku wody — zgłasza alarm przy obecności wody, OK gdy sucho

boolean

Atrybuty serwisowe

|             |
|-------------|
| Bateria     |
| Temperatura |

Czujnik zalania 4 Kontakt reed Tylko do odczytu

Wykrywanie wycieku wody — zgłasza alarm przy obecności wody, OK gdy sucho

boolean

Atrybuty serwisowe

|             |
|-------------|
| Bateria     |
| Temperatura |

Czujnik zalania 5 Kontakt reed Tylko do odczytu

Wykrywanie wycieku wody — zgłasza alarm przy obecności wody, OK gdy sucho

boolean

Atrybuty serwisowe

|             |
|-------------|
| Bateria     |
| Temperatura |

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

Możliwe ulepszenia (2)

- Connection Status — LWT topic — true on connect, false on disconnect. Could detect offline sensors.
- Full Status JSON — Complete /status as JSON (fw ≥1.8.0). Could parse wifi\_sta.rssi, battery, act\_reasons.

## Źródła

- Shelly Gen1 API Reference
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen1/) 2026-03-12
- Shelly Flood — Device-Specific API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen1/#shelly-flood-mqtt) 2026-03-12

## 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/)

