SATEC PM130 PLUS power meter
Register map(s) for this device, each at the trust rung it earned. Addresses are 0-based
as on the wire. Word order and scaling are confirmed at the hardware-verified rung and at no rung below it.
interop-verified
Read + decoded cleanly over a real network vs an independent third-party Modbus test server (transport and framing; reads are remapped into the server's register window, so the map's own addresses are NOT exercised). Does NOT prove word order/scaling against the actual device.
| point | address (0-based) | type | scale | unit |
| v1_voltage | 13952 | F32LE | 1 | |
| v2_voltage | 13954 | F32LE | 1 | |
| v3_voltage | 13956 | F32LE | 1 | |
| i1_current | 13958 | F32LE | 1 | |
| i2_current | 13960 | F32LE | 1 | |
| i3_current | 13962 | F32LE | 1 | |
| active_power_l1 | 13964 | F32LE | 1 | |
| active_power_l2 | 13966 | F32LE | 1 | |
| active_power_l3 | 13968 | F32LE | 1 | |
| reactive_power_l1 | 13970 | F32LE | 1 | |
| reactive_power_l2 | 13972 | F32LE | 1 | |
| reactive_power_l3 | 13974 | F32LE | 1 | |
| apparent_power_l1 | 13976 | F32LE | 1 | |
| apparent_power_l2 | 13978 | F32LE | 1 | |
| apparent_power_l3 | 13980 | F32LE | 1 | |
| power_factor_l1 | 13982 | F32LE | 1 | |
| power_factor_l2 | 13984 | F32LE | 1 | |
| power_factor_l3 | 13986 | F32LE | 1 | |
| total_active_power | 14336 | F32LE | 1 | |
| total_reactive_power | 14338 | F32LE | 1 | |
| total_apparent_power | 14340 | F32LE | 1 | |
| total_power_factor | 14342 | F32LE | 1 | |
| frequency | 14468 | F32LE | 1 | |
| active_energy_import | 14720 | F32LE | 1 | |
| active_energy_export | 14722 | F32LE | 1 | |
| reactive_energy_import | 14728 | F32LE | 1 | |
| reactive_energy_export | 14730 | F32LE | 1 | |
| apparent_energy_total | 14736 | F32LE | 1 | |
link settings as documented (unverified): RTU/ASCII/TCP; baud 300/600/1200/2400/4800/9600/19200/38400/57600/115200; FC 03,04,06,16,08; Supports RTU, SATEC ASCII, and TCP notification client. Parity can be even or none.
⚠ When writing the setup registers, it is recommended to write all the registers at once using a single request, or to clear (zero) the setup before writing into separate registers. — Starkest reads only; we never write a control register.
bench facts as documented (unverified)
| broadcast | not supported |
| protocol notes | Broadcast mode using address 0 is not supported. |
| model register | 46082 |
| serial register | 46080 |
| firmware register | 46100 |
| doc revision | BG0427 Rev. A4 |
| firmware applicability | F/W versions 11.1.6 or higher |
field reports — community-sourced, unverified (checked 2026-06-11)
- The SATEC PM130 PLUS transmits 32-bit long integer data (such as energy accumulation registers starting at 14720) in Little-Endian word order (low-order word first in the lower register, high-order word second in the higher register). This causes truncation or incorrect readings in SCADA systems (like GE Cimplicity) or PLCs that expect standard Big-Endian word order (high-order word first) unless word swapping is explicitly configured. [source]
- The SATEC Modbus protocol specification explicitly documents that the low-order word always starts at an even Modbus address, requiring manual conversion (e.g., 32-bit value = high_order_register * 65536 + low_order_register) if the Modbus driver does not natively support swapped 32-bit long integer formats. [source]
- confirmed: Baud rates [300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200] — confirmed by SATEC PM130 PLUS Modbus Communications Protocol Reference Guide (BG0427)
- confirmed: Framing ['RTU', 'ASCII', 'TCP'] — confirmed by SATEC PM130 PLUS Modbus Communications Protocol Reference Guide (BG0427)
- confirmed: Function codes [3, 4, 6, 16, 8] — confirmed by SATEC PM130 PLUS Modbus Communications Protocol Reference Guide (BG0427)
- confirmed: Parity 'E' (even or none) — confirmed by SATEC PM130 PLUS Modbus Communications Protocol Reference Guide (BG0427)
- confirmed: Control warning regarding writing setup registers at once or clearing them first — confirmed by SATEC PM130 PLUS Modbus Communications Protocol Reference Guide (BG0427)
- confirmed: Document revision 'BG0427 Rev. A4' — confirmed by SATEC PM130 PLUS Modbus Communications Protocol Reference Guide (BG0427 Rev. A4)
- confirmed: Firmware applicability 'F/W versions 11.1.6 or higher' — confirmed by SATEC PM130 PLUS Modbus Communications Protocol Reference Guide (BG0427 Rev. A4) revision history
- confirmed: Identification registers (firmware_register: 46100, model_register: 46082, serial_register: 46080) — confirmed by SATEC PM130 PLUS Modbus Communications Protocol Reference Guide (BG0427)
The trust ladder
Each rung states what it proved and what it did not. Gray until proven; green is earned by hardware only.
- generated — A prompt produced it. Unproven — anyone can regenerate this.
- structure-verified — Decode path is structurally sound (addresses, widths, finite values). Does NOT prove word order or scaling.
- interop-verified — Read + decoded cleanly over a real network vs an independent third-party Modbus test server (transport and framing; reads are remapped into the server's register window, so the map's own addresses are NOT exercised). Does NOT prove word order/scaling against the actual device.
- simulator-verified — Decoded correctly against a protocol emulator seeded with known-true values — catches word-order/scaling errors vs the emulator, not the physical device.
- hardware-verified x1 — Matched a real device with operator-attested readings as ground truth — the only rung that confirms word order + scaling on the wire.