Sorry, your browser does not support JavaScript!

IAMMETER Series Three-Phase Meter Modbus/RTU Protocol

IAMMETER Series Three-Phase Meter Modbus/RTU Protocol

All IAMMETER meters, except for the WEM3050T which lacks an RS485 interface, support the Modbus/RTU protocol. The protocol details are as follows:

Register Map

No. Definition Register Address R/W Data Type and Calculation Description
1 Voltage of Phase A 0048H Read Unsigned, Value = DATA/100, Unit: V
2 Current of Phase A 0049H Read Unsigned, Value = DATA/100, Unit: A
3 Active Power of Phase A 004AH Read Unsigned, Value = DATA, Unit: W
4 Active Energy (Forward) 004BH 004CH Read 4 bytes, Unsigned, Value = DATA/800, Unit: kWh
5 Power Factor of Phase A 004DH Read Unsigned, Value = DATA/1000
6 Active Energy (Reverse) 004EH 004FH Read 4 bytes, Unsigned, Value = DATA/800, Unit: kWh
7 Power Direction Indicator 0050H Read High byte 0 for forward, 1 for reverse
8 Voltage of Phase B 0051H Read Unsigned, Value = DATA/100, Unit: V
9 Current of Phase B 0052H Read Unsigned, Value = DATA/100, Unit: A
10 Active Power of Phase B 0053H Read Unsigned, Value = DATA, Unit: W
11 Active Energy (Forward) 0054H 0055H Read 4 bytes, Unsigned, Value = DATA/800, Unit: kWh
12 Power Factor of Phase B 0056H Read Unsigned, Value = DATA/1000
13 Active Energy (Reverse) 0057H 0058H Read 4 bytes, Unsigned, Value = DATA/800, Unit: kWh
14 Power Direction Indicator 0059H Read High byte 0 for forward, 1 for reverse
15 Voltage of Phase C 005AH Read Unsigned, Value = DATA/100, Unit: V
16 Current of Phase C 005BH Read Unsigned, Value = DATA/100, Unit: A
17 Active Power of Phase C 005CH Read Unsigned, Value = DATA, Unit: W
18 Active Energy (Forward) 005DH 005EH Read 4 bytes, Unsigned, Value = DATA/800, Unit: kWh
19 Power Factor of Phase C 005FH Read Unsigned, Value = DATA/1000
20 Active Energy (Reverse) 0060H 0061H Read 4 bytes, Unsigned, Value = DATA/800, Unit: kWh
21 Power Direction Indicator 0062H Read High byte 0 for forward, 1 for reverse
23 Total Active Energy (Forward) 0063H 0064H Read 4 bytes, Unsigned, Value = DATA/800, Unit: kWh
24 Frequency 0065H Read Unsigned, Value = DATA/100, Unit: Hz
25 Total Active Energy (Reverse) 0066H 0067H Read Unsigned, Value = DATA/800, Unit: kWh
26 Active Energy of Phase A (Forward) 0068H 0069H Read Unsigned, Value = DATA/1000, Unit: kWh
27 Active Energy of Phase A (Reverse) 006AH 006BH Read Unsigned, Value = DATA/1000, Unit: kWh
28 Active Energy of Phase B (Forward) 006CH 006DH Read Unsigned, Value = DATA/1000, Unit: kWh
29 Active Energy of Phase B (Reverse) 006EH 006FH Read Unsigned, Value = DATA/1000, Unit: kWh
30 Active Energy of Phase C (Forward) 0070H 0071H Read Unsigned, Value = DATA/1000, Unit: kWh
31 Active Energy of Phase C (Reverse) 0072H 0073H Read Unsigned, Value = DATA/1000, Unit: kWh
32 Total Active Energy (Forward) 0074H 0075H Read Unsigned, Value = DATA/1000, Unit: kWh
33 Total Active Energy (Reverse) 0076H 0077H Read Unsigned, Value = DATA/1000, Unit: kWh
34 Total Power 0078H 0079H Read Signed, Value = DATA, Unit: W
35 Active Power of Phase A 007AH 007BH Read Signed, Value = DATA, Unit: W
36 Active Power of Phase B 007CH 007DH Read Signed, Value = DATA, Unit: W
37 Active Power of Phase C 007EH 007FH Read Signed, Value = DATA, Unit: W
38 Reactive Power of Phase A 0080H 0081H Read Signed, Value = DATA, Unit: var
39 Reactive Power of Phase B 0082H 0083H Read Signed, Value = DATA, Unit: var
40 Reactive Power of Phase C 0084H 0085H Read Signed, Value = DATA, Unit: var
41 Forward Reactive Energy (Inductive) of Phase A 0086H 0087H Read Unsigned, Value = DATA/1000, Unit: kvarh
42 Reverse Reactive Energy (Capacitive) of Phase A 0088H 0089H Read Unsigned, Value = DATA/1000, Unit: kvarh
43 Forward Reactive Energy (Inductive) of Phase B 008AH 008BH Read Unsigned, Value = DATA/1000, Unit: kvarh
44 Reverse Reactive Energy (Capacitive) of Phase B 008CH 008DH Read Unsigned, Value = DATA/1000, Unit: kvarh
45 Forward Reactive Energy (Inductive) of Phase C 008EH 008FH Read Unsigned, Value = DATA/1000, Unit: kvarh
46 Reverse Reactive Energy (Capacitive) of Phase C 0090H 0091H Read Unsigned, Value = DATA/1000, Unit: kvarh

