Skip to content

About

Open, machine-readable Modbus register maps for energy meters, inverters, drives and other field devices

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

12 Commits

Folders and files

Repository files navigation

Modbus Register Maps

Open, machine-readable Modbus register maps for energy meters, inverters, drives and other field devices. Each device is one YAML file with the address, data type, byte order, unit and scale of every register, and the document it was transcribed from.

Modbus Register Maps: every register, with its source

Vendor manuals bury this in PDF tables with mixed addressing conventions (30001, 0x0000, "register 1"). Here every address is the zero-based value sent on the wire, and the 30001-style reference is derived from it, so the two can never disagree.

Devices

Vendor Model Category Registers Hardware-verified
ABB A43/A44 energy-meter 166 not yet
ABB ACS580 vfd 31 not yet
ABB ACS880 vfd 28 not yet
ABB B23/B24 energy-meter 121 not yet
ABB M4M 20/M4M 30 power-analyzer 228 not yet
Carlo Gavazzi EM111/EM112 energy-meter 48 not yet
Carlo Gavazzi EM210 energy-meter 65 not yet
Carlo Gavazzi EM24-DIN energy-meter 78 not yet
Carlo Gavazzi EM24-IS energy-meter 30 not yet
Carlo Gavazzi EM330/ET330 energy-meter 74 not yet
Carlo Gavazzi EM340/ET340 energy-meter 82 not yet
Danfoss VLT AQUA Drive FC 202 vfd 19 not yet
Danfoss VLT AutomationDrive FC 302 vfd 19 not yet
Danfoss VLT HVAC Drive FC 102 vfd 20 not yet
Eastron SDM120-Modbus energy-meter 32 not yet
Eastron SDM120CT-M energy-meter 35 not yet
Eastron SDM630-Modbus energy-meter 97 not yet
Eastron SDM630MCT energy-meter 83 not yet
Eastron SDM72D-M energy-meter 16 not yet
Fronius Primo GEN24 Plus/Symo GEN24 Plus inverter 224 not yet
Fronius Primo GEN24/Symo GEN24 inverter 178 not yet
Fronius Smart Meter energy-meter 73 not yet
Fronius Tauro ECO inverter 168 not yet
Fronius Tauro inverter 188 not yet
Fronius Verto 3 MPPT inverter 188 not yet
Fronius Verto 4 MPPT inverter 198 not yet
Fronius Verto Plus inverter 234 not yet
Janitza UMG 103-CBM energy-meter 53 not yet
Janitza UMG 509-PRO power-analyzer 61 not yet
Janitza UMG 604-PRO power-analyzer 61 not yet
Janitza UMG 96-PA power-analyzer 54 not yet
Janitza UMG 96-RM-E power-analyzer 61 not yet
Janitza UMG 96-RM power-analyzer 61 not yet
Klemsan KLEA 320P power-analyzer 48 not yet
Klemsan KLEA 4 power-analyzer 43 not yet
Klemsan KLEA 6 power-analyzer 49 not yet
Lovato Electric DMG110 power-analyzer 55 not yet
Lovato Electric DMG210 power-analyzer 55 not yet
Lovato Electric DMG800 power-analyzer 54 not yet
Schneider Electric ATV320 vfd 1071 not yet
Schneider Electric ATV340 vfd 1741 not yet
Schneider Electric ATV600 vfd 1879 not yet
Schneider Electric ATV61 vfd 852 not yet
Schneider Electric ATV71 vfd 926 not yet
Schneider Electric ATV900 vfd 1911 not yet
Schneider Electric EM6400NG power-analyzer 424 not yet
Schneider Electric iEM3000 energy-meter 98 not yet
Schneider Electric ION7400 power-analyzer 807 not yet
Schneider Electric ION9000 power-analyzer 845 not yet
Schneider Electric PM2100/PM2200 power-analyzer 679 not yet
Schneider Electric PM3250/PM3255 power-analyzer 267 not yet
Schneider Electric PM5100/PM5300 power-analyzer 877 not yet
Schneider Electric PM5500/PM5600/PM5700 power-analyzer 3108 not yet
Schneider Electric PM8000 power-analyzer 809 not yet
Siemens PAC2200 power-analyzer 79 not yet
Siemens PAC2200CLP power-analyzer 81 not yet
Siemens PAC3200 power-analyzer 151 not yet
Siemens PAC3220 power-analyzer 91 not yet
Siemens PAC4200 power-analyzer 222 not yet
Siemens SINAMICS G120C vfd 63 not yet
Siemens SINAMICS V20 vfd 77 not yet
SMA Sunny Tripower Smart Energy inverter 31 not yet
SolarEdge Meter via Inverter energy-meter 37 not yet
SolarEdge SunSpec Inverter inverter 41 not yet

"Hardware-verified" means someone read the registers from a real device and recorded it under verified. The other maps are transcribed from the sources they list. Have one of these devices? A verification is one of the most useful contributions you can make.

Format

schema_version: 1
vendor: Eastron
model: SDM630-Modbus
category: energy-meter
summary: Three-phase DIN-rail energy meter with RS485 Modbus RTU; every value is a 32-bit float.
connection:
  interfaces: [rtu]
  default_unit_id: 1
  default_byte_order: ABCD
sources:
  - title: Eastron SDM630Modbus Smart Meter Modbus Protocol Implementation
    publisher: Eastron
    version: V1.8
    url: https://...
registers:
  - key: voltage_l1_n
    name: Phase 1 line to neutral voltage
    table: input        # coil, discrete_input, input or holding
    address: 0          # zero-based protocol address (reference 30001)
    type: float32       # bool, int16, uint16, int32, uint32, float32, int64, uint64, float64, string, bitfield16
    unit: V
    access: r

Optional per register: byte_order (ABCD, CDAB, BADC, DCBA), scale (engineering value = raw × scale), scale_factor (key of a register holding a power-of-ten exponent, as SunSpec devices use), length (for string, bitfield and raw), values (meaning of enumerated values), applies_to (wiring modes), group, description and notes. The full contract is schema/device.schema.json.

Use the data

python3 tools/maps.py build writes dist/index.json and one JSON file per device. Each register gains its 30001-style reference, address_hex, Modbus function_code, effective byte_order and a proxus_mcp_address.

The last one plugs into Proxus Industrial MCP Server, which lets AI assistants such as Claude read Modbus devices. With a map at hand you can ask:

Read ir:52 on meter-1 as float32 ABCD. It's the total active power of an Eastron SDM630.

Contribute

Adding a device takes one YAML file and a pull request; a check runs on every pull request and explains anything that needs fixing. See CONTRIBUTING.md. No device of your own? Ask for one with a device request.

Corrections and removal requests

Maps record facts (addresses, data types, units) in this project's own format and words, with a link to the document they come from. Vendor documents themselves are never stored here.

Found a wrong register? Open an issue or a pull request with the source or a reading that shows it. If you represent a manufacturer and want a map corrected, linked to a newer document or removed, open an issue or contact the maintainers through the repository owner's GitHub profile; requests are handled within five working days.

Licence

The maps (devices/) are under CC BY 4.0. If you reuse them, credit "Modbus Register Maps by Proxus contributors" with a link to this repository. The tooling and schema are under Apache-2.0.

Register maps describe how devices communicate; vendor names and model numbers belong to their owners. Always check a map against your device's documentation before you write to a register.

About

Open, machine-readable Modbus register maps for energy meters, inverters, drives and other field devices

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages