TapHome

Shelly 1PM Gen3

Packet Parser → HTTP
Přidal
Poslední aktualizace: 03. 2026
Shelly 1PM Gen3

Shelly 1PM Gen3 je kompaktní Wi-Fi relé s integrovaným měřením výkonu. Vejde se za standardní nástěnný vypínač a dokáže ovládat jeden okruh se zátěží až 16 A (3500 W při 230 V AC) nebo 10 A (při 24–30 V DC). TapHome komunikuje se zařízením přes HTTP pomocí Gen2+/Gen3 JSON-RPC 2.0 API v lokální síti — cloudové připojení není potřeba.

Na rozdíl od původního Shelly 1PM (Gen1), který používá REST API s endpointem /status, verze Gen3 využívá RPC API s voláními metod jako /rpc/Switch.GetStatus. Hardware Gen3 obsahuje rychlejší ESP procesor s 8 MB flash pamětí, podporuje až 6 souběžných HTTP připojení (oproti 2 u Gen1) a je připraven na Matter.

Šablona poskytuje ovládání relé a elektroměr, který snímá okamžitou spotřebu energie a celkovou spotřebu.

Konfigurace

Shelly 1PM Gen3 se připojuje přes Wi-Fi. Při importu šablony do TapHome zadejte IP adresu zařízení (výchozí zástupný symbol 192.168.0.1).

