Projection, Signage & Smart Home
Shelly Smart Home Control Software BETA
Controls Shelly smart home devices from within Fantago. Supports the full Shelly product range: switches, dimmers, RGB/RGBW LED controllers, roller shutters, and power monitoring devices.
Handlers run inside Fantago — the file is a plugin, not a standalone program. Start with the free 60-day trial.
How to connect Shelly Smart Home to Fantago
- Open the Fantago Dashboard and click Add Device.
- Pick the Shelly Smart Home handler from the device type list (internal id
shelly). - Enter the IP address of your Shelly Smart Home, then set protocol HTTP / WebSocket RPC and port
80. - Save and connect. Fantago starts polling the device and publishes its feedback variables, ready to use in panels, sequences and logic flows.
- Drag the actions below onto a panel button, a Stream Deck key, a schedule or a logic flow node.
| Protocol | HTTP / WebSocket RPC |
|---|---|
| Default port | 80 |
| Handler version | 1.0.0 (Beta) |
| Author | Fantago Bridge |
| Internal ID | shelly |
Description & Instructions
Generation auto-detection: the handler connects to the device IP and automatically identifies whether it is a Gen1 device (HTTP polling) or a Gen2/Gen3 device (WebSocket RPC with real-time push feedback). No manual configuration required.
Gen1 devices (Shelly 1, 2.5, Plug, RGBW2, EM…): controlled via HTTP REST, status polled at configurable interval (default 2000 ms).
Gen2/Gen3 devices (Shelly Plus, Pro, Mini series…): controlled via WebSocket RPC. The device pushes
NotifyStatus events
to Fantago in real time — variables are updated instantly on any physical or remote state change, with no polling overhead.Optional fields (Handler Params):
username/password— only if authentication is enabled on the Shelly devicepoll_interval— Gen1 only, polling interval in ms (default: 2000)
Supported Device Types & Actions
| Category | Actions |
|---|---|
| Switch / Relay | switch_on, switch_off, switch_toggle |
| Light / Dimmer | light_on, light_off, light_toggle, light_brightness, light_color_temp |
| RGB / LED Strip | rgb_on, rgb_off, rgb_toggle, rgb_set_color, rgb_adjust (hold-to-repeat) |
| Cover / Roller Shutter | cover_open, cover_close, cover_stop, cover_set_pos |
| Power Monitoring | reset_energy (Switch PM, PM1, EM, EM1) |
| System | connect, refresh, reboot |
Command Integration Guide
Replace <fantago> with your Fantago IP and <port> with the HTTP API port (default 3001). Examples use device name SHELLY_LAMP.
Switch / Relay
| Action | HTTP GET | TCP / UDP |
|---|---|---|
| Turn on relay 0 | /sendTo/SHELLY_LAMP?cmd=switch_on&id=0 | SHELLY_LAMP:switch_on&id=0 |
| Turn off relay 0 | /sendTo/SHELLY_LAMP?cmd=switch_off&id=0 | SHELLY_LAMP:switch_off&id=0 |
| Toggle relay 1 | /sendTo/SHELLY_LAMP?cmd=switch_toggle&id=1 | SHELLY_LAMP:switch_toggle&id=1 |
Light / Dimmer
| Action | HTTP GET | TCP / UDP |
|---|---|---|
| Turn on light | /sendTo/SHELLY_LAMP?cmd=light_on&id=0 | SHELLY_LAMP:light_on&id=0 |
| Set brightness 75% | /sendTo/SHELLY_LAMP?cmd=light_brightness&id=0&brightness=75 | SHELLY_LAMP:light_brightness&id=0&brightness=75 |
| Set color temp 3200 K | /sendTo/SHELLY_LAMP?cmd=light_color_temp&id=0&temp=3200 | SHELLY_LAMP:light_color_temp&id=0&temp=3200 |
RGB / LED Strip
| Action | HTTP GET | TCP / UDP |
|---|---|---|
| Set color (R/G/B/W + brightness) | /sendTo/SHELLY_LAMP?cmd=rgb_set_color&id=0&red=255&green=0&blue=0&white=0&gain=100 | SHELLY_LAMP:rgb_set_color&id=0&red=255&green=0&blue=0&white=0&gain=100 |
| Increase red by 10 | /sendTo/SHELLY_LAMP?cmd=rgb_adjust&id=0&channel=red&delta=10 | SHELLY_LAMP:rgb_adjust&id=0&channel=red&delta=10 |
| Decrease brightness by 5 | /sendTo/SHELLY_LAMP?cmd=rgb_adjust&id=0&channel=brightness&delta=-5 | SHELLY_LAMP:rgb_adjust&id=0&channel=brightness&delta=-5 |
Cover / Roller Shutter
| Action | HTTP GET | TCP / UDP |
|---|---|---|
| Open | /sendTo/SHELLY_LAMP?cmd=cover_open&id=0 | SHELLY_LAMP:cover_open&id=0 |
| Go to position 40% | /sendTo/SHELLY_LAMP?cmd=cover_set_pos&id=0&pos=40 | SHELLY_LAMP:cover_set_pos&id=0&pos=40 |
| Stop | /sendTo/SHELLY_LAMP?cmd=cover_stop&id=0 | SHELLY_LAMP:cover_stop&id=0 |
Power Monitoring & System
| Action | HTTP GET | TCP / UDP |
|---|---|---|
| Reset energy counter | /sendTo/SHELLY_LAMP?cmd=reset_energy&id=0 | SHELLY_LAMP:reset_energy&id=0 |
| Force status refresh | /sendTo/SHELLY_LAMP?cmd=refresh | SHELLY_LAMP:refresh |
| Reboot device | /sendTo/SHELLY_LAMP?cmd=reboot | SHELLY_LAMP:reboot |
Variables written to system panel (prefix = sanitized device name)
| Variable | Description |
|---|---|
DEVICE_connected | Connection state (true/false) |
DEVICE_gen | Detected generation (1, 2 or 3) |
DEVICE_model | Device model string |
| Switch / Relay — Shelly 1, 2.5, Plug S, Plus 1PM, Pro 4PM… | |
DEVICE_switch_0_output | Relay state (true / false) |
DEVICE_switch_0_apower | Active power in W |
DEVICE_switch_0_voltage / _current / _pf / _freq / _energy | Full PM data (Gen2) |
| Light / Dimmer — Shelly Dimmer, Bulb, Duo… | |
DEVICE_light_0_output | Light state (true / false) |
DEVICE_light_0_brightness | Brightness 0–100 |
DEVICE_light_0_ct | Color temperature in K (Gen2) or 0–100 (Gen1) |
| RGB / LED — Shelly RGBW2, Plus RGBW PM… | |
DEVICE_rgb_0_output | Output state (true / false) |
DEVICE_rgb_0_red / _green / _blue | Color channels 0–255 |
DEVICE_rgb_0_brightness | Master brightness 0–100 |
DEVICE_rgbw_0_white | White channel 0–255 (RGBW devices) |
| Cover / Roller — Shelly 2.5 roller mode, Plus 2PM… | |
DEVICE_cover_0_state | open / closed / opening / closing / stopped |
DEVICE_cover_0_pos | Current position 0–100 % |
| Power Meters — Shelly PM Mini, Pro PM, Pro EM-50 | |
DEVICE_pm1_0_apower / _voltage / _current / _pf / _freq / _energy | Full PM data |
| 3-phase Energy Meter — Shelly Pro 3EM | |
DEVICE_em_0_a_apower / _b_apower / _c_apower | Active power per phase in W |
DEVICE_em_0_total_apower | Total active power (all 3 phases) |
DEVICE_em_0_energy / _energy_returned | Total / returned energy in Wh (solar) |
| Sensors | |
DEVICE_input_0_state | Digital input (true / false) |
DEVICE_temperature_0_tc | Temperature in °C |
DEVICE_humidity_0_rh | Humidity in % |
Use channel index (0, 1, 2…) for multi-channel devices. The id parameter defaults to 0 if omitted.
Shelly Smart Home control — frequently asked questions
Does Fantago support Shelly Smart Home?
Yes. Fantago includes a ready-made Shelly Smart Home handler (version 1.0.0 (Beta)) that talks to the device over HTTP / WebSocket RPC, default port 80. It is bundled with every licence and with the 60-day free trial — there is no per-device fee.
What protocol does the Shelly Smart Home handler use?
HTTP / WebSocket RPC, default port 80. Fantago connects straight to the device over your production network, so no gateway, middleware or vendor software is needed in between.
Can I control Shelly Smart Home from a Stream Deck?
Yes. Every Shelly Smart Home action can be mapped to an Elgato Stream Deck key, to a button on a custom Fantago touch panel, to a timed schedule, or to a logic flow triggered by another device — including devices from a different manufacturer.
Can I modify the Shelly Smart Home handler?
Yes. The handler is a plain JavaScript file (shelly.js) that you can download from this page, edit and drop back into Fantago. You can also write your own handler from scratch — see the Developer Guide.
Control Shelly Smart Home from a single interface
Fantago drives Shelly Smart Home alongside 50+ other broadcast, lighting, audio and smart home devices — from custom touch panels, an Elgato Stream Deck, a schedule or a logic flow. One-time licence, no subscription, runs offline.