
The Shelly Pro 3EM is a professional DIN-rail three-phase energy meter designed for use with external current transformers. It is available in three variants — the Pro 3EM (120A CTs), Pro 3EM-400 (400A CTs), and Pro 3EM-3CT63 (integrated 63A CTs). The device connects to the local network over Wi-Fi or Ethernet (RJ45) and exposes real-time measurements via the Gen2+ HTTP RPC API. TapHome polls the device over HTTP on port 80 — no cloud connection is required.
The template provides eleven devices organized into bidirectional energy metering: per-phase current sensors (L1, L2, L3), per-phase From Grid and To Grid energy meters, and total From Grid and To Grid energy meters. The From Grid devices track energy consumed from the grid, while the To Grid devices track energy fed back (e.g., from solar panels), with the demand value inverted to show feed-in as a positive number.
Hardware connection
The Shelly Pro 3EM mounts on a standard DIN rail (94 x 19 x 69 mm). It requires four voltage inputs (three phase conductors + neutral) via screw terminals and four external CT inputs (three phase + neutral). The device is powered between any phase and neutral (100-260 V AC, 50/60 Hz).
Key wiring considerations:
- Voltage inputs: LA, LB, LC (one per phase) + N (neutral)
- CT inputs: Three phase CTs + one neutral CT, connected to the respective CT input jacks
- Ethernet: One RJ45 connector for LAN connection (disconnect power before plugging/unplugging the LAN cable)
- Conductor cross section: 0.5-2.5 mm² (20-14 AWG), stripped length 6-7 mm, max torque 0.4 Nm
External protection should be rated at 16 A max with characteristic B or C and a 6 kA minimum interrupting capacity. The operating voltage range is 100-260 V per phase.
Configuration
The Shelly Pro 3EM connects over Wi-Fi or Ethernet. During TapHome template import, enter the device’s IP address (default placeholder 192.168.0.1).
Authentication
TapHome does not support HTTP Digest Authentication. Make sure authentication is disabled on the Shelly device before adding it to TapHome. This can be configured in the Shelly web UI under Settings → Authentication.
CT type selection
After connecting the current transformers, configure the CT type via the Shelly web UI or by calling EM.SetConfig with the appropriate ct_type value. Use EM.GetCTTypes to list supported types (typically 120A and 400A). If the CT type is not set, the device reports a ct_type_not_set error and measurements will not be available.
Phase-to-phase calibration
The Pro 3EM supports channel-to-channel calibration to improve measurement accuracy between phases. Calibration requires a minimum load of 500 W per channel and takes approximately 5 seconds. Use EM.PhaseToPhaseCalib to calibrate and EM.PhaseToPhaseCalibReset to revert to factory defaults.
ECO mode
If ECO mode is enabled on the Shelly device, it may cause communication timeouts due to the 3-second module poll interval used by TapHome. Disable ECO mode for reliable operation.
Device capabilities
Per-phase current monitoring
Three current sensor devices (L1 Current, L2 Current, L3 Current) report the instantaneous current in Amps for each phase, read directly from EM.GetStatus fields a_current, b_current, and c_current. These are simple sensor values with no unit conversion.
Per-phase bidirectional energy metering
Each phase has two energy meter devices — From Grid and To Grid:
- L1/L2/L3 From Grid — active power consumed from the grid (W, converted to kW) and cumulative energy consumed (Wh, converted to kWh). Each From Grid device also exposes four service attributes: Power Factor, Current [A], Voltage [V], and Total Returned Energy [kWh].
- L1/L2/L3 To Grid — active power fed to the grid (W, divided by -1000 to show feed-in as positive kW) and cumulative returned energy (Wh, converted to kWh). The To Grid devices have no service attributes.
The service attributes on From Grid devices provide a complete per-phase picture: real-time current and voltage, power factor for power quality assessment, and a returned energy counter for tracking cumulative feed-in alongside the From Grid consumption counter.
Total bidirectional energy metering
Two aggregate devices summarize all three phases:
- Total From Grid — combined 3-phase active power (kW) and total cumulative energy consumed from the grid (kWh)
- Total To Grid — combined 3-phase returned power (kW, inverted) and total cumulative energy fed to the grid (kWh)
All devices use a 3-second poll interval matching the module read cycle.
Additional capabilities
The Shelly Pro 3EM also natively exposes apparent power per phase and total, neutral current measurement (unique to the Pro model — not available on the 3EM Gen3), grid frequency per phase, total current across all phases, and module diagnostics (WiFi SSID, IP address, signal strength, MAC address). Firmware update and reboot actions are also available via the RPC API. Phase sequence error detection and up to 60 days of 1-minute resolution data logging with CSV/JSON export are supported natively. These capabilities can be added in a future template update.
Troubleshooting
Device not responding
- Verify the Shelly is connected to Wi-Fi or LAN and has a valid IP address
- Try using the mDNS hostname (
ShellyPro3EM-XXXXXXXXXXXX.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
ct_type_not_set error
If the EM or EMData component reports a ct_type_not_set error, the current transformer type has not been configured. Set the CT type via the Shelly web UI or by calling EM.SetConfig with the appropriate ct_type value. Use EM.GetCTTypes to list supported types.
Phase sequence error
If the phase_sequence error appears in EM.GetStatus, the phases are connected in reverse order (A-C-B instead of A-B-C). Either rewire the phases in the correct sequence or enable monitor_phase_sequence in the EM configuration to suppress the error if the reversed order is intentional.
Negative or zero values on To Grid devices
The To Grid devices use an inverted conversion (division by -1000) to represent grid feed-in as a positive number. If there is no feed-in (the system is only consuming), the To Grid demand value will show as zero or negative. This is expected behavior — the From Grid device tracks consumption, while To Grid tracks export.
Gen2+/Gen3 Shelly devices support up to 6 concurrent HTTP connections. Each polling system (TapHome, Home Assistant, etc.) consumes connections. Avoid running too many integrations on the same device simultaneously.