Na zařízení Shelly musí být vypnutá autentifikace pro integraci s TapHome. TapHome nepodporuje HTTP Digest Auth používanou zařízeními Gen2+/Gen3. Otevřete webové rozhraní Shelly (http://{device-ip}) → Nastavení → Autentifikace a ujistěte se, že je vypnutá.

Pokud je na zařízení Shelly povolen ECO režim, může způsobovat výpadky komunikace kvůli rychlým intervalům dotazování šablony (2,5–3 sekundy). Pokud zaznamenáte přerušované problémy s připojením, vypněte ECO režim ve webovém rozhraní Shelly.

Možnosti zařízení

Ovládání relé

Šablona zpřístupňuje relé jako spínač. Stav relé se čte z odpovědi /rpc/Switch.GetStatus?id=0 (pole output, boolean) a ovládá se přes /rpc/Switch.Set?id=0&on=true nebo on=false.

Měření výkonu

Integrovaný elektroměr čte dvě hodnoty z odpovědi /rpc/Switch.GetStatus?id=0:

  • Okamžitý výkonapower ve wattech, šablona konvertuje na kW
  • Celková spotřebaaenergy.total ve watthodinách, šablona konvertuje na kWh

Elektroměr také zpřístupňuje tři servisní atributy:

  • Elektrický proud — proud zátěže v ampérech (pole current)
  • Elektrické napětí — napájecí napětí ve voltech (pole voltage)
  • Teplota — vnitřní teplota zařízení v °C (pole temperature.tC)

Elektroměr je pouze ke čtení — aktualizuje se automaticky při každém cyklu dotazování (interval 15 sekund).

Servisní diagnostika

Šablona zpřístupňuje servisní atributy na úrovni modulu pro monitorování zařízení:

  • WiFi — název připojené SSID sítě
  • IP adresa — aktuální IP adresa stanice
  • Síla signálu — WiFi RSSI v dB
  • MAC — MAC adresa zařízení

Čtecí skript modulu také kontroluje dostupné aktualizace firmwaru a požadavky na restart, které zobrazuje jako upozornění v rozhraní TapHome.

Servisní akce

Na úrovni modulu jsou dostupné dvě servisní akce:

  • Aktualizace firmwaru — spustí aktualizaci firmwaru na nejnovější stabilní verzi přes /rpc/Shelly.Update
  • Restart — spustí restart zařízení přes /rpc/Shelly.Reboot
Další možnosti

Shelly 1PM Gen3 také zpřístupňuje účiník, síťovou frekvenci (Hz), počítadla vrácené/exportované energie, stav fyzického vstupu (input:0), dobu provozu, využití RAM a čas zařízení ve svých RPC odpovědích. K dispozici je také automatický časovač vypnutí přes parametr toggle_after a ochrana proti přetížení přes Switch.SetConfig → power_limit. Počítadla energie lze resetovat přes /rpc/Switch.ResetCounters. Tyto možnosti mohou být přidány v budoucí aktualizaci šablony.

Řešení problémů

Zařízení neodpovídá
  1. Ověřte, že Shelly je připojen k Wi-Fi a má platnou IP adresu
  2. Zkuste použít mDNS hostname (shelly1pmg3-AABBCCDDEE.local) místo IP adresy — IP se mohla změnit po obnovení DHCP
  3. Otevřete http://{device-ip}/rpc/Shelly.GetDeviceInfo v prohlížeči — pokud odpoví JSON, zařízení je dostupné
  4. Zkontrolujte, že TapHome Core a Shelly jsou ve stejné síti / VLAN
  5. Potvrďte, že autentifikace je na zařízení Shelly vypnutá
Hodnoty výkonu zobrazují nulu
  1. Potvrďte, že zátěž je připojena přes relé Shelly (ne obejita)
  2. Zkontrolujte, že relé je zapnuto — měřič snímá pouze když přes relé protéká proud
  3. Ručně zavolejte /rpc/Switch.GetStatus?id=0 a ověřte, že apower vrací nenulovou hodnotu
Upozornění na přehřívání

Shelly 1PM Gen3 má interní tepelnou ochranu. Pokud teplota zařízení překročí bezpečné limity, hodnota temperature v servisních atributech elektroměru se zvýší. Zajistěte dostatečné větrání kolem zařízení, zejména při nepřetržitém spínání vysokých zátěží.

Zařízení Shelly Gen2+/Gen3 podporují až 6 souběžných HTTP připojení. I když je to výrazné zlepšení oproti Gen1 (2 připojení), vyhněte se současnému dotazování z příliš mnoha systémů (TapHome, Home Assistant, vlastní skripty), abyste předešli vyčerpání připojení.

Jak nainstalovat v TapHome

Předpoklady

  • Zařízení Shelly nainstalované a zapnuté
  • Lokální Wi-Fi síť (2,4 GHz)
  • TapHome CCU ve stejné síti

Krok 1 — Připojte Shelly k Wi-Fi

Možnost A — Aplikace Shelly (doporučeno):

  1. Stáhněte si aplikaci Shelly (iOS / Android)
  2. Klepněte na +Add Device a postupujte podle průvodce Bluetooth párováním
  3. Po výzvě zadejte své Wi-Fi přihlašovací údaje

Možnost B — AP režim (bez aplikace):

  1. Při prvním zapnutí zařízení vytvoří hotspot: ShellyXXX-AABBCCDDEE
  2. Připojte telefon/PC k tomuto hotspotu
  3. Otevřete http://192.168.33.1Internet & SecurityWi-Fi Mode - Client
  4. Zadejte SSID a heslo → Save

Shelly podporuje pouze 2,4 GHz sítě. 5 GHz sítě se při skenování nezobrazí.

Krok 2 — Zjistěte IP adresu

Po připojení k Wi-Fi zjistěte přiřazenou IP adresu jedním z následujících způsobů:

  • Aplikace Shelly: Detail zařízení → Device info → IP adresa
  • Webové rozhraní Shelly: Připojte se k AP zařízení před nastavením Wi-Fi — IP se zobrazí po uložení
  • DHCP tabulka routeru: Hledejte hostname jako shelly1pm-AABBCCDDEE
  • mDNS: Pingněte shelly<model>-<mac>.local (např. shelly1pm-AABBCCDDEE.local) ze stejné sítě

Přiřaďte zařízení Shelly statickou IP (DHCP rezervaci) ve vašem routeru, aby se adresa nezměnila po restartu routeru.

Krok 3 — Konfigurace v TapHome

  1. V TapHome přidejte nový modul Packet Parser (HTTP)
  2. IP Address: zadejte IP z kroku 2 (např. 192.168.1.50)
  3. Port: 80 (výchozí, není potřeba měnit)
  4. Importujte šablonu — TapHome bude pravidelně číst /status pro zjištění stavu zařízení

HTTP autentifikace je na zařízeních Shelly standardně vypnutá. Pokud jste povolili ochranu přihlášením, TapHome momentálně nepodporuje HTTP Basic Auth — pro integraci s TapHome ponechte autentifikaci vypnutou.

Dostupná zařízení

Shelly 1PM Gen3 Modul
Servisní atributy
WiFi
IP adresa
Síla signálu
MAC
Servisní akce
Aktualizace firmwaru
Restart
Vlastní proměnné

Shelly 1PM Gen3

Čtení (modul)
VAR response := SENDHTTPREQUEST("/rpc/Sys.GetStatus");
IF response.IsSuccess
    Sys.GetStatus := response.Content;
END

response := SENDHTTPREQUEST("/rpc/Sys.GetConfig");
IF response.IsSuccess
    Sys.GetConfig := response.Content;
END

response := SENDHTTPREQUEST("/rpc/WiFi.GetStatus");
IF response.IsSuccess
    WiFi.GetStatus := response.Content;
END

if ! ISNULL(parsejson(Sys.GetStatus, "available_updates.stable", true))
    addwarning("New firmware update is available");
end

if parsejson(Sys.GetStatus, "restart_required", true)
    addwarning("Restart required");
end
Servisní atributy
Wifi
PARSEJSON(WiFi.GetStatus, "ssid")
${ipAddress}
PARSEJSON(WiFi.GetStatus, "sta_ip")
${xml_signal_strength} [dB]
PARSEJSON(WiFi.GetStatus, "rssi")
MAC
PARSEJSON(Sys.GetStatus, "mac")
Servisní akce
${xml_update_fw}
VAR response := SENDHTTPREQUEST("/rpc/Shelly.Update?stage=\"stable\"");
IF response.IsSuccess
    return("OK");
else
    return("Error");
END

Reboot
VAR response := SENDHTTPREQUEST("/rpc/Shelly.Reboot");
IF response.IsSuccess
    return("OK");
else
    return("Error");
END
Spínač Přepínač
boolean
Hodnoty / Stavy: ON · OFF

Spínač

Čtení stavu přepínače
var x := (sendhttprequest("/rpc/Switch.GetStatus?id=0"));
var status := x.Content;
return(PARSEJSON(status, "$.output", true));
Zápis stavu přepínače
VAR response := SENDHTTPREQUEST("rpc/Switch.Set?id=0&on=" + if(St,"true","false"));
IF response.IsSuccess = false
  ADDERROR(response.StatusCode);
END
Elektroměr Elektroměr Pouze ke čtení

Měření spotřeby energie — okamžitý výkon (kW) a celková spotřeba (kWh) s měřením proudu, napětí a teploty

numeric Jednotka: kW / kWh
Servisní atributy
Elektrický proud
Elektrické napětí
Teplota

Elektroměr

Čtení celkové spotřeby
return(parsejson(parsejson(Switch.GetStatus,"aenergy"), "total")/1000);
Čtení odběru
return(parsejson(Switch.GetStatus,"apower")/1000);
Čtení (modul)
VAR response := SENDHTTPREQUEST("/rpc/Switch.GetStatus?id=0");
IF response.IsSuccess
    Switch.GetStatus := response.Content;
END
Servisní atributy
${electric_current} [A]
return(parsejson(Switch.GetStatus,"current"));
${electric_voltage} [V]
return(parsejson(Switch.GetStatus,"voltage"));
${temperature} [°C]
return(parsejson(parsejson(Switch.GetStatus,"temperature"), "tC"));
Připojení: Packet Parser → HTTP
Možná vylepšení (10)
  • Power Factor — Power factor value, available in Switch.GetStatus response for metered devices
  • Network Frequency — AC network frequency in Hz, available in Switch.GetStatus response
  • Returned Energy — Returned/exported energy in Wh, for bi-directional metering scenarios
  • Input State — Physical switch/button input state, available via /rpc/Input.GetStatus?id=0
  • Uptime — Seconds since last reboot, available in Sys.GetStatus response
  • RAM Usage — Total and free RAM in bytes, available in Sys.GetStatus response
  • Device Time — Current device time in HH:MM format, available in Sys.GetStatus response
  • Auto-off Timer — Auto-reset timer in seconds via toggle_after parameter, could be added as switch parameter
  • Reset Energy Counters — Resets energy measurement counters (aenergy, ret_aenergy)
  • Overpower Protection — Configurable power limit threshold in Watts, relay turns off when exceeded

Zdroje