WB-MAP3E measurement registers
General information
Detailed accuracy specifications: WB-MAP measured parameters, errors and web-interface names.
Template notation
The following notation is used in tables describing measured quantities.
For energy (AP, AN, RP, RN, S, NP, NN), the first letter (A, R, S, N) is the energy type and the second is the direction:
- A — active;
- R — reactive;
- S — apparent, calculated as URMS * IRMS;
- N — non-active.
Direction:
- P — forward (positive);
- N — reverse (negative).
In the register tables, “Total” means the parameter is calculated across all three phases of the three-phase channel. If the table differs from the device template, use the corresponding register value in the template. Current templates are available here.
Notes on register table names
Register tables correspond to the meter templates.
Check the meter firmware version with the command
echo -e `modbus_client --debug -mrtu -pnone -s2 /dev/ttyRS485-1 -a$mbusaddr -t0x03 -r250 -c 16 | grep Data | sed -e 's/0x00/\x/g' -e 's/Data://' -e 's/s//g'`| xxd -r -p && echo ''
Here, $mbusaddr is the meter Modbus address.
Byte order, wide registers and value calculation
Some measured values exceed the 16-bit width of a Modbus register. These occupy consecutive registers: two for 32-bit values and four for 64-bit values. Some third-party software, such as ioBroker, calls signed 32-bit little-endian “signed 32-bit big-endian word swap”. If calculated results do not match the software readings, change its data type setting.
The tables use u32 and u64 for unsigned values, and s32 and s64 for signed values. The address shown is the first consecutive register.
The order of registers when decoding may be forward (big-endian) or reversed (little-endian). The order of the two bytes within each 16-bit register is always big-endian, as required by the standard.
Example: read four registers, 0x2200–0x2203:
| Register number |
0x2200 | 0x2201 | 0x2202 | 0x2203 |
|---|---|---|---|---|
| Register contents | 0xb4df | 0x0dff | 0x0000 | 0x0000 |
Look up the register table:
| Address | Register parameters | Description | Values | FW | |||
|---|---|---|---|---|---|---|---|
| Dec | Hex | Type | Access | Format | |||
| 8704 | 0x2200 | Input | RO | u64 little endian |
Ch 2 Total AP energy Total forward active energy for channel 2 |
x10-5, kWh | 2.1 |
Little-endian register order means least significant register first. Therefore, combine the registers into the hexadecimal number 0x0000 0000 0dff b4df, equal to 234861791 in decimal. To calculate energy, multiply by the factor in the Values column (10-5 = 0.00001), giving 2348.61791 kWh.
In other words, to obtain the final number:
- 0x2200
- least significant part — leave the value unchanged: 0xb4dfhex = 46303dec
- 0x2201
- multiply the value by 216 : 0x0dffhex = 3583dec, 3583 * 65536 = 234815488
- 0x2202
- multiply the value by 232 : 0 * 4294967296 = 0
- 0x2203
- multiply the value by 248 : 0 * 281474976710656 = 0
Add the results: 46303 + 234815488 + 0 + 0 = 234861791. Multiply the sum by 0.00001 (move the decimal point five places left).
Modbus register table
Check the device firmware version: register tables differ between versions. This page describes firmware 2.x registers; firmware 1.0.1 register description.
| RO / RW | Read only / Read/Write |
| Shown in bold | Default register value |
| xN | Multiply the register value by this factor to obtain the value in the stated units.
If omitted, assume 1 |
| ⚡ | This register supports data transmission using events in Fast Modbus. |
| FW | Firmware version that introduced the register. Blank means it has always been available. |
| Error: | Value on error |
| Grey cell | Service register: purpose, format and contents may change in later firmware |
| Address | Register parameters | Description | Values | FW | |||
|---|---|---|---|---|---|---|---|
| Dec | Hex | Type | Access | Format | |||
| 5136 | 0x1410 | Input ⚡ | RO | u16 big endian |
Urms L1 L1 phase voltage (RMS) ⚡ A Fast Modbus event is generated when the value changes by more than 2 V since the previous event |
x0.01, V Error: 0xFFFF |
2.1 |
| 5136 | 0x1410 | Input ⚡ | RO | u32 big endian |
Urms L1 L1 phase voltage (RMS), two consecutive registers, higher resolution ⚡ A Fast Modbus event is generated when the value changes by more than 2 V since the previous event |
x1.52588*10-7, V Error: 0xFFFFFFFF |
2.1 |
| 6144 | 0x1800 | Input | RO | s32 little endian |
Upeak L1 inst Current L1 voltage peak measured when the registers are polled Before firmware 2.8.0, the value is signed (it may be negative if the peak occurs in the negative half-cycle) From 2.8.0, the absolute value is used (always positive) |
x0.01, V Error: 0x7FFFFFFF |
2.1 |
| 6160 | 0x1810 | Input | RO | s32 little endian |
Upeak L1 Aggregated L1 voltage peak over the peak aggregation period Before firmware 2.8.0, the value is signed (it may be negative if the peak occurs in the negative half-cycle) From 2.8.0, the absolute value is used (always positive) |
x0.01, V Error: 0x7FFFFFFF |
2.1 |
| 5138 | 0x1412 | Input ⚡ | RO | u16 big endian |
Urms L2 L2 phase voltage (RMS) ⚡ A Fast Modbus event is generated when the value changes by more than 2 V since the previous event |
x0.01, V Error: 0xFFFF |
2.1 |
| 5138 | 0x1412 | Input ⚡ | RO | u32 big endian |
Urms L2 L2 phase voltage (RMS), two consecutive registers, higher resolution ⚡ A Fast Modbus event is generated when the value changes by more than 2 V since the previous event |
x1.52588*10-7, V Error: 0xFFFFFFFF |
2.1 |
| 6146 | 0x1802 | Input | RO | s32 little endian |
Upeak L2 inst Current L2 voltage peak measured when the registers are polled Before firmware 2.8.0, the value is signed (it may be negative if the peak occurs in the negative half-cycle) From 2.8.0, the absolute value is used (always positive) |
x0.01, V Error: 0x7FFFFFFF |
2.1 |
| 6162 | 0x1812 | Input | RO | s32 little endian |
Upeak L2 Aggregated L2 voltage peak over the peak aggregation period Before firmware 2.8.0, the value is signed (it may be negative if the peak occurs in the negative half-cycle) From 2.8.0, the absolute value is used (always positive) |
x0.01, V Error: 0x7FFFFFFF |
2.1 |
| 5140 | 0x1414 | Input ⚡ | RO | u16 big endian |
Urms L3 L3 phase voltage (RMS) ⚡ A Fast Modbus event is generated when the value changes by more than 2 V since the previous event |
x0.01, V Error: 0xFFFF |
2.1 |
| 5140 | 0x1414 | Input ⚡ | RO | u32 big endian |
Urms L3 L3 phase voltage (RMS), two consecutive registers, higher resolution ⚡ A Fast Modbus event is generated when the value changes by more than 2 V since the previous event |
x1.52588*10-7, V Error: 0xFFFFFFFF |
2.1 |
| 6148 | 0x1804 | Input | RO | s32 little endian |
Upeak L3 inst Current L3 voltage peak measured when the registers are polled Before firmware 2.8.0, the value is signed (it may be negative if the peak occurs in the negative half-cycle) From 2.8.0, the absolute value is used (always positive) |
x0.01, V Error: 0x7FFFFFFF |
2.1 |
| 6164 | 0x1814 | Input | RO | s32 little endian |
Upeak L3 Aggregated L3 voltage peak over the peak aggregation period Before firmware 2.8.0, the value is signed (it may be negative if the peak occurs in the negative half-cycle) From 2.8.0, the absolute value is used (always positive) |
x0.01, V Error: 0x7FFFFFFF |
2.1 |
| 5148 | 0x141C | Input | RO | u16 big endian |
U L1-L2 Line-to-line voltage L1–L2 |
x0.01, V Error: 0xFFFF |
2.5.0 |
| 5149 | 0x141D | Input | RO | u16 big endian |
U L2-L3 Line-to-line voltage L2–L3 |
x0.01, V Error: 0xFFFF |
2.5.0 |
| 5150 | 0x141E | Input | RO | u16 big endian |
U L3-L1 Line-to-line voltage L3–L1 |
x0.01, V Error: 0xFFFF |
2.5.0 |
| 4344 | 0x10F8 | Input | RO | u16 big endian |
Frequency Frequency |
x0.01, Hz | 2.1 |
| 4349 | 0x10FD | Input | RO | s16 big endian |
Voltage angle L1 Voltage phase angle (always 0; L1 is the reference phase) |
x0.1, ° Error: 0xFFF |
2.1 |
| 4350 | 0x10FE | Input | RO | s16 big endian |
Voltage angle L2 Voltage phase angle between L1 and L2 |
x0.1, ° Error: 0xFFF |
2.1 |
| 4351 | 0x10FF | Input | RO | s16 big endian |
Voltage angle L3 Voltage phase angle between L1 and L3 |
x0.1, ° Error: 0xFFF |
2.1 |
| 5142 | 0x1416 | Input | RO | u16 big endian |
Irms L1 L1 phase current (RMS) |
x0.016, A | 2.1 |
| 5142 | 0x1416 | Input | RO | u32 big endian |
Irms L1 L1 phase current (RMS), two consecutive registers, higher resolution |
x2.44141*10-7, A | 2.1 |
| 4361 | 0x1109 | Input | RO | u16 |
Irms L1 x100 L1 phase current (RMS) x100 |
x0.01, A | 2.9.0 |
| 6152 | 0x1808 | Input | RO | s32 little endian |
Ipeak L1 inst Current L1 current peak measured when the registers are polled Before firmware 2.8.0, the value is signed (it may be negative if the peak occurs in the negative half-cycle) From 2.8.0, the absolute value is used (always positive) |
x0.016, A | 2.1 |
| 6168 | 0x1818 | Input | RO | s32 little endian |
Ipeak L1 Aggregated L1 current peak over the peak aggregation period Before firmware 2.8.0, the value is signed (it may be negative if the peak occurs in the negative half-cycle) From 2.8.0, the absolute value is used (always positive) |
x0.016, A | 2.1 |
| 4866 | 0x1302 | Input | RO | s32 big endian |
P L1 L1 active power |
x0.00512, W | 2.1 |
| 4373 | 0x1115 | Input | RO | s16 |
Px0.1 L1 L1 active power x0.1 |
x10, W | 2.9.0 |
| 4874 | 0x130A | Input | RO | s32 big endian |
Q L1 L1 reactive power |
x0.00512, var | 2.1 |
| 4882 | 0x1312 | Input | RO | s32 big endian |
S L1 L1 apparent power |
x0.00512, VA | 2.1 |
| 5506 | 0x1582 | Input | RO | s32 big endian |
N L1 L1 non-active power |
x0.00512, var | 2.1 |
| 4285 | 0x10BD | Input | RO | s16 big endian |
PF L1 L1 power factor |
x0.001 | 2.1 |
| 4612 | 0x1204 | Input | RO | u64 little endian |
AP energy L1 L1 forward active energy |
x10-5, kWh | 2.1 |
| 6660 | 0x1A04 | Input | RO | u64 big endian |
AP energy L1 L1 forward active energy |
x10-5, kWh | 2.9.0 |
| 4628 | 0x1214 | Input | RO | u64 little endian |
AN energy L1 L1 reverse active energy |
x10-5, kWh | 2.1 |
| 6676 | 0x1A14 | Input | RO | u64 big endian |
AN energy L1 L1 reverse active energy |
x10-5, kWh | 2.9.0 |
| 4644 | 0x1224 | Input | RO | u64 little endian |
RP energy L1 L1 forward reactive energy |
x10-5, kvarh | 2.1 |
| 6692 | 0x1A24 | Input | RO | u64 big endian |
RP energy L1 L1 forward reactive energy |
x10-5, kvarh | 2.9.0 |
| 4660 | 0x1234 | Input | RO | u64 little endian |
RN energy L1 L1 reverse reactive energy |
x10-5, kvarh | 2.1 |
| 6708 | 0x1A34 | Input | RO | u64 big endian |
RN energy L1 L1 reverse reactive energy |
x10-5, kvarh | 2.9.0 |
| 5380 | 0x1504 | Input | RO | u64 little endian |
NP energy L1 L1 forward non-active energy |
x1.422222*10-9, kvarh | 2.1 |
| 5396 | 0x1514 | Input | RO | u64 little endian |
NN energy L1 L1 reverse non-active energy |
x1.422222*10-9, kvarh | 2.1 |
| 5144 | 0x1418 | Input | RO | u16 big endian |
Irms L2 L2 phase current (RMS) |
x0.016, A | 2.1 |
| 5144 | 0x1418 | Input | RO | u32 big endian |
Irms L2 L2 phase current (RMS), two consecutive registers, higher resolution |
x2.44141*10-7, A | 2.1 |
| 4362 | 0x110A | Input | RO | u16 |
Irms L2 x100 L2 phase current (RMS) x100 |
x0.01, A | 2.9.0 |
| 6154 | 0x180A | Input | RO | s32 little endian |
Ipeak L2 inst Current L2 current peak measured when the registers are polled Before firmware 2.8.0, the value is signed (it may be negative if the peak occurs in the negative half-cycle) From 2.8.0, the absolute value is used (always positive) |
x0.016, A | 2.1 |
| 6170 | 0x181A | Input | RO | s32 little endian |
Ipeak L2 Aggregated L2 current peak over the peak aggregation period Before firmware 2.8.0, the value is signed (it may be negative if the peak occurs in the negative half-cycle) From 2.8.0, the absolute value is used (always positive) |
x0.016, A | 2.1 |
| 4868 | 0x1304 | Input | RO | s32 big endian |
P L2 L2 active power |
x0.00512, W | 2.1 |
| 4374 | 0x1116 | Input | RO | s16 |
Px0.1 L2 L2 active power x0.1 |
x10, W | 2.9.0 |
| 4876 | 0x130C | Input | RO | s32 big endian |
Q L2 L2 reactive power |
x0.00512, var | 2.1 |
| 4884 | 0x1314 | Input | RO | s32 big endian |
S L2 L2 apparent power |
x0.00512, VA | 2.1 |
| 5508 | 0x1584 | Input | RO | s32 big endian |
N L2 L2 non-active power |
x0.00512, var | 2.1 |
| 4286 | 0x10BE | Input | RO | s16 big endian |
PF L2 L2 power factor |
x0.001 | 2.1 |
| 4616 | 0x1208 | Input | RO | u64 little endian |
AP energy L2 L2 forward active energy |
x10-5, kWh | 2.1 |
| 6664 | 0x1A08 | Input | RO | u64 big endian |
AP energy L2 L2 forward active energy |
x10-5, kWh | 2.9.0 |
| 4632 | 0x1218 | Input | RO | u64 little endian |
AN energy L2 L2 reverse active energy |
x10-5, kWh | 2.1 |
| 6680 | 0x1A18 | Input | RO | u64 big endian |
AN energy L2 L2 reverse active energy |
x10-5, kWh | 2.9.0 |
| 4648 | 0x1228 | Input | RO | u64 little endian |
RP energy L2 L2 forward reactive energy |
x10-5, kvarh | 2.1 |
| 6696 | 0x1A28 | Input | RO | u64 big endian |
RP energy L2 L2 forward reactive energy |
x10-5, kvarh | 2.9.0 |
| 4664 | 0x1238 | Input | RO | u64 little endian |
RN energy L2 L2 reverse reactive energy |
x10-5, kvarh | 2.1 |
| 6712 | 0x1A38 | Input | RO | u64 big endian |
RN energy L2 L2 reverse reactive energy |
x10-5, kvarh | 2.9.0 |
| 5384 | 0x1508 | Input | RO | u64 little endian |
NP energy L2 L2 forward non-active energy |
x1.422222*10-9, kvarh | 2.1 |
| 5400 | 0x1518 | Input | RO | u64 little endian |
NN energy L2 L2 reverse non-active energy |
x1.422222*10-9, kvarh | 2.1 |
| 5146 | 0x141A | Input | RO | u16 big endian |
Irms L3 L3 phase current (RMS) |
x0.016, A | 2.1 |
| 5146 | 0x141A | Input | RO | u32 big endian |
Irms L3 L3 phase current (RMS), two consecutive registers, higher resolution |
x2.44141*10-7, A | 2.1 |
| 4363 | 0x110B | Input | RO | u16 |
Irms L3 x100 L3 phase current (RMS) x100 |
x0.01, A | 2.9.0 |
| 6156 | 0x180C | Input | RO | s32 little endian |
Ipeak L3 inst Current L3 current peak measured when the registers are polled Before firmware 2.8.0, the value is signed (it may be negative if the peak occurs in the negative half-cycle) From 2.8.0, the absolute value is used (always positive) |
x0.016, A | 2.1 |
| 6172 | 0x181C | Input | RO | s32 little endian |
Ipeak L3 Aggregated L3 current peak over the peak aggregation period Before firmware 2.8.0, the value is signed (it may be negative if the peak occurs in the negative half-cycle) From 2.8.0, the absolute value is used (always positive) |
x0.016, A | 2.1 |
| 4870 | 0x1306 | Input | RO | s32 big endian |
P L3 L3 active power |
x0.00512, W | 2.1 |
| 4375 | 0x1117 | Input | RO | s16 |
Px0.1 L3 L3 active power x0.1 |
x10, W | 2.9.0 |
| 4878 | 0x130E | Input | RO | s32 big endian |
Q L3 L3 reactive power |
x0.00512, var | 2.1 |
| 4886 | 0x1316 | Input | RO | s32 big endian |
S L3 L3 apparent power |
x0.00512, VA | 2.1 |
| 5510 | 0x1586 | Input | RO | s32 big endian |
N L3 L3 non-active power |
x0.00512, var | 2.1 |
| 4287 | 0x10BF | Input | RO | s16 big endian |
PF L3 L3 power factor |
x0.001 | 2.1 |
| 4620 | 0x120C | Input | RO | u64 little endian |
AP energy L3 L3 forward active energy |
x10-5, kWh | 2.1 |
| 6668 | 0x1A0C | Input | RO | u64 big endian |
AP energy L3 L3 forward active energy |
x10-5, kWh | 2.9.0 |
| 4636 | 0x121C | Input | RO | u64 little endian |
AN energy L3 L3 reverse active energy |
x10-5, kWh | 2.1 |
| 6684 | 0x1A1C | Input | RO | u64 big endian |
AN energy L3 L3 reverse active energy |
x10-5, kWh | 2.9.0 |
| 4652 | 0x122C | Input | RO | u64 little endian |
RP energy L3 L3 forward reactive energy |
x10-5, kvarh | 2.1 |
| 6700 | 0x1A2C | Input | RO | u64 big endian |
RP energy L3 L3 forward reactive energy |
x10-5, kvarh | 2.9.0 |
| 4668 | 0x123C | Input | RO | u64 little endian |
RN energy L3 L3 reverse reactive energy |
x10-5, kvarh | 2.1 |
| 6716 | 0x1A3C | Input | RO | u64 big endian |
RN energy L3 L3 reverse reactive energy |
x10-5, kvarh | 2.9.0 |
| 5388 | 0x150C | Input | RO | u64 little endian |
NP energy L3 L3 forward non-active energy |
x1.422222*10-9, kvarh | 2.1 |
| 5404 | 0x151C | Input | RO | u64 little endian |
NN energy L3 L3 reverse non-active energy |
x1.422222*10-9, kvarh | 2.1 |
| 4864 | 0x1300 | Input | RO | s32 big endian |
Total P Total active power |
x0.00512, W | 2.1 |
| 4372 | 0x1114 | Input | RO | s16 |
Total Px0.1 Total active power x0.1 |
x10, W | 2.9.0 |
| 4872 | 0x1308 | Input | RO | s32 big endian |
Total Q Total reactive power |
x0.00512, var | 2.1 |
| 4880 | 0x1310 | Input | RO | s32 big endian |
Total S Total apparent power |
x0.00512, VA | 2.1 |
| 5504 | 0x1580 | Input | RO | s32 big endian |
Total N Total non-active power |
x0.00512, var | 2.1 |
| 4284 | 0x10BC | Input | RO | s16 big endian |
Total PF Total power factor |
x0.001 | 2.1 |
| 4608 | 0x1200 | Input | RO | u64 little endian |
Total AP energy Total forward active energy |
x10-5, kWh | 2.1 |
| 6656 | 0x1A00 | Input | RO | u64 big endian |
Total AP energy Total forward active energy |
x10-5, kWh | 2.9.0 |
| 4624 | 0x1210 | Input | RO | u64 little endian |
Total AN energy Total reverse active energy |
x10-5, kWh | 2.1 |
| 6672 | 0x1A10 | Input | RO | u64 big endian |
Total AN energy Total reverse active energy |
x10-5, kWh | 2.9.0 |
| 4640 | 0x1220 | Input | RO | u64 little endian |
Total RP energy Total forward reactive energy |
x10-5, kvarh | 2.1 |
| 6688 | 0x1A20 | Input | RO | u64 big endian |
Total RP energy Total forward reactive energy |
x10-5, kvarh | 2.9.0 |
| 4656 | 0x1230 | Input | RO | u64 little endian |
Total RN energy Total reverse reactive energy |
x10-5, kvarh | 2.1 |
| 6704 | 0x1A30 | Input | RO | u64 big endian |
Total RN energy Total reverse reactive energy |
x10-5, kvarh | 2.9.0 |
| 5376 | 0x1500 | Input | RO | u64 little endian |
Total NP energy Total forward non-active energy |
x1.422222*10-9, kvarh | 2.1 |
| 5392 | 0x1510 | Input | RO | u64 little endian |
Total NN energy Total reverse non-active energy |
x1.422222*10-9, kvarh | 2.1 |
| 4345 | 0x10F9 | Input | RO | s16 big endian |
Phase angle L1 Voltage-to-current phase angle for L1 |
x0.1, ° | 2.1 |
| 4346 | 0x10FA | Input | RO | s16 big endian |
Phase angle L2 Voltage-to-current phase angle for L2 |
x0.1, ° | 2.1 |
| 4347 | 0x10FB | Input | RO | s16 big endian |
Phase angle L3 Voltage-to-current phase angle for L3 |
x0.1, ° | 2.1 |