Janitza UMG 103-CBM Modbus register map
Also searched as: UMG103-CBM
53 Modbus registers of the Janitza UMG 103-CBM, with the address on the wire, the 30001-style reference, data type, byte order, unit and scale. Transcribed from UMG 103-CBM Firmware version 2.0 and higher: Modbus-address list and formulary (07/2025).
Janitza UMG 103-CBM DIN-rail energy meter with RS485 (firmware 2.0 and later); 32-bit float readings.
- Device type
- Energy meter
- Registers
- 53
- Interfaces
- Modbus RTU
- Byte order (multi-register values)
- ABCD
- Serial settings
- 8 data bits, no parity, 2 stop bits; 9600 to 115200 baud
Hardware verification
Not yet verified on hardware. The map is transcribed from the vendor document and checked against it by script; check the first readings against the device display.
Connection notes
- Addresses are the list's register numbers, sent unchanged: Janitza's UMG address lists number from register 0 and give no example frame.
- Only the float block of frequently required readings (19000-19120) is transcribed; the list repeats many of these values at other addresses, as floats and as scaled shorts.
- Function 03 and 04 both read these registers; floats are big-endian (ABCD). The list says adding 32768 to an address returns the same value little-endian.
- Float and integer values include the configured current and voltage transformer ratios.
- Left out 19054-19060 and 19086-19092: on this device the list maps them to the same values as 19062-19068 and 19094-19100 and marks them as differing from the standard UMG assignment.
Registers
Grouped as in the vendor document.
Voltage 6 registers
| Name and key | Reference | Address | Type | Byte order | Unit | Scale |
|---|---|---|---|---|---|---|
Voltage L1-Nvoltage_l1_n | 419001 | 0x4A38 | float32 | ABCD | V | |
Voltage L2-Nvoltage_l2_n | 419003 | 0x4A3A | float32 | ABCD | V | |
Voltage L3-Nvoltage_l3_n | 419005 | 0x4A3C | float32 | ABCD | V | |
Voltage L1-L2voltage_l1_l2 | 419007 | 0x4A3E | float32 | ABCD | V | |
Voltage L2-L3voltage_l2_l3 | 419009 | 0x4A40 | float32 | ABCD | V | |
Voltage L3-L1voltage_l3_l1 | 419011 | 0x4A42 | float32 | ABCD | V |
Current 4 registers
| Name and key | Reference | Address | Type | Byte order | Unit | Scale |
|---|---|---|---|---|---|---|
Apparent current, L1current_l1 | 419013 | 0x4A44 | float32 | ABCD | A | |
Apparent current, L2current_l2 | 419015 | 0x4A46 | float32 | ABCD | A | |
Apparent current, L3current_l3 | 419017 | 0x4A48 | float32 | ABCD | A | |
Vector sum; IN=I1+I2+I3current_vector_sum | 419019 | 0x4A4A | float32 | ABCD | A |
Power 12 registers
| Name and key | Reference | Address | Type | Byte order | Unit | Scale |
|---|---|---|---|---|---|---|
Real power L1active_power_l1 | 419021 | 0x4A4C | float32 | ABCD | W | |
Real power L2active_power_l2 | 419023 | 0x4A4E | float32 | ABCD | W | |
Real power L3active_power_l3 | 419025 | 0x4A50 | float32 | ABCD | W | |
Sum; Psum3=P1+P2+P3active_power_total | 419027 | 0x4A52 | float32 | ABCD | W | |
Apparent power L1apparent_power_l1 | 419029 | 0x4A54 | float32 | ABCD | VA | |
Apparent power L2apparent_power_l2 | 419031 | 0x4A56 | float32 | ABCD | VA | |
Apparent power L3apparent_power_l3 | 419033 | 0x4A58 | float32 | ABCD | VA | |
Sum; Ssum3=S1+S2+S3apparent_power_total | 419035 | 0x4A5A | float32 | ABCD | VA | |
Reactive power (mains frequ.) L1reactive_power_l1 | 419037 | 0x4A5C | float32 | ABCD | var | |
Reactive power (mains frequ.) L2reactive_power_l2 | 419039 | 0x4A5E | float32 | ABCD | var | |
Reactive power (mains frequ.) L3reactive_power_l3 | 419041 | 0x4A60 | float32 | ABCD | var | |
Sum; Qsum3=Q1+Q2+Q3reactive_power_total | 419043 | 0x4A62 | float32 | ABCD | var |
Frequency 1 registers
| Name and key | Reference | Address | Type | Byte order | Unit | Scale |
|---|---|---|---|---|---|---|
Measured frequencyfrequency | 419051 | 0x4A6A | float32 | ABCD | Hz |
Energy 20 registers
| Name and key | Reference | Address | Type | Byte order | Unit | Scale |
|---|---|---|---|---|---|---|
Real energy L1, consumedactive_energy_consumed_l1 | 419063 | 0x4A76 | float32 | ABCD | Wh | |
Real energy L2, consumedactive_energy_consumed_l2 | 419065 | 0x4A78 | float32 | ABCD | Wh | |
Real energy L3, consumedactive_energy_consumed_l3 | 419067 | 0x4A7A | float32 | ABCD | Wh | |
Real energy L1..L3, consumed, rate 1active_energy_consumed_total_rate_1 | 419069 | 0x4A7C | float32 | ABCD | Wh | |
Real energy L1, deliveredactive_energy_delivered_l1 | 419071 | 0x4A7E | float32 | ABCD | Wh | |
Real energy L2, deliveredactive_energy_delivered_l2 | 419073 | 0x4A80 | float32 | ABCD | Wh | |
Real energy L3, deliveredactive_energy_delivered_l3 | 419075 | 0x4A82 | float32 | ABCD | Wh | |
Real energy L1..L3, deliveredactive_energy_delivered_total | 419077 | 0x4A84 | float32 | ABCD | Wh | |
Apparent energy L1apparent_energy_l1 | 419079 | 0x4A86 | float32 | ABCD | VAh | |
Apparent energy L2apparent_energy_l2 | 419081 | 0x4A88 | float32 | ABCD | VAh | |
Apparent energy L3apparent_energy_l3 | 419083 | 0x4A8A | float32 | ABCD | VAh | |
Apparent energy L1..L3apparent_energy_total | 419085 | 0x4A8C | float32 | ABCD | VAh | |
Reactive energy, inductive, L1reactive_energy_inductive_l1 | 419095 | 0x4A96 | float32 | ABCD | varh | |
Reactive energy, inductive, L2reactive_energy_inductive_l2 | 419097 | 0x4A98 | float32 | ABCD | varh | |
Reactive energy, inductive, L3reactive_energy_inductive_l3 | 419099 | 0x4A9A | float32 | ABCD | varh | |
Reactive energy L1..L3, ind.reactive_energy_inductive_total | 419101 | 0x4A9C | float32 | ABCD | varh | |
Reactive energy, capacitive, L1reactive_energy_capacitive_l1 | 419103 | 0x4A9E | float32 | ABCD | varh | |
Reactive energy, capacitive, L2reactive_energy_capacitive_l2 | 419105 | 0x4AA0 | float32 | ABCD | varh | |
Reactive energy, capacitive, L3reactive_energy_capacitive_l3 | 419107 | 0x4AA2 | float32 | ABCD | varh | |
Reactive energy L1..L3, cap.reactive_energy_capacitive_total | 419109 | 0x4AA4 | float32 | ABCD | varh |
Status 1 registers
| Name and key | Reference | Address | Type | Byte order | Unit | Scale |
|---|---|---|---|---|---|---|
Rotation field; 1=right, 0=none, -1=leftrotation_field | 419053 | 0x4A6C | float32 | ABCD |
Power factor 3 registers
| Name and key | Reference | Address | Type | Byte order | Unit | Scale |
|---|---|---|---|---|---|---|
Fund.power factor, CosPhi; UL1 IL1cos_phi_l1 | 419045 | 0x4A64 | float32 | ABCD | ||
Fund.power factor, CosPhi; UL2 IL2cos_phi_l2 | 419047 | 0x4A66 | float32 | ABCD | ||
Fund.power factor, CosPhi; UL3 IL3cos_phi_l3 | 419049 | 0x4A68 | float32 | ABCD |
Harmonics 6 registers
| Name and key | Reference | Address | Type | Byte order | Unit | Scale |
|---|---|---|---|---|---|---|
Harmonic, THD,U L1-Nthd_voltage_l1_n | 419111 | 0x4AA6 | float32 | ABCD | % | |
Harmonic, THD,U L2-Nthd_voltage_l2_n | 419113 | 0x4AA8 | float32 | ABCD | % | |
Harmonic, THD,U L3-Nthd_voltage_l3_n | 419115 | 0x4AAA | float32 | ABCD | % | |
Harmonic, THD,I L1thd_current_l1 | 419117 | 0x4AAC | float32 | ABCD | % | |
Harmonic, THD,I L2thd_current_l2 | 419119 | 0x4AAE | float32 | ABCD | % | |
Harmonic, THD,I L3thd_current_l3 | 419121 | 0x4AB0 | float32 | ABCD | % |
Source documents
- UMG 103-CBM Firmware version 2.0 and higher: Modbus-address list and formulary , Janitza electronics GmbH, 2.057.005.1.f, 07/2025 (accessed 2026-11-09) Section "Frequently required readings", pages 11-12.
Read it by name
Read the UMG 103-CBM with an AI assistant
The Proxus Industrial MCP Server includes this map. Set it on the device, and Claude, Cursor or VS Code reads registers by key with the right type, byte order, scale and unit. It only reads.
This device speaks Modbus RTU: reach it through a Modbus TCP gateway and use the gateway’s address with the device’s unit ID.
proxus-mcp.json
{
"devices": {
"umg-1": {
"protocol": "modbus-tcp",
"host": "192.168.10.40",
"unit_id": 1,
"map": "janitza/umg-103-cbm"
}
}
} Ask your assistant
Read voltage_l1_n, voltage_l2_n, voltage_l3_n from umg-1.
The tool call it makes
read_named(device: "umg-1", keys: ["voltage_l1_n", "voltage_l2_n", "voltage_l3_n"]) Have this device? Verify the map.
Ask your assistant to run verify_device_map. It reads every register once, read-only, checks that the values are plausible and asks you to compare two values with the display. You get a report and a prefilled GitHub issue to submit; your name goes on this map’s verified list.
Collecting from many devices?
Proxus reads Modbus TCP and RTU devices next to the machines, keeps the history and delivers the values to dashboards, databases and AI.