---
title: "Shelly Plus RGBW PM"
description: "Shelly Plus RGBW PM v TapHome lokálne cez HTTP RPC: profil rgb, rgbw alebo 4 stmievače pre LED pásy 12/24 V s meraním energie na kanál."
url: "https://taphome.com/sk/compatibility/shelly-plus-rgbw-pm/"
language: sk
lastmod: 2026-10-08
generator: hugo
ai:
  topics: ["http","lighting","wifi","rgbw","rgb","dimmer","power-metering","gen2plus","profiles"]
  questions: ["Ako integrovať Shelly Plus RGBW PM s TapHome?","Aké profily podporuje Shelly Plus RGBW PM v TapHome?","Ako prepínať medzi profilmi light, rgb a rgbw na Shelly Plus RGBW PM?","Ako ovládať RGB farby na Shelly Plus RGBW PM cez TapHome?","Aký je rozdiel medzi profilmi rgb a rgbw na Shelly Plus RGBW PM?","Ako používať 4-kanálový režim stmievača na Shelly Plus RGBW PM?","Prečo Shelly Plus RGBW PM ukazuje chybu profilu v TapHome?","Aké údaje o meraní spotreby sú dostupné pre Shelly Plus RGBW PM v TapHome?"]
---

# Shelly Plus RGBW PM

Komunikácia: Packet Parser → HTTP

