Shelly Pro 3EM

Three-phase power meter

A DIN-rail meter for residential and light-commercial monitoring. Read three-phase electrical measurements over the local network without a cloud service.

Shelly Pro 3EM
  • Modbus TCP

Three-phase power meter

Download Edge template

Compatibility

Compatible with EpiSensor Edge over Modbus TCP.

Shelly publishes the Modbus TCP register table and a worked voltage read. Edge can import the read-only map provided here; this exact hardware and firmware combination has not been tested on a Gateway.

Only Shelly Pro 3EM SPEM-003CEBEU (120 A), firmware 1.1.0 or later in triphase profile with em:0. This is a documentation-derived map, not a hardware-tested firmware certification. Do not use it for monophase, Gen1 3EM, Gen3 3EM, Pro EM or other Pro 3EM variants.

Connect it with

SPEM-003CEBEU in triphase profile on a protected LAN

  • Modbus
  • Edge
  • Platforms
Three-phase power meter
Interface
Gateway
Edge
Output
Pro 3EMShelly Pro 3EM
Protected EthernetSegmented LAN
ZGW-20 GatewayHosts Edge locally
EpiSensor EdgeEdge Modbus client
Customer platformMQTT · API · files
Modbus TCP
Protected Ethernet
Runs locally
Optional onward data
Use the meter’s local IP address and TCP port 502. Confirm Modbus is enabled and keep access limited to the required monitoring hosts. The customer-platform output is optional; Edge remains the local system of record.

Specifications

Choose this map for instantaneous local monitoring. For billing, energy settlement or revenue metering, assess certification and counter behaviour separately. A Modbus map establishes neither.14

Exact hardware
SPEM-003CEBEU, 120 A model1
Transport
Modbus TCP, port 5023
Profile
triphase, one em:0 instance2
Map scope
20 instantaneous float32 points; no accumulated energy4
Mounting
DIN rail1

Interface

This register map is for the SPEM-003CEBEU. other profiles and models has its own interface and is not covered here.

Communication settings

Interface
120 A CT inputs, Modbus TCP, triphase profile
Read with
FC04 (input registers)
Word order
Low word first on every value
Addresses
Zero-based PDU addresses, as sent on the bus
Route into Edge
Import the 20-point map after confirming firmware 1.1.0 or later and em:0.

From Shelly Pro 3EM: model and specifications1.

Register map

Download
PointAddressHexFormatScaleUnit
Voltage phase A 1020 0x03FC FLOAT32 ×1 V
Current phase A 1022 0x03FE FLOAT32 ×1 A
Active power phase A 1024 0x0400 FLOAT32 ×1 W
Apparent power phase A 1026 0x0402 FLOAT32 ×1 VA
Power factor phase A 1028 0x0404 FLOAT32 ×1 -
Frequency phase A 1033 0x0409 FLOAT32 ×1 Hz
Voltage phase B 1040 0x0410 FLOAT32 ×1 V
Current phase B 1042 0x0412 FLOAT32 ×1 A
Active power phase B 1044 0x0414 FLOAT32 ×1 W
Apparent power phase B 1046 0x0416 FLOAT32 ×1 VA
Power factor phase B 1048 0x0418 FLOAT32 ×1 -
Frequency phase B 1053 0x041D FLOAT32 ×1 Hz
Voltage phase C 1060 0x0424 FLOAT32 ×1 V
Current phase C 1062 0x0426 FLOAT32 ×1 A
Active power phase C 1064 0x0428 FLOAT32 ×1 W
Apparent power phase C 1066 0x042A FLOAT32 ×1 VA
Power factor phase C 1068 0x042C FLOAT32 ×1 -
Frequency phase C 1073 0x0431 FLOAT32 ×1 Hz
Total active power 1013 0x03F5 FLOAT32 ×1 W
Total apparent power 1015 0x03F7 FLOAT32 ×1 VA

Download the SPEM-003CEBEU register map as CSV

Assessment

SPEM-003CEBEU 120 A model in triphase profile; documentary assessment, no physical commissioning claim.

