TapHome

Shelly Plus Plug S

Packet Parser → HTTP
Pridal
Posledná aktualizácia: 05. 2026
Shelly Plus Plug S

Shelly Plus Plug S je Gen2+ Wi-Fi inteligentná zásuvka s vstavaným meraním spotreby a viacfarebným LED prstencom. Zapája sa do bežnej zásuvky CEE 7/3 (Type-F / Schuko) a dokáže spínať záťaž do 12 A / 2760 W pri 230 V. TapHome komunikuje so zariadením lokálne cez Wi-Fi prostredníctvom Gen2+ JSON-RPC API na porte 80 — pripojenie do cloudu nie je potrebné.

Šablóna vystavuje zásuvku ako šesť TapHome zariadení: reléový spínač, elektromer, volič režimu LED indikácie, dva voliče farby LED (pre stav relé ZAP a VYP) a stmievač jasu pre režim indikácie výkonu.

Konfigurácia

Párovanie a sieťové nastavenie

Po vybalení sa zariadenie spustí v režime prístupového bodu so SSID ShellyPlusPlugS-XXXXXX (LED bliká namodro). Pripojte sa k tomuto SSID, otvorte http://192.168.33.1/ a vo webovom rozhraní vyberte vašu domácu Wi-Fi sieť. Po pripojení do LAN je zásuvka dostupná na porte 80 na svojej stanicovej IP adrese a cez mDNS ako shellyplusplugs-<MAC>.local.

TapHome dotazuje Gen2+ RPC koncové body cez nešifrované HTTP — HTTPS je predvolene vypnuté a HTTP autentifikácia (Shelly.SetAuth) musí zostať vypnutá, inak šablóna nebude fungovať. Uistite sa, že zásuvka je v rovnakej LAN / VLAN ako TapHome Core.

Pri importe šablóny v TapHome zadajte IP adresu zásuvky ako parameter IpAddress. Dôrazne odporúčame nastaviť statickú DHCP rezerváciu, aby sa adresa nemenila po reštartoch.

Možnosti zariadenia

Ovládanie relé

Relé je vystavené ako spínacie zariadenie. Jeho stav sa číta z /rpc/Switch.GetStatus?id=0 (boolean output) a ovláda cez /rpc/Switch.Set?id=0&on=true|false. Modul cachuje celú odpoveď Switch.GetStatus, takže relé, merač aj servisné atribúty zdieľajú jedno HTTP volanie na jedno dotazovanie.

Meranie výkonu a energie

Vstavaný merač v komponente Switch poskytuje:

  • Okamžitý výkonapower vo wattoch, šablóna ho prepočíta na kW (delí tisíc)
  • Kumulatívna energiaaenergy.total vo watthodinách, prepočítaná na kWh (delí tisíc)

Ďalšie tri údaje sú vystavené ako servisné atribúty na merači:

AtribútJednotkaZdrojové pole
PrúdAcurrent
NapätieVvoltage
Vnútorná teplota°Ctemperature.tC

Merač je len na čítanie a aktualizuje sa pri každom dotazovaní.

Režim LED indikácie

Viacfarebný LED prstenec je riadený RPC komponentom PLUGS_UI, ktorý je špecifický pre Plus Plug S. TapHome vystavuje volič režimu s tromi platnými možnosťami — napriek tomu, že šablóna má v enum-e desať slotov, len prvé tri zodpovedajú skutočným režimom firmvéru:

HodnotaSprávanie
offLED prstenec je vypnutý (diagnostické stavy Wi-Fi / AP / firmvéru sa stále zobrazujú)
switchFarba LED odráža stav relé — používa používateľom definované farby pre VYP a ZAP
powerFarba LED odráža nameranú záťaž ako zlomok nastaveného výkonového limitu (gradient zelená → žltá → červená)

Prepínanie medzi režimami je kozmetická zmena a nevyžaduje reštart.

