{ "$schema": "https://raw.githubusercontent.com/nobrega8/mbmap-library/main/schema/mbmap-2.schema.json", "mbmap": 2, "vendor": "Siemens", "model": "Sentron PAC 3100", "models": ["SENTRON PAC3100", "PAC3100", "7KM3133-0BA00-3AA0"], "vendor_website": "siemens.com", "description": "Power monitoring device for panel mounting with RS-485 (Modbus RTU)", "revision": 3, "revised": "2026-11-10", "source": "Siemens, \"SENTRON PAC3100 Power Monitoring Device\" manual, A5E02385159B-01 (10/2009), appendix A.2", "sources": [{"title": "SENTRON PAC3100 Power Monitoring Device, Manual", "version": "A5E02385159B-01", "date": "2009-10", "url": "https://assets.new.siemens.com/siemens/assets/api/uuid:5ae6d575-35e4-4e06-8a20-31dd91ac5242/Sentron-manuaali-englanti.pdf", "note": "appendix A.2, tables A-5, A-11, A-16 and A-19; default settings in table 3-5"}], "notes": [ "Addresses are the Modbus offsets of the manual. Values are read with FC03 or FC04; settings are written with FC10 and commands with FC06.", "Read every value from its first register with its full length: a read that starts or ends inside a multi-register value returns an error.", "Factory settings: address 126, 19200 baud, 8N2.", "Not in this map: digital output, language and display settings (50033-50065) and the I&M data blocks." ], "protocol": "rtu", "unit_id": 126, "baudrate": 19200, "parity": "N", "databits": 8, "stopbits": 2, "byte_order": "big", "word_order": "big", "address_base": 0, "x_status": "official", "identify": { "function": 43, "fields": [ {"name": "Manufacturer", "object": 0}, {"name": "Manufacturer device name", "object": 1}, {"name": "Firmware version / bootloader version", "object": 2, "role": "firmware"} ] }, "registers": [ {"name": "Voltage a-n", "group": "Measurements", "area": "holding", "address": 1, "type": "float32", "unit": "V", "access": "R"}, {"name": "Voltage b-n", "group": "Measurements", "area": "holding", "address": 3, "type": "float32", "unit": "V", "access": "R"}, {"name": "Voltage c-n", "group": "Measurements", "area": "holding", "address": 5, "type": "float32", "unit": "V", "access": "R"}, {"name": "Voltage a-b", "group": "Measurements", "area": "holding", "address": 7, "type": "float32", "unit": "V", "access": "R"}, {"name": "Voltage b-c", "group": "Measurements", "area": "holding", "address": 9, "type": "float32", "unit": "V", "access": "R"}, {"name": "Voltage c-a", "group": "Measurements", "area": "holding", "address": 11, "type": "float32", "unit": "V", "access": "R"}, {"name": "Current a", "group": "Measurements", "area": "holding", "address": 13, "type": "float32", "unit": "A", "access": "R"}, {"name": "Current b", "group": "Measurements", "area": "holding", "address": 15, "type": "float32", "unit": "A", "access": "R"}, {"name": "Current c", "group": "Measurements", "area": "holding", "address": 17, "type": "float32", "unit": "A", "access": "R"}, {"name": "Apparent power a", "group": "Measurements", "area": "holding", "address": 19, "type": "float32", "unit": "VA", "access": "R"}, {"name": "Apparent power b", "group": "Measurements", "area": "holding", "address": 21, "type": "float32", "unit": "VA", "access": "R"}, {"name": "Apparent power c", "group": "Measurements", "area": "holding", "address": 23, "type": "float32", "unit": "VA", "access": "R"}, {"name": "Active power a", "group": "Measurements", "area": "holding", "address": 25, "type": "float32", "unit": "W", "access": "R"}, {"name": "Active power b", "group": "Measurements", "area": "holding", "address": 27, "type": "float32", "unit": "W", "access": "R"}, {"name": "Active power c", "group": "Measurements", "area": "holding", "address": 29, "type": "float32", "unit": "W", "access": "R"}, {"name": "Reactive power a (VAR1)", "group": "Measurements", "area": "holding", "address": 31, "type": "float32", "unit": "var", "access": "R"}, {"name": "Reactive power b (VAR1)", "group": "Measurements", "area": "holding", "address": 33, "type": "float32", "unit": "var", "access": "R"}, {"name": "Reactive power c (VAR1)", "group": "Measurements", "area": "holding", "address": 35, "type": "float32", "unit": "var", "access": "R"}, {"name": "Neutral current", "group": "Measurements", "area": "holding", "address": 37, "type": "float32", "unit": "A", "access": "R"}, {"name": "Frequency", "group": "Measurements", "area": "holding", "address": 39, "type": "float32", "unit": "Hz", "access": "R", "description": "Range 45 ... 65"}, {"name": "Total apparent power", "group": "Measurements", "area": "holding", "address": 47, "type": "float32", "unit": "VA", "access": "R"}, {"name": "Total active power", "group": "Measurements", "area": "holding", "address": 49, "type": "float32", "unit": "W", "access": "R"}, {"name": "Total reactive power (VAR1)", "group": "Measurements", "area": "holding", "address": 51, "type": "float32", "unit": "var", "access": "R"}, {"name": "Total power factor", "group": "Measurements", "area": "holding", "address": 53, "type": "float32", "access": "R"}, {"name": "Maximum voltage a-n", "group": "Min/max", "area": "holding", "address": 55, "type": "float32", "unit": "V", "access": "R"}, {"name": "Maximum voltage b-n", "group": "Min/max", "area": "holding", "address": 57, "type": "float32", "unit": "V", "access": "R"}, {"name": "Maximum voltage c-n", "group": "Min/max", "area": "holding", "address": 59, "type": "float32", "unit": "V", "access": "R"}, {"name": "Max. voltage a-b", "group": "Min/max", "area": "holding", "address": 61, "type": "float32", "unit": "V", "access": "R"}, {"name": "Max. voltage b-c", "group": "Min/max", "area": "holding", "address": 63, "type": "float32", "unit": "V", "access": "R"}, {"name": "Max. voltage c-a", "group": "Min/max", "area": "holding", "address": 65, "type": "float32", "unit": "V", "access": "R"}, {"name": "Maximum current a", "group": "Min/max", "area": "holding", "address": 67, "type": "float32", "unit": "A", "access": "R"}, {"name": "Maximum current b", "group": "Min/max", "area": "holding", "address": 69, "type": "float32", "unit": "A", "access": "R"}, {"name": "Maximum current c", "group": "Min/max", "area": "holding", "address": 71, "type": "float32", "unit": "A", "access": "R"}, {"name": "Maximum apparent power a", "group": "Min/max", "area": "holding", "address": 73, "type": "float32", "unit": "VA", "access": "R"}, {"name": "Maximum apparent power b", "group": "Min/max", "area": "holding", "address": 75, "type": "float32", "unit": "VA", "access": "R"}, {"name": "Maximum apparent power c", "group": "Min/max", "area": "holding", "address": 77, "type": "float32", "unit": "VA", "access": "R"}, {"name": "Maximum active power a", "group": "Min/max", "area": "holding", "address": 79, "type": "float32", "unit": "W", "access": "R"}, {"name": "Maximum active power b", "group": "Min/max", "area": "holding", "address": 81, "type": "float32", "unit": "W", "access": "R"}, {"name": "Maximum active power c", "group": "Min/max", "area": "holding", "address": 83, "type": "float32", "unit": "W", "access": "R"}, {"name": "Max. reactive power a (VAR1)", "group": "Min/max", "area": "holding", "address": 85, "type": "float32", "unit": "var", "access": "R"}, {"name": "Max. reactive power b (VAR1)", "group": "Min/max", "area": "holding", "address": 87, "type": "float32", "unit": "var", "access": "R"}, {"name": "Max. reactive power c (VAR1)", "group": "Min/max", "area": "holding", "address": 89, "type": "float32", "unit": "var", "access": "R"}, {"name": "Max. neutral current", "group": "Min/max", "area": "holding", "address": 91, "type": "float32", "unit": "A", "access": "R"}, {"name": "Max. frequency", "group": "Min/max", "area": "holding", "address": 93, "type": "float32", "unit": "Hz", "access": "R", "description": "Range 45 ... 65"}, {"name": "Max. total apparent power", "group": "Min/max", "area": "holding", "address": 101, "type": "float32", "unit": "VA", "access": "R"}, {"name": "Max. total active power", "group": "Min/max", "area": "holding", "address": 103, "type": "float32", "unit": "W", "access": "R"}, {"name": "Max. total reactive power (VAR1)", "group": "Min/max", "area": "holding", "address": 105, "type": "float32", "unit": "var", "access": "R"}, {"name": "Max. total power factor", "group": "Min/max", "area": "holding", "address": 107, "type": "float32", "access": "R"}, {"name": "Minimum voltage a-n", "group": "Min/max", "area": "holding", "address": 109, "type": "float32", "unit": "V", "access": "R"}, {"name": "Minimum voltage b-n", "group": "Min/max", "area": "holding", "address": 111, "type": "float32", "unit": "V", "access": "R"}, {"name": "Minimum voltage c-n", "group": "Min/max", "area": "holding", "address": 113, "type": "float32", "unit": "V", "access": "R"}, {"name": "Min. voltage a-b", "group": "Min/max", "area": "holding", "address": 115, "type": "float32", "unit": "V", "access": "R"}, {"name": "Min. voltage b-c", "group": "Min/max", "area": "holding", "address": 117, "type": "float32", "unit": "V", "access": "R"}, {"name": "Min. voltage c-a", "group": "Min/max", "area": "holding", "address": 119, "type": "float32", "unit": "V", "access": "R"}, {"name": "Minimum current a", "group": "Min/max", "area": "holding", "address": 121, "type": "float32", "unit": "A", "access": "R"}, {"name": "Minimum current b", "group": "Min/max", "area": "holding", "address": 123, "type": "float32", "unit": "A", "access": "R"}, {"name": "Minimum current c", "group": "Min/max", "area": "holding", "address": 125, "type": "float32", "unit": "A", "access": "R"}, {"name": "Minimum apparent power a", "group": "Min/max", "area": "holding", "address": 127, "type": "float32", "unit": "VA", "access": "R"}, {"name": "Minimum apparent power b", "group": "Min/max", "area": "holding", "address": 129, "type": "float32", "unit": "VA", "access": "R"}, {"name": "Minimum apparent power c", "group": "Min/max", "area": "holding", "address": 131, "type": "float32", "unit": "VA", "access": "R"}, {"name": "Minimum active power a", "group": "Min/max", "area": "holding", "address": 133, "type": "float32", "unit": "W", "access": "R"}, {"name": "Minimum active power b", "group": "Min/max", "area": "holding", "address": 135, "type": "float32", "unit": "W", "access": "R"}, {"name": "Minimum active power c", "group": "Min/max", "area": "holding", "address": 137, "type": "float32", "unit": "W", "access": "R"}, {"name": "Min. reactive power a (VAR1)", "group": "Min/max", "area": "holding", "address": 139, "type": "float32", "unit": "var", "access": "R"}, {"name": "Min. reactive power b (VAR1)", "group": "Min/max", "area": "holding", "address": 141, "type": "float32", "unit": "var", "access": "R"}, {"name": "Min. reactive power c (VAR1)", "group": "Min/max", "area": "holding", "address": 143, "type": "float32", "unit": "var", "access": "R"}, {"name": "Min. neutral current", "group": "Min/max", "area": "holding", "address": 145, "type": "float32", "unit": "A", "access": "R"}, {"name": "Min. frequency", "group": "Min/max", "area": "holding", "address": 147, "type": "float32", "unit": "Hz", "access": "R", "description": "Range 45 ... 65"}, {"name": "Min. total apparent power", "group": "Min/max", "area": "holding", "address": 155, "type": "float32", "unit": "VA", "access": "R"}, {"name": "Min. total active power", "group": "Min/max", "area": "holding", "address": 157, "type": "float32", "unit": "W", "access": "R"}, {"name": "Min. total reactive power (VAR1)", "group": "Min/max", "area": "holding", "address": 159, "type": "float32", "unit": "var", "access": "R"}, {"name": "Min. total power factor", "group": "Min/max", "area": "holding", "address": 161, "type": "float32", "access": "R"}, {"name": "Device diagnostics and device status", "group": "Status", "area": "holding", "address": 205, "type": "uint32", "access": "R"}, {"name": "Status of the digital outputs", "group": "Status", "area": "holding", "address": 207, "type": "uint32", "access": "R", "description": "Bit 0 = first input or output"}, {"name": "Status of the digital inputs", "group": "Status", "area": "holding", "address": 209, "type": "uint32", "access": "R", "description": "Bit 0 = first input or output"}, {"name": "Relevant parameter changes counter", "group": "Status", "area": "holding", "address": 217, "type": "uint32", "access": "R"}, {"name": "Counter all parameter changes", "group": "Status", "area": "holding", "address": 219, "type": "uint32", "access": "R"}, {"name": "Cumulated active power import in the current period", "group": "Measurements", "area": "holding", "address": 501, "type": "float32", "unit": "W", "access": "R"}, {"name": "Cumulated reactive power import in the current period", "group": "Measurements", "area": "holding", "address": 503, "type": "float32", "unit": "var", "access": "R"}, {"name": "Cumulated active power export in the current period", "group": "Measurements", "area": "holding", "address": 505, "type": "float32", "unit": "W", "access": "R"}, {"name": "Cumulated reactive power export in the current period", "group": "Measurements", "area": "holding", "address": 507, "type": "float32", "unit": "var", "access": "R"}, {"name": "Maximum active power in the current period", "group": "Min/max", "area": "holding", "address": 509, "type": "float32", "unit": "W", "access": "R"}, {"name": "Minimum active power in the current period", "group": "Min/max", "area": "holding", "address": 511, "type": "float32", "unit": "W", "access": "R"}, {"name": "Maximum reactive power in the current period", "group": "Min/max", "area": "holding", "address": 513, "type": "float32", "unit": "var", "access": "R"}, {"name": "Minimum reactive power in the current period", "group": "Min/max", "area": "holding", "address": 515, "type": "float32", "unit": "var", "access": "R"}, {"name": "Length of the current period", "group": "Measurements", "area": "holding", "address": 517, "type": "uint32", "unit": "s", "access": "R"}, {"name": "Time since the start of the instantaneous period", "group": "Measurements", "area": "holding", "address": 519, "type": "uint32", "unit": "s", "access": "R"}, {"name": "Active energy (import, export, balance)", "group": "Energy", "area": "holding", "address": 801, "type": "float64", "unit": "Wh", "access": "RW", "description": "Range Overflow 1.0e+12"}, {"name": "Reactive energy (import, export, balance)", "group": "Energy", "area": "holding", "address": 805, "type": "float64", "unit": "varh", "access": "RW", "description": "Range Overflow 1.0e+12"}, {"name": "Connection type", "group": "Settings", "area": "holding", "address": 50001, "type": "uint32", "access": "RW", "enum": {"0": "3P4W", "1": "3P3W"}}, {"name": "Voltage measurement using voltage transformers", "group": "Settings", "area": "holding", "address": 50003, "type": "uint32", "access": "RW", "enum": {"0": "No", "1": "Yes"}}, {"name": "Primary voltage", "group": "Settings", "area": "holding", "address": 50005, "type": "uint32", "unit": "V", "access": "RW", "write_min": 1, "write_max": 999999}, {"name": "Secondary voltage", "group": "Settings", "area": "holding", "address": 50007, "type": "uint32", "unit": "V", "access": "RW", "write_min": 1, "write_max": 480}, {"name": "Primary current", "group": "Settings", "area": "holding", "address": 50011, "type": "uint32", "unit": "A", "access": "RW", "write_min": 1, "write_max": 99999}, {"name": "Secondary current", "group": "Settings", "area": "holding", "address": 50013, "type": "uint32", "unit": "A", "access": "R", "description": "5 A"}, {"name": "Invert CT polarity", "group": "Settings", "area": "holding", "address": 50019, "type": "uint32", "access": "RW", "description": "Bit 0 = L1, bit 1 = L2, bit 2 = L3; 1 = inverted"}, {"name": "Demand period setting", "group": "Settings", "area": "holding", "address": 50021, "type": "uint32", "unit": "min", "access": "RW", "write_min": 1, "write_max": 60}, {"name": "Demand synchronization", "group": "Settings", "area": "holding", "address": 50023, "type": "uint32", "access": "RW", "enum": {"0": "No synchronization", "1": "Via bus"}}, {"name": "Energy counting", "group": "Settings", "area": "holding", "address": 50025, "type": "uint32", "access": "RW", "description": "Low word kWh, high word kvarh: 0 = import, 1 = export, 2 = balance"}, {"name": "Bootloader version", "group": "Communication", "area": "holding", "address": 63007, "type": "uint32", "access": "R", "description": "One char and three unsigned chars"}, {"name": "Password protection", "group": "Communication", "area": "holding", "address": 63009, "type": "uint32", "access": "R", "enum": {"0": "Off", "1": "On"}}, {"name": "Modbus address", "group": "Communication", "area": "holding", "address": 63019, "type": "uint32", "access": "RW", "write_min": 1, "write_max": 247, "description": "Default 126"}, {"name": "Baud rate", "group": "Communication", "area": "holding", "address": 63021, "type": "uint32", "access": "RW", "enum": {"0": "4800", "1": "9600", "2": "19200", "3": "38400"}, "description": "Default 2"}, {"name": "Data bits, parity and stop bits", "group": "Communication", "area": "holding", "address": 63023, "type": "uint32", "access": "RW", "enum": {"0": "8N2", "1": "8E1", "2": "8O1", "3": "8N1"}, "description": "Default 0 (8N2)"}, {"name": "Response time", "group": "Communication", "area": "holding", "address": 63025, "type": "uint32", "unit": "ms", "access": "RW", "write_min": 0, "write_max": 255, "description": "0 = automatic"}, {"name": "Reset to factory settings", "group": "Commands", "area": "holding", "address": 60000, "type": "uint16", "access": "W"}, {"name": "Device reset", "group": "Commands", "area": "holding", "address": 60001, "type": "uint16", "access": "W", "description": "Without changing the Modbus address"}, {"name": "Reset maximum values", "group": "Commands", "area": "holding", "address": 60002, "type": "uint16", "access": "W", "enum": {"0": "Reset"}}, {"name": "Reset minimum values", "group": "Commands", "area": "holding", "address": 60003, "type": "uint16", "access": "W", "enum": {"0": "Reset"}}, {"name": "Reset energy counter", "group": "Commands", "area": "holding", "address": 60004, "type": "uint16", "access": "W", "enum": {"0": "All", "1": "Imported active energy", "2": "Exported active energy", "3": "Imported reactive energy", "4": "Exported reactive energy"}}, {"name": "Synchronize demand period", "group": "Commands", "area": "holding", "address": 60005, "type": "uint16", "unit": "min", "access": "W", "write_min": 1, "write_max": 60}, {"name": "Acknowledge diagnostics bits", "group": "Commands", "area": "holding", "address": 60007, "type": "uint16", "access": "W"}, {"name": "Switch outputs", "group": "Commands", "area": "holding", "address": 60008, "type": "uint16", "access": "W", "description": "Low byte: 0 = DO 0.0, 1 = DO 0.1; high byte: 0 = off, 1 = on. Outputs must be set to remote output"} ] }