
Shelly Flood je bateriový (CR123A) Wi-Fi senzor úniku vody. TapHome komunikuje se zařízením přes MQTT — doporučený protokol pro bateriová zařízení Shelly, protože senzor většinu času spí a data publikuje pouze při událostech probuzení.
Šablona podporuje až 5 senzorů Shelly Flood na jeden modul. Každá instance senzoru se rozlišuje proměnnou sensorN_topic, která odkazuje na MQTT Client ID zařízení.
Konfigurace
Device ID
Každý senzor Shelly Flood má jedinečné MQTT Device ID ve formátu shellyflood-<MAC6>, kde <MAC6> je posledních 6 znaků MAC adresy malými písmeny (hex), např. shellyflood-112233.
Device ID lze najít:
- Na štítku zařízení (MAC adresa)
- Ve webovém rozhraní Shelly: Settings → Device Info
- Přes API:
GET http://<device-ip>/settings→ polemqtt.id
Zařízení podporuje mDNS discovery. Při konfiguraci TapHome můžete místo IP adresy použít hostname
shellyflood-{MAC}.local. Nahraďte{MAC}posledními 6 znaky MAC adresy malými písmeny (např.shellyflood-112233.local). Hostname zabraňuje výpadkům komunikace při změně IP adresy zařízení.
Nastavení šablony
Po importování šablony v TapHome:
- Otevřete modul Shelly Flood MQTT
- Nastavte IP adresu MQTT Brokeru a Port (výchozí
1883) - Pro každou instanci senzoru nastavte proměnnou
sensorN_topicna Device ID příslušného Shelly Flood (např.shellyflood-112233)
Modul se přihlásí k odběru shellies/# a listenery ve skriptech filtrují zprávy podle nastaveného prefixu topicu.
Konfigurujte pouze sloty senzorů, které skutečně používáte. Nenakonfigurované sloty (s výchozí hodnotou
shellyflood-deviceid) zobrazí chybovou hlášku vyzývající k nastavení správného topicu.
Schopnosti zařízení
Detekce úniku vody
Každá instance senzoru je v TapHome namapována jako zařízení Reed Contact. Stav zaplavení se čte z topicu shellies/<id>/sensor/flood:
true→ Alarm (voda detekována)false→ OK (sucho)
Senzor se probudí a publikuje stav při detekci vody nebo jejím odeznění, jakož i v pravidelných reportovacích intervalech.
Monitorování baterie a teploty
Každá instance senzoru vystavuje dva servisní atributy:
- Battery — procento nabití baterie čtené z
shellies/<id>/sensor/battery. Upozornění na nízkou baterii se aktivuje při poklesu pod 20 %. - Temperature — okolní teplota v °C čtená z
shellies/<id>/sensor/temperature.
Oba atributy jsou pouze pro čtení a aktualizují se při každém probuzení senzoru.
Další schopnosti
Shelly Flood také publikuje stav online/offline přes MQTT Last Will and Testament (LWT) topic a plnou JSON zprávu o stavu (firmware ≥1.8.0). K dispozici je nastavení rain_sensor, které invertuje logiku detekce záplavy pro použití jako detektor deště venku. Tyto funkce lze přidat v budoucí aktualizaci šablony.
Řešení problémů
Senzor nepublikuje data
- Ověřte, že Shelly Flood je připojen k Wi-Fi a že je v nastavení zařízení povoleno MQTT
- Zkontrolujte, že proměnná
sensorN_topicpřesně odpovídá Device ID (např.shellyflood-112233) - Pokud se adresa MQTT brokeru změnila, vyzkoušejte mDNS hostname (
shellyflood-AABBCCDDEE.local) k ověření dostupnosti senzoru v síti - Použijte MQTT klienta (např. MQTT Explorer) k odběru
shellies/#a ověřte, zda senzor publikuje zprávy při probuzení
Alarmový stav úniku se nespouští
- Zkontrolujte, zda jsou kontakty na spodku zařízení čisté a bez překážek
- Otestujte přiložením senzoru na mokrý povrch — zařízení by mělo do několika sekund publikovat
truena topic/sensor/flood - Zkontrolujte stav zařízení Reed Contact v TapHome — 1 = alarm, 0 = OK
Rychlé vybíjení baterie
- Shelly Flood je navržen pro dlouhou životnost baterie (CR123A, typicky 1–2 roky v závislosti na frekvenci reportování)
- Časté probouzení (např. kvůli nestabilnímu Wi-Fi signálu vyžadujícímu opakované reconnekty) může baterii vybíjet rychleji
- Zajistěte dostatečně silný Wi-Fi signál na místě instalace senzoru
Zařízení Shelly Gen1 nepodporují MQTT přes TLS. Komunikace mezi senzorem a MQTT brokerem je nešifrovaná (plain MQTT, port 1883). Zajistěte, aby MQTT broker byl v důvěryhodné lokální síti.