
The Shelly RGBW2 is a Wi-Fi RGBW LED strip controller with four PWM outputs (12/24 V DC). It supports two mutually exclusive operating modes — Color and White — each requiring its own TapHome template. TapHome communicates with the device over HTTP on the local network; no cloud connection is required.
In Color mode, the four outputs drive an RGBW LED strip as a single color light with hue, saturation, brightness, and an optional white (CCT) channel. In White mode, the four outputs act as independent dimmers, each controlling a separate white LED strip or zone.
You must choose the operating mode in the Shelly web interface (or via the API) before importing the corresponding template. Each template validates the current mode on every poll and shows an error if the device is set to the wrong mode.
Configuration
Both templates connect over Wi-Fi. During TapHome template import, enter the device’s IP address (default placeholder 192.168.0.1) and an optional transition time in milliseconds (default 300).
The transition time parameter controls how quickly the light fades between brightness levels. It applies to all write commands (on/off, brightness, color changes) and affects the debounce window — the template ignores polled values for transitionTime + 500 ms after each write to prevent stale reads during transitions.
Color mode template
Color light
The template exposes the RGBW strip as a single HSB color light with two sub-modes:
- RGB color — hue and saturation control the strip color. The template converts between the Shelly API’s RGB values (red, green, blue 0-255) and TapHome’s HSB model. Brightness is controlled via the
gainparameter (0-100). - White (CCT) — when correlated color temperature is set, the template switches to white-channel control. CCT range is 3000-6500 K. Brightness is controlled via the
whiteparameter (0-100).
The light state is read from the /status response (lights[0]) and controlled via the /light/0 endpoint. Turning on sends turn=on with the current color or white values; turning off sends turn=off. All write commands include the transition time parameter.
Power metering (Color)
The Color template includes one energy meter that reads from meters[0]:
- Real-time power —
meters[0].powerin watts, converted to kW - Total consumption —
meters[0].totalin watt-minutes, converted to kWh
If the light is on but power reads zero, the template displays a warning suggesting to configure the device model in the Shelly app settings.
White mode template
Four independent dimmers
The White template exposes four independent dimmer channels, one per PWM output:
| Channel | Output | Endpoint | Poll interval |
|---|---|---|---|
| Ch1 | R (Red) | /light/0 | 2.5 s |
| Ch2 | G (Green) | /light/1 | 2.5 s |
| Ch3 | B (Blue) | /light/2 | 2.5 s |
| Ch4 | W (White) | /light/3 | 2.5 s |
Each dimmer reads lights[N].ison and lights[N].brightness (0-100, normalized to 0-1) from the /status response. Write commands use /light/N?turn=on|off&brightness=VALUE. All channels use the same transition time and debounce logic.
Power metering (White)
Each channel has its own energy meter, reading from meters[0] through meters[3]. The first channel polls at 2.5 seconds; channels 2-4 poll at 15-second intervals. Each meter provides real-time power (W to kW) and cumulative energy (watt-minutes to kWh).
Service diagnostics
Both templates expose 10 service attributes for device monitoring:
- Network — IP address, MAC address (formatted with colons), WiFi signal strength (dB)
- Connectivity — cloud enabled/connected, MQTT connected
- Device info — device time, uptime (formatted as days/hours/minutes), RAM usage
- Firmware — firmware update available
Service actions
Both templates share three service actions:
- Enable cloud — enables or disables Shelly Cloud connectivity
- Reboot — triggers a device reboot
- Set mode — the Color template includes “Set mode Color” (
/settings?mode=color) and the White template includes “Set mode White” (/settings?mode=white). These actions switch the device’s operating mode via the API.
Additional capabilities
The Shelly RGBW2 also exposes light effects (Color mode, effect index 0-3), physical input state, internal temperature, overtemperature flag, and power protection settings in its API. These capabilities can be added in a future template update.
Troubleshooting
Device not responding
- Verify the Shelly is connected to Wi-Fi and has a valid IP address
- Try using the mDNS hostname (
shellyrgbw2-AABBCCDDEE.local) instead of the IP address — the IP may have changed after a DHCP renewal - Open
http://{device-ip}/shellyin a browser — if it responds, the device is reachable - Check that TapHome CCU and Shelly are on the same network / VLAN
“Mode White/Color is not supported” error
This error means the device is set to the wrong operating mode for the imported template. To resolve:
- Open the Shelly web interface at
http://{device-ip} - Switch the operating mode to match the template (Color or White)
- Alternatively, use the “Set mode Color” or “Set mode White” service action from the other template to switch modes via the API, then reimport the correct template
Power readings show zero
- Confirm LEDs are connected to the Shelly RGBW2 outputs
- Open the Shelly app or web interface and verify the device model is configured under Settings -> Device Model
- Check that the light is turned on — the meter only reads when current flows through the outputs
- Poll
/statusmanually and verifymeters[0].powerreturns a non-zero value
Color light not changing
- Verify the device is in Color mode (check
/statusresponse —modeshould be"color") - Ensure the light is turned on before changing hue or saturation
- If both
gainandwhiteare non-zero, the template automatically resets them to zero and turns off the light — this prevents undefined behavior where RGB and white channels compete
Gen1 Shelly devices support only 2 concurrent HTTP connections. If TapHome and another system (e.g., Home Assistant) poll the same device simultaneously, communication may become unreliable. Use a poll interval of 10-30 seconds.