Farby LED (režim switch)

Dve nezávislé HSB zariadenia umožňujú vybrať farbu LED prstenca pre každý stav relé:

  • Farba LED (stav VYP) — farba a jas pri vypnutom relé
  • Farba LED (stav ZAP) — farba a jas pri zapnutom relé

Obe sa mapujú na leds.colors.switch:0.{off|on}.{rgb,brightness} v konfigurácii PLUGS_UI. Shelly ukladá RGB hodnoty v percentách (0–100 na kanál), nie 0–255, takže šablóna násobí každý kanál hodnotou 2,55 pri konverzii medzi HSV a natívnym formátom zariadenia. Konverzia je interná — v TapHome sa tieto zariadenia správajú ako ľubovoľný iný HSB výber farby.

Jas LED (režim power)

Keď je LED v režime power, farba sa volí automaticky firmvérom podľa záťaže. Používateľsky konfigurovateľný je len jas, takže šablóna ho vystavuje ako stmievač (leds.colors.power.brightness, 0–100 % škálované na TapHome stmievač 0,0–1,0).

Diagnostika a akcie modulu

HTTP modul vystavuje štyri servisné atribúty parsované z /rpc/WiFi.GetStatus a /rpc/Sys.GetStatus:

AtribútZdroj
Wi-Fi SSIDssid
IP adresasta_ip
Sila signálurssi (dBm)
MAC adresamac

Dostupné sú aj dve servisné akcie:

  • Aktualizácia firmvéru — spustí OTA aktualizáciu zo stabilného kanála (/rpc/Shelly.Update?stage="stable"). Aktivuje sa automaticky, keď Sys.GetStatus hlási available_updates.stable.
  • Reštart — reštartuje zariadenie (/rpc/Shelly.Reboot), užitočné po zmenách sieťovej konfigurácie alebo na odstránenie dočasných problémov.

Ak potrebujete len spínanie zap/vyp a základné meranie spotreby, LED zariadenia ignorujte — sú voliteľné. Relé a merač fungujú nezávisle od režimu LED indikácie.

Riešenie problémov

Zariadenie nereaguje
  1. Overte, že je zásuvka pripojená k Wi-Fi — LED by nemala blikať ani svietiť načerveno
  2. Skúste mDNS hostname shellyplusplugs-<MAC>.local namiesto IP adresy — DHCP zápožička sa mohla zmeniť
  3. Otvorte http://{ip-zariadenia}/rpc/Shelly.GetDeviceInfo v prehliadači; ak odpovie JSON-om, zariadenie je dostupné
  4. Skontrolujte, že TapHome Core a zásuvka sú v rovnakej LAN / VLAN
  5. Uistite sa, že HTTP autentifikácia je v Shelly webovom rozhraní vypnutá — šablóna nepodporuje digest autentifikáciu
Merač výkonu ukazuje nulu
  1. Overte, že je v Shelly skutočne zapojená záťaž a nie je obídená
  2. Skontrolujte, že relé je zapnuté — merač hlási 0 W, keď je relé rozopnuté
  3. Dotažte sa priamo /rpc/Switch.GetStatus?id=0 v prehliadači a overte, že apower je nenulové
LED sa po zmene režimu nemení
  1. LED odráža prevádzkový stav len v režimoch switch a power; v režime off zostáva tmavá okrem diagnostických vzorov systému (režim AP, obnovovanie pripojenia, OTA)
  2. V režime switch sa uistite, že farby ZAP aj VYP nie sú obe nastavené na čiernu / 0 % jas
  3. Systémové indikácie (modré blikanie pri AP režime, červené pri problémoch s Wi-Fi) vždy prepíšu používateľskú konfiguráciu LED — ak LED bliká načerveno, zásuvka nie je vo vašej Wi-Fi sieti