Notes:

  1. This protocol applies to all IAMMETER meters except for WEM3050T. For single-phase meters, use the data for Phase A in the list.
  2. Regarding power direction registers (7, 14, 21): In earlier versions, power was unsigned (registers 3, 10, 17), so additional registers were introduced to store the power direction. If you use the signed power registers (35, 36, 37), you do not need to separately consider the values in the power direction registers.

Usage Examples

Reading Values

For example: If the host wants to read data from 2 slave registers with address 01 starting from 0048H,

The host sends: 01 03 00 48 00 02 CRC

  • Address: 01
  • Function code: 03
  • Starting address: 00 48
  • Data length: 00 02
  • CRC code: CRC

Slave response: 01 03 04 12 45 56 68 CRC

  • Address: 01
  • Function code: 03
  • Bytes returned: 04
  • Register Data 1: 12 45
  • Register Data 2:

56 68

  • CRC Code: CRC

Reset Kwh Value

Modbus/RTU commands also provide instructions for resetting the Kwh value, which is the only method to reset the Kwh value on IAMMETER meters.

  • 01 10 00 0C 00 02 04 00 00 00 00 F3 FA (reset both forward and reverse kwh in 3080)
  • 01 10 00 63 00 02 04 00 00 00 00 B5 92 (reset the forward kwh in 3080T)
  • 01 10 00 66 00 02 04 00 00 00 00 75 AD (reset the reverse kwh in 3080T)

Set/Read Slave ID

The default slave ID of IAMMETER meters is 1.

Slave ID 0x00 can be used as a broadcast address (the WiFi module also uses 0x00 to communicate with the metering module).

If you need to set other slave IDs (e.g., for use in a PLC system), you can refer to the following commands:

Read Slave ID

Command: 00 03 00 04 00 01 C4 1A (00: Broadcast address)

Reply: 01 03 02 01 06 39 D6 (01: slave ID, 06: Baudrate 9600)

Set Slave ID

Command: 00 10 00 04 00 01 02 05 06 29 16 00

  • 00: Broadcast address
  • 10: Fixed (set command)
  • 00 04: Fixed (start address)
  • 00 01: Fixed (length of register)
  • 02: Fixed (length of byte)
  • 05: New address
  • 06: Fixed
  • 29 16: CRC16

Reply: 01 10 00 04 00 01 40 08

Recommended Methods

Although we have listed the Modbus/RTU protocol, we do not recommend using Modbus/RTU to retrieve meter data due to the following reasons:

  1. It requires complex RS485 wiring.
  2. It cannot leverage the advantages of Wi-Fi data transmission.

Compared to the traditional Modbus/RTU, we recommend using Modbus/TCP or REST API modes to directly retrieve data through the Wi-Fi network.

Modbus/TCP

Modbus/TCP Manual for IAMMETER Products

Modbus TCP is a common protocol used in industrial systems such as ICS, DCS, SCADA. After the latest firmware update, IAMMETER energy meters now support the Modbus TCP protocol.

Modbus TCP setting in modbus polling

Modbus TCP Register map in the wifi energy meter

REST API: /api/monitorjson

IAMMETER products also provide a REST API interface. You can directly access the API address with a simple HTTP GET request to obtain all real-time measurement data (updated every second). For more details, see the following link:

https://www.iammeter.com/newsshow/blog-fw-features#apimonitorjson-return-the-measurement-result

API: monitorjson

The definition of the JSON data is as follows:

JSON Data Definition of IAMMETER's Product

Reference Documents

How to utilize the WEM3050T, excluding IAMMETER-cloud

Which type of electrical meter best fits your needs?

What capabilities does IAMMETER offer?

Top