
The Shelly Pro 3 is a DIN rail mountable 3-channel relay module with potential-free contacts. Each of the three independent outputs can switch up to 16 A (total 48 A across all channels), making it suitable for controlling lighting circuits, heating elements, or three-phase loads where each phase is switched separately. TapHome communicates with the device over HTTP using the Gen2 JSON-RPC 2.0 API on the local network — no cloud connection is required.
Unlike the Shelly Pro 3EM, which is an energy meter (monitoring only), the Pro 3 is a pure relay switching device with no power metering capability. The device connects via WiFi, Ethernet (RJ45), or Bluetooth and is designed for professional installation in electrical distribution boards.
Configuration
The Shelly Pro 3 connects over WiFi or Ethernet. During TapHome template import, enter the device’s IP address (default placeholder 192.168.0.1).
Authentication must be disabled on the Shelly device for TapHome integration. TapHome does not support HTTP Digest Auth used by Gen2 devices. Open the Shelly web UI (
http://{device-ip}) → Settings → Authentication and ensure it is turned off.
The LAN cable must only be plugged in or unplugged when the device is powered off. Hot-plugging the Ethernet cable may cause issues.
If ECO mode is enabled on the Shelly device, it may cause communication timeouts due to the fast poll intervals used by the template (2.5–3 seconds). Disable ECO mode in the Shelly web UI if you experience intermittent connectivity issues.
Device capabilities
Relay control
The template exposes three independent switch devices, one for each relay channel. Each relay state is read from the /rpc/Switch.GetStatus?id=N response (output field, boolean) and controlled via /rpc/Switch.Set?id=N&on=true or on=false, where N is 0, 1, or 2.
All three channels operate independently — they can be on different circuits, different AC phases, or even mixed AC/DC loads. The relay contacts are potential-free (dry contacts), so each output can switch a completely separate circuit from the power supply feeding the device itself.
Service diagnostics
The template exposes module-level service attributes for device monitoring:
- WiFi — connected SSID name
- IP address — current station IP
- Signal strength — WiFi RSSI in dB
- MAC — device MAC address
The module read script also checks for available firmware updates and pending restart requirements, surfacing these as warnings in the TapHome interface.
Service actions
Two service actions are available at the module level:
- Update firmware — triggers a firmware update to the latest stable release via
/rpc/Shelly.Update - Reboot — triggers a device reboot via
/rpc/Shelly.Reboot
Additional capabilities
The Shelly Pro 3 also exposes physical switch/button input states (S1, S2, S3) via the Input component, internal device temperature, device uptime, RAM usage, device time, and Ethernet status via the RPC API. An auto-off timer is available through the toggle_after parameter on the Switch.Set command. These capabilities can be added in a future template update.
Troubleshooting
Device not responding
- Verify the Shelly is connected to WiFi or Ethernet and has a valid IP address
- Try using the mDNS hostname (
ShellyPro3-AABBCCDDEE.local) instead of the IP address — the IP may have changed after a DHCP renewal - Open
http://{device-ip}/rpc/Shelly.GetDeviceInfoin a browser — if it responds with JSON, the device is reachable - Check that TapHome Core and Shelly are on the same network / VLAN
- Confirm authentication is disabled on the Shelly device
Only some channels responding
- Verify each channel is correctly addressed (id=0 for Output 1, id=1 for Output 2, id=2 for Output 3)
- Check the relay LED indicators on the device front panel — red LED means the corresponding relay is closed (ON)
- Test the unresponsive channel manually via browser:
http://{device-ip}/rpc/Switch.Set?id=N&on=true
Inductive load issues
For inductive loads (fans, transformers, LED drivers), an RC snubber (0.1 uF / 100 Ohm / 1/2 W / 600 VAC) is recommended on the relay output to protect against voltage spikes and extend relay lifetime.
Gen2 Shelly devices support up to 6 concurrent HTTP connections. Avoid polling from too many systems simultaneously (TapHome, Home Assistant, custom scripts) to prevent connection exhaustion.