Schneider Electric PM1000 / PM1200 Modbus register map
PowerLogic PM1000 series panel power meters; the PM1200 has the RS-485 Modbus RTU port
- Official
- 57 registers
- Modbus RTU
- Revision 3 · 2026-10-24
Official: Written from the manufacturer's documentation, but not tested on a device yet. Check the map against the manufacturer's documentation before you write to a live device. Tested it? Report a test.
Communication
- Protocol
- Modbus RTU
- Unit ID
- 1
- Serial
- 9600 8E1 · 9600 baud, 8 data bits, even parity, 1 stop bit
- Byte / word order
- CDAB · bytes big-endian, words low first (word swap)
- Addresses
- 1-based · wire address = address − 1
Connection values are defaults: the device may be configured differently.
Map
- Registers
- 57 holding registers
- Groups
- 7
- Revision
- 3 · 2026-10-24
- Added
- ()
- File
- maps/schneider-electric/pm1000-pm1200.mbmap.json · 9 KB · history
- SHA-256
- 2625305ba5745a60a1292867512df637e7ed31652490cfb0189261589b7e81c2
- Manufacturer
- se.com
Sources and notes
- PowerLogic PM1000 Series Power Meters User manual · version PLSED309039EN, 2010-08 chapter 6, tables 6-2 and 6-4 to 6-13; linked from Schneider FAQ FA212915
Source: PowerLogic PM1000 Series Power Meters User manual, PLSED309039EN, 08/2010, chapter 6
- Only the PM1200 communicates: the PM1000 has no RS-485 port.
- Function 03 only. Registers are numbered as in the manual (3901 is holding register 43901), 1-based, so 3901 is sent as 3900.
- Values are 32-bit floats, low word first ('little endian float' in the manual), in base units (V, A, W, VA, Wh); the run counters are 32-bit integers.
- This map uses the individual parameter addresses (3861-3999), which can be read one value at a time. The manual's block addresses (3001-3199, 3721-3775) hold the same data but must be read as whole blocks of 20 registers (FAQ FA212915), so they are left out.
- Factory settings: address 1, 9600 bps, even parity, 8 data bits, 1 stop bit. Poll about once a second at 9600 bps.
- Written from the manufacturer's manual; not tested on a device.
| Area | Address | Name | Type | Access | Unit | Scale | Description |
|---|---|---|---|---|---|---|---|
| HR | 3861 | float32 CDAB | R | % | THD option only | ||
| HR | 3863 | float32 CDAB | R | % | THD option only | ||
| HR | 3865 | float32 CDAB | R | % | THD option only | ||
| HR | 3867 | float32 CDAB | R | % | THD option only; -999.0 when the secondary current is out of range or f > 65 Hz | ||
| HR | 3869 | float32 CDAB | R | % | THD option only | ||
| HR | 3871 | float32 CDAB | R | % | THD option only | ||
| HR | 3881 | float32 CDAB | R | % | |||
| HR | 3883 | float32 CDAB | R | % | |||
| HR | 3885 | float32 CDAB | R | % | |||
| HR | 3887 | float32 CDAB | R | % | |||
| HR | 3889 | float32 CDAB | R | % | |||
| HR | 3891 | float32 CDAB | R | % | |||
| HR | 3901 | float32 CDAB | R | VA | |||
| HR | 3903 | float32 CDAB | R | W | |||
| HR | 3905 | float32 CDAB | R | var | |||
| HR | 3907 | float32 CDAB | R | ||||
| HR | 3909 | float32 CDAB | R | V | |||
| HR | 3911 | float32 CDAB | R | V | |||
| HR | 3913 | float32 CDAB | R | A | |||
| HR | 3915 | float32 CDAB | R | Hz | |||
| HR | 3917 | float32 CDAB | R | VA | |||
| HR | 3919 | float32 CDAB | R | W | |||
| HR | 3921 | float32 CDAB | R | var | |||
| HR | 3923 | float32 CDAB | R | ||||
| HR | 3925 | float32 CDAB | R | V | |||
| HR | 3927 | float32 CDAB | R | V | |||
| HR | 3929 | float32 CDAB | R | A | |||
| HR | 3931 | float32 CDAB | R | VA | |||
| HR | 3933 | float32 CDAB | R | W | |||
| HR | 3935 | float32 CDAB | R | var | |||
| HR | 3937 | float32 CDAB | R | ||||
| HR | 3939 | float32 CDAB | R | V | |||
| HR | 3941 | float32 CDAB | R | V | |||
| HR | 3943 | float32 CDAB | R | A | |||
| HR | 3945 | float32 CDAB | R | VA | |||
| HR | 3947 | float32 CDAB | R | W | |||
| HR | 3949 | float32 CDAB | R | var | |||
| HR | 3951 | float32 CDAB | R | ||||
| HR | 3953 | float32 CDAB | R | V | |||
| HR | 3955 | float32 CDAB | R | V | |||
| HR | 3957 | float32 CDAB | R | A | |||
| HR | 3959 | float32 CDAB | R | VAh | |||
| HR | 3961 | float32 CDAB | R | Wh | |||
| HR | 3963 | float32 CDAB | R | varh | |||
| HR | 3965 | float32 CDAB | R | varh | |||
| HR | 3967 | float32 CDAB | R | VAh | |||
| HR | 3969 | float32 CDAB | R | Wh | |||
| HR | 3971 | float32 CDAB | R | varh | |||
| HR | 3973 | float32 CDAB | R | varh | |||
| HR | 3975 | float32 CDAB | R | In the unit of the demand parameter selected on the meter (W or VA) | |||
| HR | 3977 | float32 CDAB | R | ||||
| HR | 3979 | float32 CDAB | R | ||||
| HR | 3981 | uint32 CDAB | R | Occurrence time of the maximum demand | |||
| HR | 3993 | uint32 CDAB | R | Run hours counter | |||
| HR | 3995 | uint32 CDAB | R | s | |||
| HR | 3997 | uint32 CDAB | R | s | |||
| HR | 3999 | uint32 CDAB | R | Number of supply interruptions |
No registers match
Try part of the name, an address (decimal or 0x hex) or clear the filters.
Help improve this map
- I tested it on a deviceReport whether it worked, even if you did not write the map.
- Suggest a correctionEdit the file on GitHub; it opens a pull request.
- Report a problemA wrong address, type, scale or byte order.
- Read the formatWhat each key of the file means (SPEC.md).