Siemens SENTRON PAC3200 Modbus register map
Panel-mounted three-phase power monitoring device for low-voltage networks. It measures voltages, currents, power, power factor, frequency, harmonic distortion and tariff-based energy counters, and has a built-in Ethernet port.
- Protocol
- Modbus TCP (built-in Ethernet); Modbus RTU only with the optional RS485 expansion module
- Defaults
- Modbus TCP uses server port 502. The device ships set to the SEAbus TCP protocol and must be switched to Modbus TCP in the communication settings (p. 38).
- Addresses in the manual
- 0-based protocol addresses, as sent on the wire
- 32 and 64-bit values
- Not stated in the manual
- Registers listed
- 86
- Checked against
- A5E01168664B-04, 02/2008 edition label as printed
Address base. The manual lists an offset per value (the first voltage is offset 1) and does not describe the wire encoding (p. 40). Siemens' S7-1200 application example (Entry ID 40614428, p. 26) passes 40001 plus the offset as the S7 MB_CLIENT address, for example 40001 + 65 = 40066 for total active power. In the S7 convention 40001 is holding register 0, so the offset is taken as the zero-based protocol address. Neither document states this wire encoding directly. Address 1 in the manual is address 1 on the wire.
Word order. The manual does not state the word or byte order of 32-bit and 64-bit values. Float values use 2 registers, double values 4 registers, and all values must be read or written starting at their own first register (p. 40).
Modbus Poll and the Modbus protocol itself count from 0. The "Wire address" column is the number to type into Modbus Poll.
Downloads
The register table has every column on this page. The blocks file imports into Modbus Poll. The template JSON holds the same blocks plus unit, scale and access for scripts.
Registers
| Manual | Wire | Register | Type | Regs | Unit | Scale | Access | Area |
|---|---|---|---|---|---|---|---|---|
| 1 | 1 | Voltage phase A to neutralVoltage_L1N |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 3 | 3 | Voltage phase B to neutralVoltage_L2N |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 5 | 5 | Voltage phase C to neutralVoltage_L3N |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 7 | 7 | Voltage phase A to BVoltage_L12 |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 9 | 9 | Voltage phase B to CVoltage_L23 |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 11 | 11 | Voltage phase C to AVoltage_L31 |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 13 | 13 | Current phase ACurrent_L1 |
float32 | 2 | A | 1 | R | Holding (FC03) |
| 15 | 15 | Current phase BCurrent_L2 |
float32 | 2 | A | 1 | R | Holding (FC03) |
| 17 | 17 | Current phase CCurrent_L3 |
float32 | 2 | A | 1 | R | Holding (FC03) |
| 19 | 19 | Apparent power phase AApparentPower_L1 |
float32 | 2 | VA | 1 | R | Holding (FC03) |
| 21 | 21 | Apparent power phase BApparentPower_L2 |
float32 | 2 | VA | 1 | R | Holding (FC03) |
| 23 | 23 | Apparent power phase CApparentPower_L3 |
float32 | 2 | VA | 1 | R | Holding (FC03) |
| 25 | 25 | Active power phase AActivePower_L1 |
float32 | 2 | W | 1 | R | Holding (FC03) |
| 27 | 27 | Active power phase BActivePower_L2 |
float32 | 2 | W | 1 | R | Holding (FC03) |
| 29 | 29 | Active power phase CActivePower_L3 |
float32 | 2 | W | 1 | R | Holding (FC03) |
| 31 | 31 | Reactive power phase AReactivePower_L1 |
float32 | 2 | var | 1 | R | Holding (FC03) |
| 33 | 33 | Reactive power phase BReactivePower_L2 |
float32 | 2 | var | 1 | R | Holding (FC03) |
| 35 | 35 | Reactive power phase CReactivePower_L3 |
float32 | 2 | var | 1 | R | Holding (FC03) |
| 37 | 37 | Power factor phase APowerFactor_L1 · Range 0 to 1 as printed. |
float32 | 2 | 1 | R | Holding (FC03) | |
| 39 | 39 | Power factor phase BPowerFactor_L2 · Range 0 to 1 as printed. |
float32 | 2 | 1 | R | Holding (FC03) | |
| 41 | 41 | Power factor phase CPowerFactor_L3 · Range 0 to 1 as printed. |
float32 | 2 | 1 | R | Holding (FC03) | |
| 43 | 43 | Voltage THD phase ATHD_Voltage_L1 |
float32 | 2 | % | 1 | R | Holding (FC03) |
| 45 | 45 | Voltage THD phase BTHD_Voltage_L2 |
float32 | 2 | % | 1 | R | Holding (FC03) |
| 47 | 47 | Voltage THD phase CTHD_Voltage_L3 |
float32 | 2 | % | 1 | R | Holding (FC03) |
| 49 | 49 | Current THD phase ATHD_Current_L1 |
float32 | 2 | % | 1 | R | Holding (FC03) |
| 51 | 51 | Current THD phase BTHD_Current_L2 |
float32 | 2 | % | 1 | R | Holding (FC03) |
| 53 | 53 | Current THD phase CTHD_Current_L3 |
float32 | 2 | % | 1 | R | Holding (FC03) |
| 55 | 55 | Line frequencyFrequency |
float32 | 2 | Hz | 1 | R | Holding (FC03) |
| 57 | 57 | Average phase to neutral voltageVoltageLN_Avg |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 59 | 59 | Average phase to phase voltageVoltageLL_Avg |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 61 | 61 | Average currentCurrent_Avg |
float32 | 2 | A | 1 | R | Holding (FC03) |
| 63 | 63 | Total apparent powerApparentPower_Total |
float32 | 2 | VA | 1 | R | Holding (FC03) |
| 65 | 65 | Total active powerActivePower_Total |
float32 | 2 | W | 1 | R | Holding (FC03) |
| 67 | 67 | Total reactive powerReactivePower_Total |
float32 | 2 | var | 1 | R | Holding (FC03) |
| 69 | 69 | Total power factorPowerFactor_Total |
float32 | 2 | 1 | R | Holding (FC03) | |
| 71 | 71 | Voltage amplitude unbalanceVoltageUnbalance |
float32 | 2 | % | 1 | R | Holding (FC03) |
| 73 | 73 | Current amplitude unbalanceCurrentUnbalance |
float32 | 2 | % | 1 | R | Holding (FC03) |
| 75 | 75 | Maximum voltage phase A to neutralVoltageL1N_Max |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 87 | 87 | Maximum current phase ACurrentL1_Max |
float32 | 2 | A | 1 | R | Holding (FC03) |
| 89 | 89 | Maximum current phase BCurrentL2_Max |
float32 | 2 | A | 1 | R | Holding (FC03) |
| 91 | 91 | Maximum current phase CCurrentL3_Max |
float32 | 2 | A | 1 | R | Holding (FC03) |
| 129 | 129 | Maximum line frequencyFrequency_Max |
float32 | 2 | Hz | 1 | R | Holding (FC03) |
| 139 | 139 | Maximum total active powerActivePower_Total_Max |
float32 | 2 | W | 1 | R | Holding (FC03) |
| 145 | 145 | Minimum voltage phase A to neutralVoltageL1N_Min |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 187 | 187 | Minimum line frequencyFrequency_Min |
float32 | 2 | Hz | 1 | R | Holding (FC03) |
| 203 | 203 | Limit violation flagsLimitViolations · Bit layout in Table 3-9 (p. 45): bits 0 to 5 are limits 0 to 5 in the low byte of the register pair, plus a limit logic bit. 0 = no violation, 1 = violation. |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 205 | 205 | Device diagnostics and status flagsDeviceStatus · Bit layout in Table 3-8 (p. 45): synchronization pulse missing, configuration menu active, voltage overload, current overload, slot 1 module, pulse rate exceeded, plus stored events that the master must acknowledge. |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 207 | 207 | Digital output statusDigitalOutputStatus · Bit 0 of the lowest byte is output 0 (Table 3-7, p. 44). |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 209 | 209 | Digital input statusDigitalInputStatus · Bit 0 of the lowest byte is input 0 (Table 3-7, p. 44). |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 211 | 211 | Active tariffActiveTariff · 0 = tariff 1, 1 = tariff 2. |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 213 | 213 | Working hours counterWorkingHours |
uint32 | 2 | s | 1 | RW | Holding (FC03) |
| 215 | 215 | Universal counterUniversalCounter |
uint32 | 2 | 1 | RW | Holding (FC03) | |
| 501 | 501 | Demand active power importDemandActivePower_Import |
float32 | 2 | W | 1 | R | Holding (FC03) |
| 503 | 503 | Demand reactive power importDemandReactivePower_Import |
float32 | 2 | var | 1 | R | Holding (FC03) |
| 505 | 505 | Demand active power exportDemandActivePower_Export |
float32 | 2 | W | 1 | R | Holding (FC03) |
| 507 | 507 | Demand reactive power exportDemandReactivePower_Export |
float32 | 2 | var | 1 | R | Holding (FC03) |
| 517 | 517 | Demand period lengthDemandPeriod |
uint32 | 2 | s | 1 | R | Holding (FC03) |
| 519 | 519 | Time elapsed in the current demand periodDemandElapsed |
uint32 | 2 | s | 1 | R | Holding (FC03) |
| 801 | 801 | Active energy import tariff 1ActiveEnergyImport_T1 · 64-bit floating point, four registers. Overflow at 1.0e+12. |
float64 | 4 | Wh | 1 | RW | Holding (FC03) |
| 805 | 805 | Active energy import tariff 2ActiveEnergyImport_T2 · 64-bit floating point, four registers. Overflow at 1.0e+12. |
float64 | 4 | Wh | 1 | RW | Holding (FC03) |
| 809 | 809 | Active energy export tariff 1ActiveEnergyExport_T1 · 64-bit floating point, four registers. Overflow at 1.0e+12. |
float64 | 4 | Wh | 1 | RW | Holding (FC03) |
| 813 | 813 | Active energy export tariff 2ActiveEnergyExport_T2 · 64-bit floating point, four registers. Overflow at 1.0e+12. |
float64 | 4 | Wh | 1 | RW | Holding (FC03) |
| 817 | 817 | Reactive energy import tariff 1ReactiveEnergyImport_T1 · 64-bit floating point, four registers. Overflow at 1.0e+12. |
float64 | 4 | varh | 1 | RW | Holding (FC03) |
| 821 | 821 | Reactive energy import tariff 2ReactiveEnergyImport_T2 · 64-bit floating point, four registers. Overflow at 1.0e+12. |
float64 | 4 | varh | 1 | RW | Holding (FC03) |
| 825 | 825 | Reactive energy export tariff 1ReactiveEnergyExport_T1 · 64-bit floating point, four registers. Overflow at 1.0e+12. |
float64 | 4 | varh | 1 | RW | Holding (FC03) |
| 829 | 829 | Reactive energy export tariff 2ReactiveEnergyExport_T2 · 64-bit floating point, four registers. Overflow at 1.0e+12. |
float64 | 4 | varh | 1 | RW | Holding (FC03) |
| 833 | 833 | Apparent energy tariff 1ApparentEnergy_T1 · 64-bit floating point, four registers. Overflow at 1.0e+12. |
float64 | 4 | VAh | 1 | RW | Holding (FC03) |
| 837 | 837 | Apparent energy tariff 2ApparentEnergy_T2 · 64-bit floating point, four registers. Overflow at 1.0e+12. |
float64 | 4 | VAh | 1 | RW | Holding (FC03) |
| 50001 | 50001 | Connection typeConnectionType · 0 = 3P4W, 1 = 3P3W, 2 = 3P4WB, 3 = 3P3WB, 4 = 1P2W. |
uint32 | 2 | 1 | RW | Holding (FC03) | |
| 50003 | 50003 | Voltage transformer in useUseVoltageTransformer · 0 = no, 1 = yes. |
uint32 | 2 | 1 | RW | Holding (FC03) | |
| 50005 | 50005 | Voltage transformer primaryPrimaryVoltage · Range 1 to 999999. |
uint32 | 2 | V | 1 | RW | Holding (FC03) |
| 50007 | 50007 | Voltage transformer secondarySecondaryVoltage · Range 1 to 690. |
uint32 | 2 | V | 1 | RW | Holding (FC03) |
| 50011 | 50011 | Current transformer primaryPrimaryCurrent · Range 1 to 99999. |
uint32 | 2 | A | 1 | RW | Holding (FC03) |
| 50013 | 50013 | Current transformer secondarySecondaryCurrent · 1 A or 5 A. |
uint32 | 2 | A | 1 | RW | Holding (FC03) |
| 50021 | 50021 | Demand period settingDemandPeriodSetting · Range 1 to 60. |
uint32 | 2 | min | 1 | RW | Holding (FC03) |
| 50023 | 50023 | Demand synchronization sourceDemandSyncMode · 0 = none, 1 = via bus, 2 = via digital input. |
uint32 | 2 | 1 | RW | Holding (FC03) | |
| 63015 | 63015 | Ethernet protocolEthernetProtocol · 0 = Modbus TCP, 1 = SEAbus TCP. |
uint32 | 2 | 1 | RW | Holding (FC03) | |
| 63019 | 63019 | Modbus or SEAbus address (RS485 module only)ModbusAddress · Range 1 to 247. Applies to the PAC RS485 expansion module. |
uint32 | 2 | 1 | RW | Holding (FC03) | |
| 64001 | 64001 | Manufacturer IDIM_ManufacturerId · Standard value 42 stands for Siemens AG. The 27-register I&M block must be read as a whole starting at 64001. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 64002 | 64002 | Order numberIM_OrderNumber · ASCII, 20 characters. |
string | 10 | 1 | R | Holding (FC03) | |
| 64012 | 64012 | Serial numberIM_SerialNumber · ASCII, 16 characters. |
string | 8 | 1 | R | Holding (FC03) | |
| 64020 | 64020 | Hardware versionIM_HardwareVersion |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 60002 | 60002 | Reset maximum valuesCmd_ResetMax · Write value 0. Command registers are written with function code 06. |
uint16 | 1 | 1 | W | Holding (FC03) | |
| 60003 | 60003 | Reset minimum valuesCmd_ResetMin · Write value 0. |
uint16 | 1 | 1 | W | Holding (FC03) | |
| 60004 | 60004 | Reset energy countersCmd_ResetEnergy · 0 = all counters, 1 to 10 select one counter in the order of the energy table (active import tariff 1 first, apparent tariff 2 last). |
uint16 | 1 | 1 | W | Holding (FC03) | |
| 60006 | 60006 | Switch tariffCmd_SwitchTariff · 0 = high tariff, 1 = low tariff. |
uint16 | 1 | 1 | W | Holding (FC03) |
Scale is the number to multiply the raw value by to get the unit. Types with more than one register (32 and 64-bit) follow the word order above.
Open in Modbus Poll
- Download the Modbus Poll blocks file.
- Open Modbus Poll, connect to the device and set its unit ID. The manual does not state the word order for 32-bit values. Check one known value (a voltage or a counter) and switch the setting if it reads wrong.
- In the blocks panel on the right, click Import CSV and pick the file. CSV import is a Pro feature. Without Pro, Modbus Poll polls the first 20 values of your blocks.
- The wire addresses are already in the file, so there is no 0-based or 1-based conversion to do.
Once the values look right, export the tag list to Ignition, Kepware, Node-RED, Home Assistant or Voltrus SCADA.
Source and accuracy
Manufacturer document: SENTRON Power Monitoring Device SENTRON PAC3200 Manual (cache.industry.siemens.com)
A5E01168664B-04, 02/2008 edition label as printed, p. 38-62. Read on 2026-10-24.
Also used: Data Exchange between S7-1200 and SENTRON PAC via MODBUS TCP (Set 22), Entry ID 40614428 V14.0 (cache.industry.siemens.com)
Addresses, types, units and scale are taken from the document above. Names and descriptions are written by Voltrus. Firmware versions can differ, so confirm a value on your own device before you rely on it.
Found a mistake? Report it by email with the register address and the manual page.
Read more: Siemens SENTRON PAC3200 Modbus register map and simulator