
The Shelly 2.5 is a compact dual-channel Wi-Fi relay with built-in power metering on both channels. It fits behind a standard wall switch and can control two independent circuits, each rated up to 10 A (2300 W at 230 V), with a combined maximum of 20 A. The device supports two operating modes — relay (two independent switches) and roller shutter (coordinated motor control) — but the TapHome template implements relay mode only. TapHome communicates with the device over HTTP on the local network — no cloud connection is required.
The template provides two relay switches and two energy meters (one per channel), plus a service action to switch between relay and roller mode.
Configuration
The Shelly 2.5 connects over Wi-Fi. During TapHome template import, enter the device’s IP address (default placeholder 192.168.0.1).
The current operating mode is exposed as a module-level service attribute (“Mode”) and can be changed via the “Mode” service action. Switching between relay and roller mode requires a device reboot to take effect.
Device capabilities
Relay control
The template exposes two independent relay channels. Each relay state is read from its respective /relay/ endpoint (ison field) and controlled via turn=on or turn=off.
- Channel 1 — reads and controls
/relay/0 - Channel 2 — reads and controls
/relay/1
Each relay has three service attributes:
- Overpower — whether an overpower condition has been detected on the channel
- Overtemperature — whether the device has exceeded its safe operating temperature
- Power Meter — measurement validity (OK or Fault)
Power metering
Each channel has a dedicated energy meter that reads two values from its /meter/ endpoint:
- Real-time power —
powerreported in watts, converted to kW by the template - Total consumption —
totalreported in watt-minutes, converted to kWh by the template
Each energy meter exposes an “Overpower” service attribute showing the overpower threshold value (in watts, divided by 1000).
The meters are read-only — they update automatically with every poll cycle (15-second interval).
Known issue — channel 1 energy reading is 10x too high. The template divides
totalby 6000 for channel 1 instead of 60000 (which channel 2 uses correctly). This means the cumulative energy value for channel 1 will be approximately 10 times higher than the actual consumption. This is a bug in the template’s conversion formula.
Additional capabilities
The Shelly 2.5 natively supports full roller shutter control (open/close/stop with 0-100% position after calibration), rolling one-minute power averages per channel, physical switch input states, internal device temperature, WiFi signal strength, and per-channel auto-off timers. The device can also store up to four favorite roller positions. These capabilities can be added in a future template update.
Compared to the Shelly 1PM template, the Shelly 2.5 template does not expose device diagnostics such as hostname, MAC address, uptime, RAM usage, cloud/MQTT status, firmware update availability, or internal temperature. It also lacks the power protection (max power limit) service action and the reboot action.
Troubleshooting
Device not responding
- Verify the Shelly is connected to Wi-Fi and has a valid IP address
- Try using the mDNS hostname (
shellyswitch25-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
Power readings show zero
- Confirm the load is connected through the Shelly relay (not bypassed)
- Check that the relay is turned on — the meter only reads when current flows through the relay
- Poll
/meter/0or/meter/1manually and verifypowerreturns a non-zero value
Channel 1 energy total seems incorrect
The template divides channel 1 total by 6000 instead of the correct 60000 (which channel 2 uses). As a result, the cumulative energy value for channel 1 is 10x higher than actual. There is currently no workaround within the template — the conversion factor is embedded in the polling script.
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. The relay endpoints poll every 2.5 seconds and the meter endpoints every 15 seconds.