Akcia aktualizácie firmvéru sa nespúšťa
  1. Šablóna spúšťa aktualizáciu len keď Sys.GetStatus hlási available_updates.stable — akciu spustite ručne z karty zariadenia alebo webového rozhrania, ak je zásuvka už aktuálna
  2. Šablóna cieli len na stabilný kanál; beta firmvér musí byť nainštalovaný z Shelly webového rozhrania

Ako nainštalovať v TapHome

Predpoklady

  • Zariadenie Shelly nainštalované a zapnuté
  • Lokálna Wi-Fi sieť (2,4 GHz)
  • TapHome CCU v rovnakej sieti

Krok 1 — Pripojte Shelly k Wi-Fi

Možnosť A — Aplikácia Shelly (odporúčané):

  1. Stiahnite si aplikáciu Shelly (iOS / Android)
  2. Klepnite na +Add Device a postupujte podľa sprievodcu Bluetooth párovaním
  3. Po výzve zadajte svoje Wi-Fi prihlasovacie údaje

Možnosť B — AP režim (bez aplikácie):

  1. Pri prvom zapnutí zariadenie vytvorí hotspot: ShellyXXX-AABBCCDDEE
  2. Pripojte telefón/PC k tomuto hotspotu
  3. Otvorte http://192.168.33.1Internet & SecurityWi-Fi Mode - Client
  4. Zadajte SSID a heslo → Save

Shelly podporuje iba 2,4 GHz siete. 5 GHz siete sa pri skenovaní nezobrazia.

Krok 2 — Zistite IP adresu

Po pripojení k Wi-Fi zistite priradenú IP adresu jedným z nasledujúcich spôsobov:

  • Aplikácia Shelly: Detail zariadenia → Device info → IP adresa
  • Webové rozhranie Shelly: Pripojte sa k AP zariadenia pred nastavením Wi-Fi — IP sa zobrazí po uložení
  • DHCP tabuľka routera: Hľadajte hostname ako shelly1pm-AABBCCDDEE
  • mDNS: Pingnite shelly<model>-<mac>.local (napr. shelly1pm-AABBCCDDEE.local) z rovnakej siete

Priraďte zariadeniu Shelly statickú IP (DHCP rezerváciu) vo vašom routeri, aby sa adresa nezmenila po reštarte routera.

Krok 3 — Konfigurácia v TapHome

  1. V TapHome pridajte nový modul Packet Parser (HTTP)
  2. IP Address: zadajte IP z kroku 2 (napr. 192.168.1.50)
  3. Port: 80 (predvolený, nie je potrebné meniť)
  4. Importujte šablónu — TapHome bude pravidelne čítať /status pre zistenie stavu zariadenia

HTTP autentifikácia je na zariadeniach Shelly štandardne vypnutá. Ak ste povolili ochranu prihlásením, TapHome momentálne nepodporuje HTTP Basic Auth — pre integráciu s TapHome ponechajte autentifikáciu vypnutú.

Dostupné zariadenia

Shelly Plus Plug S Modul
Servisné atribúty
Wi-Fi SSID
IP adresa
Sila signáluSila Wi-Fi signálu v dBm — hodnoty bližšie k 0 znamenajú silnejšie pripojenie (napr. −55 dBm je dobré, −80 dBm je slabé)
MAC adresa
Servisné akcie
Aktualizácia firmvéruSpustí OTA aktualizáciu firmvéru zo stabilného kanála Shelly
ReštartReštartuje zariadenie — užitočné po zmenách sieťovej konfigurácie alebo na odstránenie dočasných problémov
Vlastné premenné

Shelly Plus Plug S