InteroperabilitySupported with conditions
The documented TCP interface and exact offsets support a read-only integration; a live verification remains necessary.34
AccuracySupported with conditions
Useful instantaneous phase measurements. This map omits accumulated energy and must not be treated as a billing or protection instrument.14
SecuritySupported with conditions
Restrict access to the local monitoring hosts. This map uses ordinary Modbus TCP, not an authenticated or encrypted transport.3
ReliabilitySupported with conditions
Published 100–260 V AC supply, non-volatile measurement history and local clock continuity support permanent monitoring. Confirm actual recovery and fresh readings after a site interruption.1
RuggednessSupported with conditions
A DIN-rail device with published environmental limits; install within the manufacturer enclosure and ambient requirements.1
ScalabilityLimited
The local API exposes model, firmware and profile identity, allowing a repeatable per-meter map. The inspected Modbus documentation gives no concurrent-client limit or guaranteed polling capacity; verify these before sizing a larger estate.23
LifecycleSupported with conditions
A public API and firmware changelog support version tracking. Profile changes are a commissioning boundary.25

Edge template

This JSON file supplies the register map. Applying it to an existing meter replaces its sensor list while retaining the site connection, unit ID and enable state.

ModelConnectionPointsVersionUpdatedDownload
SPEM-003CEBEU 120 A CT inputs, Modbus TCP, triphase profile 20 1.0.0 Download

Downloads need a signed-in account with Edge download access.

Use the template in Edge

  1. Import the JSON file

    On the target Gateway in Edge, open Settings, then Device Templates. Choose Import and select the downloaded JSON file. Confirm that the model and template name match your device.

  2. Load the map for your meter

    In the Modbus device wizard, choose the site connection and unit ID, then use Load Template to select the imported map. For an existing device, apply the template to that exact model. Its connection, unit ID and enable state are retained.

  3. Test a reading

    Use Test in the wizard and compare a known reading with the meter display. Check its unit, sign and scale, then confirm that timestamps keep advancing. These starter maps are read-only and leave exports off until you configure them.

Setup

Read phase A voltage

On a meter that is already commissioned, compare one read with the local EM.GetStatus response for em:0. This checks the decode without changing the meter.

Function
FC04: input registers
Shelly table address
31020
PDU start
1020 / 0x03FC, zero-based
Length
2 registers
Decode
IEEE-754 float32, CDAB: low word first, big-endian bytes
Engineering unit
V; multiplier 1, offset 0
Independent example
Words 0000 4366 decode to 230 V; reversing the word order is essential

Acceptance: Compare against a_voltage in a fresh EM.GetStatus?id=0 response. A simulated 230 V vector verifies arithmetic only; retain an actual raw reply, firmware identity, profile and timestamp before treating the installed measurement as verified.

  1. Only Shelly Pro 3EM SPEM-003CEBEU (120 A), firmware 1.1.0 or later in triphase profile with em:0.

    This is a documentation-derived map, not a hardware-tested firmware certification. Do not use it for monophase, Gen1 3EM, Gen3 3EM, Pro EM or other Pro 3EM variants.

  2. Record model, firmware version and profile from Shelly.GetDeviceInfo.

    Firmware 1.1.0 introduced separate triphase and monophase profiles; this map requires em:0, not three em1 components.

  3. Follow the manufacturer installation instructions.

    Match each CT to its voltage phase and direction. This map cannot diagnose incorrect wiring or make an installation safe.

  4. Confirm the local IP address, TCP 502 reachability, configured client unit ID and Modbus.GetStatus enabled state.

    The template contains no site connection settings.

  5. Use FC04 with zero-based protocol offsets: Shelly table 31020 is PDU 1020, not 1019 or 31020.

    Its official example uses mixed order: big-endian bytes within each register, low word first (word_swap true).

  6. Import the JSON into Edge’s device templates, then load the map into the intended Modbus device.

    Loading replaces that device’s sensor list; review the target before applying.

  7. Compare per-phase voltage and signed power with fresh local RPC readings, then observe multiple polls.

    A successful TCP connection alone does not validate readings.

  8. All points are read-only instantaneous values.

    Energy counters, relay/add-on commands, resets, calibration and neutral current are deliberately excluded. Export starts disabled. Confirm a live voltage and signed power against EM.GetStatus before accepting the map.

Common questions

Is this the same map as a Shelly 3EM or Pro EM?
No. This map is only for the 120 A Pro 3EM identified here. Similar product names do not establish matching Modbus registers.12
Why not put 31020 into Edge?
Shelly’s own example reads phase A voltage at zero-based input offset 1020. The 3xxxx reference denotes the input-register table. Use FC04 and 1020 in Edge, without subtracting another one.36
Can I use this for solar import and export?
The signed active-power readings can help compare direction against the installed CTs. This starter map excludes energy counters, so it does not provide accumulated import or export energy. Confirm direction against the meter before using the readings.4