- [Produktová stránka Shelly Plus RGBW PM](https://www.shelly.com/en/products/shop/shelly-plus-rgbw-pm)
- [API dokumentácia Shelly Plus RGBW PM](https://shelly-api-docs.shelly.cloud/gen2/Devices/Gen2/ShellyPlusRGBWPM/)

> Adresa v sieti
> 
> TapHome komunikuje so zariadením na adrese zadanej pri importe. Dajte zariadeniu stálu adresu — rezerváciu IP v routeri, alebo jeho mDNS meno, ak ho podporuje —, inak integrácia prestane fungovať, keď router adresu zmení.
> 
> [Príprava siete](https://taphome.com/sk/docs/setup/network-preparation/)

## Návod na integráciu

Shelly Plus RGBW PM je Gen2+ Wi-Fi RGBW LED ovládač so vstavaným meraním spotreby na každom výstupnom kanáli. Poháňa LED pásy alebo jednotlivé LED kanály pri 12/24 VDC s maximálne 4 A na kanál (celkovo 10 A). Zariadenie podporuje tri prepínateľné profily — **light** (4 nezávislé stmievače), **rgb** (3-kanálová farba) a **rgbw** (3-kanálová farba + biela) — pričom každý exponuje rôzne zariadenia v TapHome. TapHome komunikuje so zariadením lokálne cez Wi-Fi pomocou Gen2+ RPC API — cloudové pripojenie nie je potrebné.

TapHome šablóna je **HTTP šablóna**, ktorá dotazuje RPC endpointy zariadenia. Jedna šablóna obsluhuje všetky tri profily; TapHome detekuje aktívny profil za behu a aktivuje príslušné zariadenia.

## Konfigurácia

### Importné parametre

Šablóna vyžaduje len IP adresu zariadenia (predvolený placeholder `192.168.0.1`). TapHome sa pripája na port 80 a dotazuje viaceré RPC endpointy pre stav systému a dáta zariadenia.

Na úrovni modulu TapHome dotazuje `/rpc/Sys.GetStatus`, `/rpc/Sys.GetConfig`, `/rpc/WiFi.GetStatus` a `/rpc/PlusRGBWPM.GetConfig` v 3-sekundovom intervale. Odpoveď `Sys.GetConfig` poskytuje aktuálny profil (`device.profile`), ktorý určuje, ktoré endpointy na úrovni zariadenia sú aktívne.

### Výber profilu

Shelly Plus RGBW PM pracuje vždy v jednom z troch profilov. Profil môžete prepnúť priamo z TapHome pomocou servisnej akcie **Set Profile** na module, alebo z webového rozhrania Shelly.

| Profil | Zariadenia v TapHome | Použitie |
|--------|---------------------|----------|
| **light** | 4 nezávislé stmievače (O1–O4) | Jednofarebné LED pásy, 4 samostatné svetelné zóny |
| **rgb** | 1 RGB svetlo | RGB LED pásy (3-kanálové miešanie farieb) |
| **rgbw** | 1 RGBW svetlo | RGBW LED pásy (RGB + dedikovaný biely kanál) |

Po prepnutí profilu sa zariadenie reštartuje a TapHome automaticky detekuje nový profil. Zariadenia patriace neaktívnemu profilu budú hlásiť chybu ("Profile is not set to ...") — to je očakávané a možno to ignorovať.

## Funkcie zariadenia

### RGB svetlo (profil = rgb)

Keď je zariadenie nastavené na profil **rgb**, TapHome exponuje jedno HSB svetlo. Šablóna číta `/rpc/RGB.GetStatus?id=0` pre stav zapnutia/vypnutia, jas (0–100 %) a RGB farebné hodnoty a zapisuje cez `/rpc/RGB.Set?id=0` na ovládanie svetla.

Ovládanie farieb používa HSB (Hue-Saturation-Brightness):
- **Hue** (0–360 stupňov) a **Saturation** (0,0–1,0) sa konvertujú medzi HSB a RGB interne
- **Brightness** (0,0–1,0) sa mapuje na rozsah Shelly 0–100 %
- Nastavenie jasu na 0 vypne svetlo; akýkoľvek nenulový jas svetlo zapne

RGB svetlo exponuje päť servisných atribútov:

| Atribút | Jednotka | Popis |
|---------|----------|-------|
| Teplota | C | Interná teplota zariadenia |
| Spotreba energie | Wh | Kumulatívna energia pre RGB výstup |
| Výkon | W | Okamžitý príkon |
| Napätie | V | Efektívne napätie |
| Prúd | A | Odber prúdu |

### RGBW svetlo (profil = rgbw)

Keď je nastavený profil **rgbw**, TapHome exponuje jedno HSB svetlo s dodatočným bielym kanálom. Šablóna číta `/rpc/RGBW.GetStatus?id=0` a zapisuje cez `/rpc/RGBW.Set?id=0`.

Profil RGBW pridáva **biely kanál** (0–255) ovládaný cez CCT (korelovaná teplota chromatickosti) na fixných 4500 K:
- Keď je biely kanál aktívny (`white != 0`), jas sa odvodzuje z úrovne bielej (lineárne 0–255 mapované na 0,0–1,0)
- Keď je biely kanál neaktívny, jas pochádza zo štandardného poľa brightness (0–100 %)
- Prepnutie do režimu teploty chromatickosti v TapHome aktivuje biely kanál; prepnutie do RGB režimu ho deaktivuje

RGBW svetlo exponuje rovnakých päť servisných atribútov ako RGB svetlo (teplota, energia, výkon, napätie, prúd), čítaných z odpovede RGBW.GetStatus.

### Stmievateľné LED výstupy (profil = light)

Keď je nastavený profil **light**, TapHome exponuje **4 nezávislé kanály stmievačov** (O1–O4), z ktorých každý ovláda jeden LED výstup. Každý kanál číta z `/rpc/Light.GetStatus?id={0-3}` a zapisuje cez `/rpc/Light.Set?id={0-3}`.

Jas sa mapuje z rozsahu TapHome 0,0–1,0 na rozsah Shelly 0–100 %. Nastavenie úrovne na 0 vypne výstup; akákoľvek nenulová úroveň výstup zapne a nastaví jas.

Každý kanál stmievača exponuje šesť servisných atribútov:

| Atribút | Jednotka | Popis |
|---------|----------|-------|
| Teplota | C | Interná teplota zariadenia |
| Spotreba energie | Wh | Kumulatívna energia pre tento kanál |
| Výkon | W | Okamžitý príkon |
| Napätie | V | Efektívne napätie |
| Prúd | A | Odber prúdu |
| Príznaky | — | Interné stavové príznaky |

Každý kanál stmievača tiež exponuje servisnú akciu **Kalibrácia**, ktorá odošle `/rpc/Light.Calibrate?id={N}` na kalibráciu výstupu pre pripojené LED záťaž.

### Diagnostika modulu a akcie

Modul exponuje päť servisných atribútov pre diagnostiku zariadenia:

| Atribút | Popis |
|---------|-------|
| WiFi | Názov pripojenej bezdrôtovej siete |
| IP adresa | IP adresa zariadenia |
| Sila signálu (dB) | WiFi RSSI |
| MAC | Hardvérová adresa zariadenia |
| Profil | Aktuálne aktívny profil (light, rgb alebo rgbw) |

Na úrovni modulu sú dostupné tri servisné akcie:

| Akcia | Popis |
|-------|-------|
| Aktualizácia firmvéru | Spustí OTA aktualizáciu na stabilný kanál firmvéru |
| Reštart | Reštartuje zariadenie |
| Nastaviť profil | Prepína medzi profilmi light, rgb a rgbw (zariadenie sa reštartuje) |

Skript modulu tiež kontroluje dostupné aktualizácie firmvéru a požiadavky na čakajúci reštart, pričom v TapHome zobrazuje varovania, keď je zistená niektorá z týchto podmienok.

### Ďalšie funkcie

Shelly Plus RGBW PM tiež exponuje stav fyzického vstupu, konfiguráciu nočného režimu s limitmi jasu a plánom, trvanie prechodu pre zmeny farby/jasu a minimálny jas pri zapnutí cez svoje RPC API. Tieto funkcie môžu byť pridané v budúcej aktualizácii šablóny.

## Riešenie problémov

### Zariadenie neodpovedá

1. Overte, že Shelly je pripojený k Wi-Fi a má platnú IP adresu
2. Skúste použiť mDNS hostname (`shellyplusrgbwpm-AABBCCDDEE.local`) namiesto IP adresy — IP sa mohla zmeniť po obnovení DHCP
3. Otvorte `http://{device-ip}/rpc/Shelly.GetDeviceInfo` v prehliadači — ak odpovedá JSON, zariadenie je dostupné
4. Skontrolujte, že TapHome CCU a Shelly sú v rovnakej sieti / VLAN
5. Uistite sa, že HTTP Digest Authentication je vypnuté vo webovom rozhraní Shelly — TapHome nepodporuje autentifikované požiadavky

### Chyba profilu na zariadeniach

Ak zariadenie ukazuje "Profile is not set to rgb/rgbw/light" — to je očakávané. Šablóna obsahuje zariadenia pre všetky tri profily, ale fungovať budú len zariadenia zodpovedajúce aktuálne aktívnemu profilu. Ostatné zariadenia budú hlásiť túto chybu a možno ich ignorovať.

Na prepnutie aktívneho profilu použite servisnú akciu **Set Profile** na module alebo ho zmeňte vo webovom rozhraní Shelly. Zariadenie sa reštartuje a TapHome detekuje nový profil v rámci jedného cyklu dopytovania.

### Farby sa zobrazujú nesprávne v režime RGB/RGBW

1. Overte, že zapojenie LED pásu zodpovedá poradiu výstupných svoriek (R, G, B, W) — prehodené káble produkujú nesprávne farby
2. Šablóna konvertuje medzi farebnými priestormi HSB a RGB interne. Ak farby pôsobia vyblednuté, skontrolujte hodnotu saturácie — nízka saturácia produkuje pastelové odtiene
3. V režime RGBW sú biely kanál a RGB kanály ovládané nezávisle. Pri prepínaní z bielej na farbu alebo naopak TapHome odošle príslušný príkaz na vynulovanie druhého režimu

### Výstupy stmievača nereagujú v režime light

1. Potvrďte, že profil je nastavený na **light** — zariadenia stmievačov fungujú len v režime light
2. Skontrolujte, že každý kanál má pripojenú LED záťaž — nezaťažené kanály nemusia hlásiť správny stav
3. Skúste spustiť akciu **Kalibrácia** na kanáli — tým sa optimalizuje krivka stmievania pre pripojenú LED záťaž
4. Zariadenia Gen2+ podporujú až 6 súčasných HTTP pripojení — vyhnite sa súčasnému dotazovaniu z viacerých systémov

### Meranie výkonu ukazuje nulu

1. Potvrďte, že LED záťaž je pripojená a kanál je zapnutý
2. Dotazujte príslušný endpoint manuálne (`/rpc/Light.GetStatus?id=0`, `/rpc/RGB.GetStatus?id=0` alebo `/rpc/RGBW.GetStatus?id=0`) a overte, že `apower` vracia nenulovú hodnotu
3. LED záťaže s veľmi nízkym výkonom môžu hlásiť 0 W kvôli rozlíšeniu merania — to je normálne pre malé indikačné LED

## 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](https://www.shelly.com/en/support/shelly-app) (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.1` → **Internet & Security** → **Wi-Fi Mode - Client**
4. Zadajte SSID a heslo → **Save**

> [!NOTE]
> 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

> [!TIP]
> 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

> [!NOTE]
> 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 6

Tieto zariadenia sa po importe zobrazia v TapHome.

Shelly Plus RGBW PM Modul

Servisné atribúty

|              |
|--------------|
| WiFi         |
| IP adresa    |
| Sila signálu |
| MAC          |
| Profil       |

Servisné akcie

|                       |
|-----------------------|
| Aktualizácia firmvéru |
| Reštart               |
| Nastaviť profil       |

Vlastné premenné

Čítanie (modul)

```taphome
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/PlusRGBWPM.GetConfig");
IF response.IsSuccess
    PlusRGBWPM.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

```taphome
PARSEJSON(WiFi.GetStatus, "ssid")
```

${ipAddress}

```taphome
PARSEJSON(WiFi.GetStatus, "sta_ip")
```

${xml\_signal\_strength} \[dB]

```taphome
PARSEJSON(WiFi.GetStatus, "rssi")
```

MAC

```taphome
PARSEJSON(Sys.GetStatus, "mac")
```

Profile

```taphome
PARSEJSON(Sys.GetConfig, "$.device.profile");
```

Servisné akcie

${xml\_update\_fw}

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Shelly.Update?stage=\"stable\"");
IF response.IsSuccess
    return("OK");
else
    return("Error");
END

```

${restart}

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Shelly.Reboot");
IF response.IsSuccess
    return("OK");
else
    return("Error");
END
```

Set Profile

Parametre: Profile

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Shelly.SetProfile?name=\"" + 
switch(prof,
0, "light",
1, "rgb",
2, "rgbw",
"")
+ "\"");
IF response.IsSuccess
    return("OK");
else
    return("Error");
END
```

RGB svetlo HSB svetlo Čítanie aj zápis

HSB farebné svetlo (profil rgb) s ovládaním jasu, odtieňa, saturácie a meraním spotreby na kanál

HSB

Servisné atribúty

|                  |
|------------------|
| Teplota          |
| Spotreba energie |
| Výkon            |
| Napätie          |
| Prúd             |

Čítanie (modul)

```taphome
if PARSEJSON(Sys.GetConfig, "$.device.profile") != "rgb"
	adderror("Profile is not set to rgb (" + PARSEJSON(Sys.GetConfig, "$.device.profile") + ")");
end

VAR response := SENDHTTPREQUEST("/rpc/RGB.GetStatus?id=" + ID);
IF response.IsSuccess
    RGB.GetStatus := response.Content;
	R := PARSEJSON(RGB.GetStatus, "$.rgb[0]", true);
	G := PARSEJSON(RGB.GetStatus, "$.rgb[1]", true);
	B := PARSEJSON(RGB.GetStatus, "$.rgb[2]", true);    
END

response := SENDHTTPREQUEST("/rpc/RGB.GetConfig?id=" + ID);
IF response.IsSuccess
    RGB.GetConfig := response.Content;
END

if ! ISNULL(parsejson(RGB.GetStatus, "errors", true))
    adderror("Error: " + parsejson(RGB.GetStatus, "errors"));
end
```

Čítanie jasu

```taphome
bool output := PARSEJSON(RGB.GetStatus, "$.output", true);
var brightness := PARSEJSON(RGB.GetStatus, "$.brightness", true);

if output
    return(brightness / 100);
else
    return(0);
end
```

Zápis jasu

```taphome
SENDHTTPREQUEST("/rpc/RGB.Set?id=" + ID + "&on=" + if(St, "true", "false") + "&brightness=" + round(Hb*100.0));
```

Čítanie odtieňa

```taphome
VAR HSVColor := RGBTOHSV(R, G, B);
ROUND(HSVColor.Hue);
```

Zápis odtieňa

```taphome
VAR color := HSVTORGB(Hd, Sa, 1);
SENDHTTPREQUEST("/rpc/RGB.Set?id=" + ID + "&rgb=[" + color.RED + "," + color.GREEN + "," + color.BLUE + "]");
```

Čítanie saturácie

```taphome
VAR HSVColor := RGBTOHSV(R, G, B);
ROUND(HSVColor.Saturation * 100.0) / 100.0;
```

Zápis saturácie

```taphome
VAR color := HSVTORGB(Hd, Sa, 1);
SENDHTTPREQUEST("/rpc/RGB.Set?id=" + ID + "&rgb=[" + color.RED + "," + color.GREEN + "," + color.BLUE + "]");
```

Servisné atribúty

${device\_variable\_realtemperature} \[°C]

```taphome
parsejson(RGB.GetStatus, "$.temperature.tC", true)
```

${device\_variable\_electricityconsumption} \[Wh]

```taphome
parsejson(RGB.GetStatus, "$.aenergy.total", true)
```

${device\_variable\_electricitydemand} \[W]

```taphome
parsejson(RGB.GetStatus, "$.apower", true)
```

${valueLogType\_ElectricVoltage} \[V]

```taphome
parsejson(RGB.GetStatus, "$.voltage", true)
```

${valueLogType\_ElectricCurrent} \[A]

```taphome
parsejson(RGB.GetStatus, "$.current", true)
```

RGBW svetlo HSB svetlo Čítanie aj zápis

HSB farebné+biele svetlo (profil rgbw) s RGB, bielym kanálom (CCT pri 4500K) a meraním spotreby na kanál

HSB

Servisné atribúty

|                  |
|------------------|
| Teplota          |
| Spotreba energie |
| Výkon            |
| Napätie          |
| Prúd             |

Čítanie (modul)

```taphome
if PARSEJSON(Sys.GetConfig, "$.device.profile") != "rgbw"
	adderror("Profile is not set to rgbw (" + PARSEJSON(Sys.GetConfig, "$.device.profile") + ")");
end

VAR response := SENDHTTPREQUEST("/rpc/RGBW.GetStatus?id=" + ID);
IF response.IsSuccess
    RGBW.GetStatus := response.Content;
	R := PARSEJSON(RGBW.GetStatus, "$.rgb[0]", true);
	G := PARSEJSON(RGBW.GetStatus, "$.rgb[1]", true);
	B := PARSEJSON(RGBW.GetStatus, "$.rgb[2]", true);    
END

response := SENDHTTPREQUEST("/rpc/RGBW.GetConfig?id=" + ID);
IF response.IsSuccess
    RGBW.GetConfig := response.Content;
END

if ! ISNULL(parsejson(RGBW.GetStatus, "errors", true))
    adderror("Error: " + parsejson(RGBW.GetStatus, "errors"));
end
```

Čítanie jasu

```taphome
bool output := PARSEJSON(RGBW.GetStatus, "$.output", true);
var brightness := PARSEJSON(RGBW.GetStatus, "$.brightness", true);
var white := PARSEJSON(RGBW.GetStatus, "$.white", true);

if output
	if white != 0
		return(linear(white, 0, 0, 255, 1));
	else
    	return(brightness / 100);
    end
else
    return(0);
end
```

Zápis jasu

```taphome
if isnan(Ct)
	SENDHTTPREQUEST("/rpc/RGBW.Set?id=" + ID + "&on=" + if(St, "true", "false") + "&white=0&brightness=" + round(Hb*100.0));
else
	SENDHTTPREQUEST("/rpc/RGBW.Set?id=" + ID + "&on=" + if(St, "true", "false") + "&brightness=0&white=" + round(linear(Hb, 0, 0, 1, 255)));
end
```

Čítanie odtieňa

```taphome
VAR HSVColor := RGBTOHSV(R, G, B);
ROUND(HSVColor.Hue);
```

Zápis odtieňa

```taphome
VAR color := HSVTORGB(Hd, Sa, 1);
SENDHTTPREQUEST("/rpc/RGBW.Set?id=" + ID + "&rgb=[" + color.RED + "," + color.GREEN + "," + color.BLUE + "]");
```

Čítanie saturácie

```taphome
VAR HSVColor := RGBTOHSV(R, G, B);
ROUND(HSVColor.Saturation * 100.0) / 100.0;
```

Zápis saturácie

```taphome
VAR color := HSVTORGB(Hd, Sa, 1);
SENDHTTPREQUEST("/rpc/RGBW.Set?id=" + ID + "&rgb=[" + color.RED + "," + color.GREEN + "," + color.BLUE + "]");
```

Čítanie farebnej teploty

```taphome
var white := PARSEJSON(RGBW.GetStatus, "$.white", true);
if white != 0 or !isnan(Ct)
	return(4500);
else
	return(NaN);
end
```

Zápis farebnej teploty

```taphome
IF !isnan(Ct)
	SENDHTTPREQUEST("/rpc/RGBW.Set?id=" + ID + "&on=" + if(St, "true", "false") + "&brightness=0&white=" + round(linear(Hb, 0, 0, 1, 255)));
end
```

Servisné atribúty

${device\_variable\_realtemperature} \[°C]

```taphome
parsejson(RGBW.GetStatus, "$.temperature.tC", true)
```

${device\_variable\_electricityconsumption} \[Wh]

```taphome
parsejson(RGBW.GetStatus, "$.aenergy.total", true)
```

${device\_variable\_electricitydemand} \[W]

```taphome
parsejson(RGBW.GetStatus, "$.apower", true)
```

${valueLogType\_ElectricVoltage} \[V]

```taphome
parsejson(RGBW.GetStatus, "$.voltage", true)
```

${valueLogType\_ElectricCurrent} \[A]

```taphome
parsejson(RGBW.GetStatus, "$.current", true)
```

Stmievateľný LED výstup 2 Stmievač Čítanie aj zápis

Nezávislý kanál stmievača 2 (profil light, id=1) s ovládaním jasu, kalibráciou a meraním spotreby na kanál

numeric

Servisné atribúty

|                  |
|------------------|
| Teplota          |
| Spotreba energie |
| Výkon            |
| Napätie          |
| Prúd             |
| Príznaky         |

Servisné akcie

|            |
|------------|
| Kalibrácia |

Čítanie (modul)

```taphome
if PARSEJSON(Sys.GetConfig, "$.device.profile") != "light"
	adderror("Profile is not set to light (" + PARSEJSON(Sys.GetConfig, "$.device.profile") + ")");
end

VAR response := SENDHTTPREQUEST("/rpc/Light.GetStatus?id=" + ID);
IF response.IsSuccess
    Light.GetStatus := response.Content;
END

response := SENDHTTPREQUEST("/rpc/Light.GetConfig?id=" + ID);
IF response.IsSuccess
    Light.GetConfig := response.Content;
END

if ! ISNULL(parsejson(Light.GetStatus, "errors", true))
    adderror("Error: " + parsejson(Light.GetStatus, "errors"));
end
```

Čítanie úrovne

```taphome
bool output := PARSEJSON(Light.GetStatus, "$.output");
var brightness := PARSEJSON(Light.GetStatus, "$.brightness");

if output
    return(brightness / 100);
else
    return(0);
end
```

Zápis úrovne

```taphome
SENDHTTPREQUEST("/rpc/Light.Set?id=" + ID + "&on=" + if(St, "true", "false") + "&brightness=" + round(Le*100.0));
```

Servisné atribúty

${device\_variable\_realtemperature} \[°C]

```taphome
parsejson(Light.GetStatus, "$.temperature.tC", true)
```

${device\_variable\_electricityconsumption} \[Wh]

```taphome
parsejson(Light.GetStatus, "$.aenergy.total", true)
```

${device\_variable\_electricitydemand} \[W]

```taphome
parsejson(Light.GetStatus, "$.apower", true)
```

${valueLogType\_ElectricVoltage} \[V]

```taphome
parsejson(Light.GetStatus, "$.voltage", true)
```

${valueLogType\_ElectricCurrent} \[A]

```taphome
parsejson(Light.GetStatus, "$.current", true)
```

Flags

```taphome
parsejson(Light.GetStatus, "$.flags", true)
```

Servisné akcie

${detail\_deviceSettings\_TemperatureSensor\_categoryCalibration}

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Light.Calibrate?id=" + ID);
IF response.IsSuccess
    return("OK");
else
    return("Error");
END
```

Stmievateľný LED výstup 1 Stmievač Čítanie aj zápis

Nezávislý kanál stmievača 1 (profil light, id=0) s ovládaním jasu, kalibráciou a meraním spotreby na kanál

numeric

Servisné atribúty

|                  |
|------------------|
| Teplota          |
| Spotreba energie |
| Výkon            |
| Napätie          |
| Prúd             |
| Príznaky         |

Servisné akcie

|            |
|------------|
| Kalibrácia |

Čítanie (modul)

```taphome
if PARSEJSON(Sys.GetConfig, "$.device.profile") != "light"
	adderror("Profile is not set to light (" + PARSEJSON(Sys.GetConfig, "$.device.profile") + ")");
end

VAR response := SENDHTTPREQUEST("/rpc/Light.GetStatus?id=" + ID);
IF response.IsSuccess
    Light.GetStatus := response.Content;
END

response := SENDHTTPREQUEST("/rpc/Light.GetConfig?id=" + ID);
IF response.IsSuccess
    Light.GetConfig := response.Content;
END

if ! ISNULL(parsejson(Light.GetStatus, "errors", true))
    adderror("Error: " + parsejson(Light.GetStatus, "errors"));
end
```

Čítanie úrovne

```taphome
bool output := PARSEJSON(Light.GetStatus, "$.output");
var brightness := PARSEJSON(Light.GetStatus, "$.brightness");

if output
    return(brightness / 100);
else
    return(0);
end
```

Zápis úrovne

```taphome
SENDHTTPREQUEST("/rpc/Light.Set?id=" + ID + "&on=" + if(St, "true", "false") + "&brightness=" + round(Le*100.0));
```

Servisné atribúty

${device\_variable\_realtemperature} \[°C]

```taphome
parsejson(Light.GetStatus, "$.temperature.tC", true)
```

${device\_variable\_electricityconsumption} \[Wh]

```taphome
parsejson(Light.GetStatus, "$.aenergy.total", true)
```

${device\_variable\_electricitydemand} \[W]

```taphome
parsejson(Light.GetStatus, "$.apower", true)
```

${valueLogType\_ElectricVoltage} \[V]

```taphome
parsejson(Light.GetStatus, "$.voltage", true)
```

${valueLogType\_ElectricCurrent} \[A]

```taphome
parsejson(Light.GetStatus, "$.current", true)
```

Flags

```taphome
parsejson(Light.GetStatus, "$.flags", true)
```

Servisné akcie

${detail\_deviceSettings\_TemperatureSensor\_categoryCalibration}

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Light.Calibrate?id=" + ID);
IF response.IsSuccess
    return("OK");
else
    return("Error");
END
```

Stmievateľný LED výstup 3 Stmievač Čítanie aj zápis

Nezávislý kanál stmievača 3 (profil light, id=2) s ovládaním jasu, kalibráciou a meraním spotreby na kanál

numeric

Servisné atribúty

|                  |
|------------------|
| Teplota          |
| Spotreba energie |
| Výkon            |
| Napätie          |
| Prúd             |
| Príznaky         |

Servisné akcie

|            |
|------------|
| Kalibrácia |

Čítanie (modul)

```taphome
if PARSEJSON(Sys.GetConfig, "$.device.profile") != "light"
	adderror("Profile is not set to light (" + PARSEJSON(Sys.GetConfig, "$.device.profile") + ")");
end

VAR response := SENDHTTPREQUEST("/rpc/Light.GetStatus?id=" + ID);
IF response.IsSuccess
    Light.GetStatus := response.Content;
END

response := SENDHTTPREQUEST("/rpc/Light.GetConfig?id=" + ID);
IF response.IsSuccess
    Light.GetConfig := response.Content;
END

if ! ISNULL(parsejson(Light.GetStatus, "errors", true))
    adderror("Error: " + parsejson(Light.GetStatus, "errors"));
end
```

Čítanie úrovne

```taphome
bool output := PARSEJSON(Light.GetStatus, "$.output");
var brightness := PARSEJSON(Light.GetStatus, "$.brightness");

if output
    return(brightness / 100);
else
    return(0);
end
```

Zápis úrovne

```taphome
SENDHTTPREQUEST("/rpc/Light.Set?id=" + ID + "&on=" + if(St, "true", "false") + "&brightness=" + round(Le*100.0));
```

Servisné atribúty

${device\_variable\_realtemperature} \[°C]

```taphome
parsejson(Light.GetStatus, "$.temperature.tC", true)
```

${device\_variable\_electricityconsumption} \[Wh]

```taphome
parsejson(Light.GetStatus, "$.aenergy.total", true)
```

${device\_variable\_electricitydemand} \[W]

```taphome
parsejson(Light.GetStatus, "$.apower", true)
```

${valueLogType\_ElectricVoltage} \[V]

```taphome
parsejson(Light.GetStatus, "$.voltage", true)
```

${valueLogType\_ElectricCurrent} \[A]

```taphome
parsejson(Light.GetStatus, "$.current", true)
```

Flags

```taphome
parsejson(Light.GetStatus, "$.flags", true)
```

Servisné akcie

${detail\_deviceSettings\_TemperatureSensor\_categoryCalibration}

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Light.Calibrate?id=" + ID);
IF response.IsSuccess
    return("OK");
else
    return("Error");
END
```

Stmievateľný LED výstup 4 Stmievač Čítanie aj zápis

Nezávislý kanál stmievača 4 (profil light, id=3) s ovládaním jasu, kalibráciou a meraním spotreby na kanál

numeric

Servisné atribúty

|                  |
|------------------|
| Teplota          |
| Spotreba energie |
| Výkon            |
| Napätie          |
| Prúd             |
| Príznaky         |

Servisné akcie

|            |
|------------|
| Kalibrácia |

Čítanie (modul)

```taphome
if PARSEJSON(Sys.GetConfig, "$.device.profile") != "light"
	adderror("Profile is not set to light (" + PARSEJSON(Sys.GetConfig, "$.device.profile") + ")");
end

VAR response := SENDHTTPREQUEST("/rpc/Light.GetStatus?id=" + ID);
IF response.IsSuccess
    Light.GetStatus := response.Content;
END

response := SENDHTTPREQUEST("/rpc/Light.GetConfig?id=" + ID);
IF response.IsSuccess
    Light.GetConfig := response.Content;
END

if ! ISNULL(parsejson(Light.GetStatus, "errors", true))
    adderror("Error: " + parsejson(Light.GetStatus, "errors"));
end
```

Čítanie úrovne

```taphome
bool output := PARSEJSON(Light.GetStatus, "$.output");
var brightness := PARSEJSON(Light.GetStatus, "$.brightness");

if output
    return(brightness / 100);
else
    return(0);
end
```

Zápis úrovne

```taphome
SENDHTTPREQUEST("/rpc/Light.Set?id=" + ID + "&on=" + if(St, "true", "false") + "&brightness=" + round(Le*100.0));
```

Servisné atribúty

${device\_variable\_realtemperature} \[°C]

```taphome
parsejson(Light.GetStatus, "$.temperature.tC", true)
```

${device\_variable\_electricityconsumption} \[Wh]

```taphome
parsejson(Light.GetStatus, "$.aenergy.total", true)
```

${device\_variable\_electricitydemand} \[W]

```taphome
parsejson(Light.GetStatus, "$.apower", true)
```

${valueLogType\_ElectricVoltage} \[V]

```taphome
parsejson(Light.GetStatus, "$.voltage", true)
```

${valueLogType\_ElectricCurrent} \[A]

```taphome
parsejson(Light.GetStatus, "$.current", true)
```

Flags

```taphome
parsejson(Light.GetStatus, "$.flags", true)
```

Servisné akcie

${detail\_deviceSettings\_TemperatureSensor\_categoryCalibration}

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Light.Calibrate?id=" + ID);
IF response.IsSuccess
    return("OK");
else
    return("Error");
END
```

**Pripojenie:** Packet Parser → HTTP • Hostname: `shellyplusrgbwpm-{MAC}.local`

Možné vylepšenia (13)

- Input State — Physical switch/button input state, available via /rpc/Input.GetStatus?id=0
- WiFi SSID — Already exposed as module-level service attribute, not as standalone device
- WiFi Signal Strength — Already exposed as module-level service attribute, not as standalone device
- IP Address — Already exposed as module-level service attribute, not as standalone device
- MAC Address — Already exposed as module-level service attribute, not as standalone device
- 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
- Firmware Update — Already implemented as module-level service action
- Reboot — Already implemented as module-level service action
- Night Mode — Night mode configuration with brightness limits and schedule, available in component GetConfig
- Transition Duration — Color/brightness transition time in ms, available as parameter in RGB.Set and RGBW.Set
- Minimum Brightness on Toggle — Minimum brightness percentage when toggling on, available in Light component config

## Parametre importu

Tieto hodnoty zadáte pri importe XML.

| Pýta sa v aplikácii | Predvolené    |
|---------------------|---------------|
| IP adresa           | `192.168.0.1` |

## Zdroje

- Shelly Gen2+/Gen3 RPC API Reference
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/) 2026-03-30
- Shelly Gen2+ Switch Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Switch/) 2026-03-30
- Shelly Gen2+ System (Sys) Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Sys/) 2026-03-30
- Shelly Gen2+ WiFi Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/WiFi/) 2026-03-30
- Shelly Gen2+ MQTT Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Mqtt/) 2026-03-30
- Home Assistant Shelly Integration
  
  [www.home-assistant.io](https://www.home-assistant.io/integrations/shelly/) 2026-03-30
- Shelly Plus RGBW PM Knowledge Base — specs, wiring, terminals
  
  [kb.shelly.cloud](https://kb.shelly.cloud/knowledge-base/shelly-plus-rgbw-pm) 2026-03-30
- Shelly Plus RGBW PM API Device Page — profiles, components
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/Devices/Gen2/ShellyPlusRGBWPM/) 2026-03-30
- Shelly Gen2+ Light Component API — light profile dimmers
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Light/) 2026-03-30
- Shelly Gen2+ RGB Component API — rgb profile color control
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/RGB/) 2026-03-30
- Shelly Gen2+ RGBW Component API — rgbw profile color+white control
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/RGBW/) 2026-03-30

## Súvisiaca dokumentácia

- [Integrácia Packet Parser](https://taphome.com/sk/compatibility/packet-parser-guide/)
- [Packet Parser (HTTP, TCP, UDP, FTP, MQTT)](https://taphome.com/sk/docs/integration/packet-parser/)
- [Funkcie Packet parsera](https://taphome.com/sk/docs/script/packet-parser/)
- [Parsovacie funkcie](https://taphome.com/sk/docs/script/parsing-functions/)