Čítanie (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

response := SENDHTTPREQUEST("/rpc/PLUGS_UI.GetConfig");
IF response.IsSuccess
    PLUGS_UI.GetConfig := 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é atribúty
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é akcie
${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č Prepínač
boolean
Hodnoty / Stavy: ON · OFF

Spínač

Čítanie stavu prepínača
var x := (sendhttprequest("/rpc/Switch.GetStatus?id=0"));
var status := x.Content;
return(PARSEJSON(status, "$.output", true));
Zápis stavu prepínača
VAR response := SENDHTTPREQUEST("rpc/Switch.Set?id=0&on=" + if(St,"true","false"));
IF response.IsSuccess = false
  ADDERROR(response.StatusCode);
END
Elektromer Elektromer Len na čítanie

Okamžitý výkon (kW) a kumulatívna energia (kWh) merané vstavaným meračom, s diagnostikou prúdu, napätia a vnútornej teploty

numeric Jednotka: kW / kWh
Servisné atribúty
Prúd
Napätie
TeplotaVnútorná teplota zariadenia v °C — zásuvka sa pri prehriatí automaticky vypne

Elektromer

Čítanie celkovej spotreby
return(parsejson(parsejson(Switch.GetStatus,"aenergy"), "total")/1000);
Čítanie odberu
return(parsejson(Switch.GetStatus,"apower")/1000);
Čítanie (modul)
VAR response := SENDHTTPREQUEST("/rpc/Switch.GetStatus?id=0");
IF response.IsSuccess
    Switch.GetStatus := response.Content;
END
Servisné atribúty
${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"));
Režim LED indikácie Viacstavový prepínač

Správanie LED prstenca — Off (vypnutý), Switch (farba odráža stav relé) alebo Power (farba odráža záťaž zelená → žltá → červená)

string enum
Hodnoty / Stavy: ${xml_off} · ${switch} · ${xml_power}

Režim LED indikácie

Čítanie stavu prepínača
switch(parsejson(PLUGS_UI.GetConfig, "leds.mode"), "power", 2, "switch", 1, 0)
Zápis stavu prepínača
VAR response := SENDHTTPREQUEST("rpc/PLUGS_UI.SetConfig?config={\"leds\":{\"mode\":\"" + switch(Mu, 2, "power", 1, "switch", "off") + "\"}}");

response := SENDHTTPREQUEST("/rpc/PLUGS_UI.GetConfig");
IF response.IsSuccess
    PLUGS_UI.GetConfig := response.Content;
END
Farba LED (stav VYP) HSB svetlo

RGB farba a jas LED prstenca počas vypnutia relé (používa sa v režime Switch)

HSB (hue, saturation, brightness) hsv-to-rgb

Farba LED (stav VYP)

Čítanie jasu
parsejson(PLUGS_UI.GetConfig, basePath + ".brightness") / 100
Zápis jasu
VAR rgb := HSVTORGB( Hd, Sa, Hb);

VAR response := SENDHTTPREQUEST("rpc/PLUGS_UI.SetConfig?config={\"leds\":{\"colors\":{\"switch:0\":{\"off\":{\"brightness\":" + Hb*100 + "}}}}}");

response := SENDHTTPREQUEST("/rpc/PLUGS_UI.GetConfig");
IF response.IsSuccess
    PLUGS_UI.GetConfig := response.Content;
END
Čítanie odtieňa
VAR HSVColor := RGBTOHSV(parsejson(PLUGS_UI.GetConfig, basePath + ".rgb[0]") *2.55, parsejson(PLUGS_UI.GetConfig, basePath + ".rgb[1]") *2.55, parsejson(PLUGS_UI.GetConfig, basePath + ".rgb[2]") *2.55);

HSVColor.Hue
Zápis odtieňa
VAR rgb := HSVTORGB( Hd, Sa, Hb);

VAR response := SENDHTTPREQUEST("rpc/PLUGS_UI.SetConfig?config={\"leds\":{\"colors\":{\"switch:0\":{\"off\":{\"rgb\":[" + rgb.red/2.55 + "," + rgb.green/2.55 + "," + rgb.blue/2.55 + "],\"brightness\":" + Hb*100 + "}}}}}");

response := SENDHTTPREQUEST("/rpc/PLUGS_UI.GetConfig");
IF response.IsSuccess
    PLUGS_UI.GetConfig := response.Content;
END
Čítanie saturácie
VAR HSVColor := RGBTOHSV(parsejson(PLUGS_UI.GetConfig, basePath + ".rgb[0]") *2.55, parsejson(PLUGS_UI.GetConfig, basePath + ".rgb[1]") *2.55, parsejson(PLUGS_UI.GetConfig, basePath + ".rgb[2]") *2.55);

HSVColor.Saturation
Zápis saturácie
VAR rgb := HSVTORGB( Hd, Sa, Hb);

VAR response := SENDHTTPREQUEST("rpc/PLUGS_UI.SetConfig?config={\"leds\":{\"colors\":{\"switch:0\":{\"off\":{\"rgb\":[" + rgb.red/2.55 + "," + rgb.green/2.55 + "," + rgb.blue/2.55 + "],\"brightness\":" + Hb*100 + "}}}}}");

response := SENDHTTPREQUEST("/rpc/PLUGS_UI.GetConfig");
IF response.IsSuccess
    PLUGS_UI.GetConfig := response.Content;
END
Farba LED (stav ZAP) HSB svetlo

RGB farba a jas LED prstenca počas zapnutia relé (používa sa v režime Switch)

HSB (hue, saturation, brightness) hsv-to-rgb

Farba LED (stav ZAP)

Čítanie jasu
parsejson(PLUGS_UI.GetConfig, basePath + ".brightness") / 100
Zápis jasu
VAR rgb := HSVTORGB( Hd, Sa, Hb);

VAR response := SENDHTTPREQUEST("rpc/PLUGS_UI.SetConfig?config={\"leds\":{\"colors\":{\"switch:0\":{\"on\":{\"brightness\":" + Hb*100 + "}}}}}");

response := SENDHTTPREQUEST("/rpc/PLUGS_UI.GetConfig");
IF response.IsSuccess
    PLUGS_UI.GetConfig := response.Content;
END
Čítanie odtieňa
VAR HSVColor := RGBTOHSV(parsejson(PLUGS_UI.GetConfig, basePath + ".rgb[0]") *2.55, parsejson(PLUGS_UI.GetConfig, basePath + ".rgb[1]") *2.55, parsejson(PLUGS_UI.GetConfig, basePath + ".rgb[2]") *2.55);

HSVColor.Hue
Zápis odtieňa
VAR rgb := HSVTORGB( Hd, Sa, Hb);

VAR response := SENDHTTPREQUEST("rpc/PLUGS_UI.SetConfig?config={\"leds\":{\"colors\":{\"switch:0\":{\"on\":{\"rgb\":[" + rgb.red/2.55 + "," + rgb.green/2.55 + "," + rgb.blue/2.55 + "],\"brightness\":" + Hb*100 + "}}}}}");

response := SENDHTTPREQUEST("/rpc/PLUGS_UI.GetConfig");
IF response.IsSuccess
    PLUGS_UI.GetConfig := response.Content;
END
Čítanie saturácie
VAR HSVColor := RGBTOHSV(parsejson(PLUGS_UI.GetConfig, basePath + ".rgb[0]") *2.55, parsejson(PLUGS_UI.GetConfig, basePath + ".rgb[1]") *2.55, parsejson(PLUGS_UI.GetConfig, basePath + ".rgb[2]") *2.55);

HSVColor.Saturation
Zápis saturácie
VAR rgb := HSVTORGB( Hd, Sa, Hb);

VAR response := SENDHTTPREQUEST("rpc/PLUGS_UI.SetConfig?config={\"leds\":{\"colors\":{\"switch:0\":{\"on\":{\"rgb\":[" + rgb.red/2.55 + "," + rgb.green/2.55 + "," + rgb.blue/2.55 + "],\"brightness\":" + Hb*100 + "}}}}}");

response := SENDHTTPREQUEST("/rpc/PLUGS_UI.GetConfig");
IF response.IsSuccess
    PLUGS_UI.GetConfig := response.Content;
END
Jas LED (režim Power) Stmievač

Jas LED prstenca v režime Power — samotnú farbu volí firmvér automaticky podľa záťaže

numeric

Jas LED (režim Power)

Čítanie úrovne
parsejson(PLUGS_UI.GetConfig, "leds.colors.power.brightness") / 100
Zápis úrovne
VAR response := SENDHTTPREQUEST("rpc/PLUGS_UI.SetConfig?config={\"leds\":{\"colors\":{\"power\":{\"brightness\":" + Le*100 + "}}}}");

response := SENDHTTPREQUEST("/rpc/PLUGS_UI.GetConfig");
IF response.IsSuccess
    PLUGS_UI.GetConfig := response.Content;
END
Pripojenie: Packet Parser → HTTP
Možné vylepšenia (23)
  • Power Factor — Power factor (0.0–1.0) reported in Switch.GetStatus response for metered devices
  • Line Frequency — AC line frequency in Hz, available in Switch.GetStatus response
  • Returned Energy — Returned/exported energy in Wh, for bi-directional metering scenarios
  • Per-minute Energy History — Rolling three-minute energy buffer in mWh, useful for fine-grained load profiling
  • Toggle Relay — Toggles the relay state without needing to know current state; not mapped as a TapHome service action
  • Auto-off Timer — Optional toggle_after parameter (seconds) on Switch.Set — relay auto-reverts after N seconds
  • Overpower Protection — Configurable power limit (W); firmware turns the relay off when exceeded. Template does not expose a setter
  • Over-voltage / Over-current Protection — Voltage and current safety thresholds configurable via Switch.SetConfig; not exposed by template
  • Initial State After Power-up — Relay behaviour after power loss (off / on / restore_last / match_input); not exposed by template
  • Reset Energy Counters — Resets aenergy / ret_aenergy counters; not exposed by template
  • Button Input Mode — Physical button behaviour (momentary / detached); device-internal, not exposed as a TapHome input
  • LED Night Mode — Dims the LED ring during a configurable HH:MM window (wraps midnight); not mapped by template
  • Local Scheduler — On-device cron-like scheduler for relay actions; no TapHome equivalent (TapHome uses its own schedules)
  • Webhooks — Outbound HTTP webhooks on device events; not used by template (TapHome polls instead)
  • mJS Scripts — Up to 10 on-device mJS scripts; out of scope for TapHome integration
  • Shelly Cloud Connection — Cloud connection status and enable/disable toggle; not mapped by template (TapHome communicates locally)
  • Bluetooth LE Configuration — BLE gateway enable/disable and observer mode; not exposed by template
  • MQTT Transport Config — Inbound/outbound MQTT RPC transport config; template uses HTTP exclusively
  • System Diagnostics — Uptime, RAM/FS utilisation, last reset reason — available in cached Sys.GetStatus but not surfaced as attributes
  • Device Time — Device wall-clock (HH:MM) and unix epoch; not surfaced as attribute
  • Beta Firmware Availability — Template warns on available_updates.stable but ignores the beta channel
  • Factory Reset — Restores factory defaults; not exposed by template (deliberately destructive)
  • HTTP Authentication — Enables digest auth on the RPC endpoint; template assumes no-auth local access

Zdroje

Našli ste problém s touto šablónou zariadenia?

Napíšte nám, čo nefunguje, čo chýba, alebo ako by sa mala šablóna správať. Vaša spätná väzba nám pomáha udržiavať katalóg presný.

Overené TapHomom

Chcete to použiť vo svojom TapHome jadre?

Otvorte túto šablónu v Customer Portali a aplikujte ju na svoj domov, alebo navrhnite zmenu a odošlite ju späť do katalógu.

Otvoriť v portáli