Skip to content
Proxus 2.0.0 Proxus 2.0: the largest release in Proxus history Release notes

ABB B23/B24 Modbus register map

Also searched as: ABB B23 · ABB B24 · B23 112-100 · B23 312-100 · B24 112-100 · B24 312-100

121 Modbus registers of the ABB B23 and B24, with the address on the wire, the 30001-style reference, data type, byte order, unit and scale. Transcribed from B23/B24 User Manual (Revision E).

ABB B23 (direct connected) and B24 (transformer connected) DIN-rail energy meters with Modbus RTU; integers with fixed resolution.

Device type
Energy meter
Registers
121
Interfaces
Modbus RTU
Byte order (multi-register values)
ABCD
Registers per read
125

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.

Verify it on your device What the levels mean

Connection notes

  • Addresses are sent exactly as the manual lists them in hex; nothing is subtracted.
  • Every register here is a holding register (function code 3); writes use function code 6 or 16.
  • Missing quantities read as invalid, FFFF for unsigned and 7FFF... for signed values.
  • Only the Modbus RTU versions of the meter answer Modbus; M-Bus versions use a different protocol.

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 423297 0x5B00 uint32 ABCD V × 0.1
Voltage L2-Nvoltage_l2_n 423299 0x5B02 uint32 ABCD V × 0.1
Voltage L3-Nvoltage_l3_n 423301 0x5B04 uint32 ABCD V × 0.1
Voltage L1-L2voltage_l1_l2 423303 0x5B06 uint32 ABCD V × 0.1
Voltage L3-L2voltage_l3_l2 423305 0x5B08 uint32 ABCD V × 0.1
Voltage L1-L3voltage_l1_l3 423307 0x5B0A uint32 ABCD V × 0.1
Current 4 registers
Name and key Reference Address Type Byte order Unit Scale
Current L1current_l1 423309 0x5B0C uint32 ABCD A × 0.01
Current L2current_l2 423311 0x5B0E uint32 ABCD A × 0.01
Current L3current_l3 423313 0x5B10 uint32 ABCD A × 0.01
Current Ncurrent_n 423315 0x5B12 uint32 ABCD A × 0.01
Power 31 registers
Name and key Reference Address Type Byte order Unit Scale
Active power totalactive_power_total 423317 0x5B14 int32 ABCD W × 0.01
Active power L1active_power_l1 423319 0x5B16 int32 ABCD W × 0.01
Active power L2active_power_l2 423321 0x5B18 int32 ABCD W × 0.01
Active power L3active_power_l3 423323 0x5B1A int32 ABCD W × 0.01
Reactive power totalreactive_power_total 423325 0x5B1C int32 ABCD var × 0.01
Reactive power L1reactive_power_l1 423327 0x5B1E int32 ABCD var × 0.01
Reactive power L2reactive_power_l2 423329 0x5B20 int32 ABCD var × 0.01
Reactive power L3reactive_power_l3 423331 0x5B22 int32 ABCD var × 0.01
Apparent power totalapparent_power_total 423333 0x5B24 int32 ABCD VA × 0.01
Apparent power L1apparent_power_l1 423335 0x5B26 int32 ABCD VA × 0.01
Apparent power L2apparent_power_l2 423337 0x5B28 int32 ABCD VA × 0.01
Apparent power L3apparent_power_l3 423339 0x5B2A int32 ABCD VA × 0.01
Frequencyfrequency 423341 0x5B2C uint16 Hz × 0.01
Phase angle of power, totalphase_angle_power_total 423342 0x5B2D int16 deg × 0.1
Phase angle of power, L1phase_angle_power_l1 423343 0x5B2E int16 deg × 0.1
Phase angle of power, L2phase_angle_power_l2 423344 0x5B2F int16 deg × 0.1
Phase angle of power, L3phase_angle_power_l3 423345 0x5B30 int16 deg × 0.1
Phase angle of voltage, L1phase_angle_voltage_l1 423346 0x5B31 int16 deg × 0.1
Phase angle of voltage, L2phase_angle_voltage_l2 423347 0x5B32 int16 deg × 0.1
Phase angle of voltage, L3phase_angle_voltage_l3 423348 0x5B33 int16 deg × 0.1
Phase angle of current, L1phase_angle_current_l1 423352 0x5B37 int16 deg × 0.1
Phase angle of current, L2phase_angle_current_l2 423353 0x5B38 int16 deg × 0.1
Phase angle of current, L3phase_angle_current_l3 423354 0x5B39 int16 deg × 0.1
Power factor, totalpower_factor_total 423355 0x5B3A int16 × 0.001
Power factor, L1power_factor_l1 423356 0x5B3B int16 × 0.001
Power factor, L2power_factor_l2 423357 0x5B3C int16 × 0.001
Power factor, L3power_factor_l3 423358 0x5B3D int16 × 0.001
Current quadrant, totalquadrant_total 423359 0x5B3E uint16
Current quadrant, L1quadrant_l1 423360 0x5B3F uint16
Current quadrant, L2quadrant_l2 423361 0x5B40 uint16
Current quadrant, L3quadrant_l3 423362 0x5B41 uint16
Energy 11 registers
Name and key Reference Address Type Byte order Unit Scale
Active energy importactive_import_energy 420481 0x5000 uint64 ABCD kWh × 0.01
Active energy exportactive_export_energy 420485 0x5004 uint64 ABCD kWh × 0.01
Active energy netactive_net_energy 420489 0x5008 int64 ABCD kWh × 0.01
Reactive energy importreactive_import_energy 420493 0x500C uint64 ABCD kvarh × 0.01
Reactive energy exportreactive_export_energy 420497 0x5010 uint64 ABCD kvarh × 0.01
Reactive energy netreactive_net_energy 420501 0x5014 int64 ABCD kvarh × 0.01
Apparent energy importapparent_import_energy 420505 0x5018 uint64 ABCD kVAh × 0.01
Apparent energy exportapparent_export_energy 420509 0x501C uint64 ABCD kVAh × 0.01
Apparent energy netapparent_net_energy 420513 0x5020 int64 ABCD kVAh × 0.01
CO2 equivalent of active energy importactive_import_co2 420517 0x5024 uint64 ABCD kg × 0.001
Currency equivalent of active energy importactive_import_currency 420533 0x5034 uint64 ABCD currency × 0.001
Phase energy 27 registers
Name and key Reference Address Type Byte order Unit Scale
Active energy import, L1active_import_energy_l1 421601 0x5460 uint64 ABCD kWh × 0.01
Active energy import, L2active_import_energy_l2 421605 0x5464 uint64 ABCD kWh × 0.01
Active energy import, L3active_import_energy_l3 421609 0x5468 uint64 ABCD kWh × 0.01
Active energy export, L1active_export_energy_l1 421613 0x546C uint64 ABCD kWh × 0.01
Active energy export, L2active_export_energy_l2 421617 0x5470 uint64 ABCD kWh × 0.01
Active energy export, L3active_export_energy_l3 421621 0x5474 uint64 ABCD kWh × 0.01
Active energy net, L1active_net_energy_l1 421625 0x5478 int64 ABCD kWh × 0.01
Active energy net, L2active_net_energy_l2 421629 0x547C int64 ABCD kWh × 0.01
Active energy net, L3active_net_energy_l3 421633 0x5480 int64 ABCD kWh × 0.01
Reactive energy import, L1reactive_import_energy_l1 421637 0x5484 uint64 ABCD kvarh × 0.01
Reactive energy import, L2reactive_import_energy_l2 421641 0x5488 uint64 ABCD kvarh × 0.01
Reactive energy import, L3reactive_import_energy_l3 421645 0x548C uint64 ABCD kvarh × 0.01
Reactive energy export, L1reactive_export_energy_l1 421649 0x5490 uint64 ABCD kvarh × 0.01
Reactive energy export, L2reactive_export_energy_l2 421653 0x5494 uint64 ABCD kvarh × 0.01
Reactive energy export, L3reactive_export_energy_l3 421657 0x5498 uint64 ABCD kvarh × 0.01
Reactive energy net, L1reactive_net_energy_l1 421661 0x549C int64 ABCD kvarh × 0.01
Reactive energy net, L2reactive_net_energy_l2 421665 0x54A0 int64 ABCD kvarh × 0.01
Reactive energy net, L3reactive_net_energy_l3 421669 0x54A4 int64 ABCD kvarh × 0.01
Apparent energy import, L1apparent_import_energy_l1 421673 0x54A8 uint64 ABCD kVAh × 0.01
Apparent energy import, L2apparent_import_energy_l2 421677 0x54AC uint64 ABCD kVAh × 0.01
Apparent energy import, L3apparent_import_energy_l3 421681 0x54B0 uint64 ABCD kVAh × 0.01
Apparent energy export, L1apparent_export_energy_l1 421685 0x54B4 uint64 ABCD kVAh × 0.01
Apparent energy export, L2apparent_export_energy_l2 421689 0x54B8 uint64 ABCD kVAh × 0.01
Apparent energy export, L3apparent_export_energy_l3 421693 0x54BC uint64 ABCD kVAh × 0.01
Apparent energy net, L1apparent_net_energy_l1 421697 0x54C0 int64 ABCD kVAh × 0.01
Apparent energy net, L2apparent_net_energy_l2 421701 0x54C4 int64 ABCD kVAh × 0.01
Apparent energy net, L3apparent_net_energy_l3 421705 0x54C8 int64 ABCD kVAh × 0.01
Status 2 registers
Name and key Reference Address Type Byte order Unit Scale
Current tariffcurrent_tariff 435336 0x8A07 uint16
Power fail counterpower_fail_counter 435376 0x8A2F uint16
Identification 4 registers
Name and key Reference Address Type Byte order Unit Scale
Serial numberserial_number 435073 0x8900 uint32 ABCD
Meter firmware versionfirmware_version 435081 0x8908 string
Modbus mapping versionmapping_version 435089 0x8910 uint16
Type designationtype_designation 435169 0x8960 string
Tariff energy 16 registers
Name and key Reference Address Type Byte order Unit Scale
Active import energy, tariff 1active_import_energy_t1 420849 0x5170 uint64 ABCD kWh × 0.01
Active import energy, tariff 2active_import_energy_t2 420853 0x5174 uint64 ABCD kWh × 0.01
Active import energy, tariff 3active_import_energy_t3 420857 0x5178 uint64 ABCD kWh × 0.01
Active import energy, tariff 4active_import_energy_t4 420861 0x517C uint64 ABCD kWh × 0.01
Active export energy, tariff 1active_export_energy_t1 420881 0x5190 uint64 ABCD kWh × 0.01
Active export energy, tariff 2active_export_energy_t2 420885 0x5194 uint64 ABCD kWh × 0.01
Active export energy, tariff 3active_export_energy_t3 420889 0x5198 uint64 ABCD kWh × 0.01
Active export energy, tariff 4active_export_energy_t4 420893 0x519C uint64 ABCD kWh × 0.01
Reactive import energy, tariff 1reactive_import_energy_t1 420913 0x51B0 uint64 ABCD kvarh × 0.01
Reactive import energy, tariff 2reactive_import_energy_t2 420917 0x51B4 uint64 ABCD kvarh × 0.01
Reactive import energy, tariff 3reactive_import_energy_t3 420921 0x51B8 uint64 ABCD kvarh × 0.01
Reactive import energy, tariff 4reactive_import_energy_t4 420925 0x51BC uint64 ABCD kvarh × 0.01
Reactive export energy, tariff 1reactive_export_energy_t1 420945 0x51D0 uint64 ABCD kvarh × 0.01
Reactive export energy, tariff 2reactive_export_energy_t2 420949 0x51D4 uint64 ABCD kvarh × 0.01
Reactive export energy, tariff 3reactive_export_energy_t3 420953 0x51D8 uint64 ABCD kvarh × 0.01
Reactive export energy, tariff 4reactive_export_energy_t4 420957 0x51DC uint64 ABCD kvarh × 0.01
Resettable energy 4 registers
Name and key Reference Address Type Byte order Unit Scale
Resettable active energy importresettable_active_import_energy 421805 0x552C uint64 ABCD kWh × 0.01
Resettable active energy exportresettable_active_export_energy 421809 0x5530 uint64 ABCD kWh × 0.01
Resettable reactive energy importresettable_reactive_import_energy 421813 0x5534 uint64 ABCD kvarh × 0.01
Resettable reactive energy exportresettable_reactive_export_energy 421817 0x5538 uint64 ABCD kvarh × 0.01
I/O 2 registers
Name and key Reference Address Type Byte order Unit Scale
Output 1output_1 425345 0x6300 uint16
Output 2output_2 425346 0x6301 uint16
Settings 4 registers
Name and key Reference Address Type Byte order Unit Scale
Current transformer ratio numeratorct_ratio_numerator 435845 0x8C04 uint32 ABCD
Current transformer ratio denominatorct_ratio_denominator 435849 0x8C08 uint32 ABCD
Currency conversion factorcurrency_conversion_factor 436067 0x8CE2 uint32 ABCD currency/kWh × 0.01
LED pulse sourceled_source 436069 0x8CE4 uint16
Operations 10 registers
Name and key Reference Address Type Byte order Unit Scale
Reset power fail counterreset_power_fail_counter 436609 0x8F00 uint16
Reset power outage timereset_power_outage_time 436614 0x8F05 uint16
Reset input 3 counterreset_input_3_counter 436620 0x8F0B uint16
Reset input 4 counterreset_input_4_counter 436621 0x8F0C uint16
Reset input 3 stored statereset_input_3_stored_state 436628 0x8F13 uint16
Reset input 4 stored statereset_input_4_stored_state 436629 0x8F14 uint16
Reset resettable active energy importreset_resettable_active_import 436636 0x8F1B uint16
Reset resettable active energy exportreset_resettable_active_export 436637 0x8F1C uint16
Reset resettable reactive energy importreset_resettable_reactive_import 436638 0x8F1D uint16
Reset resettable reactive energy exportreset_resettable_reactive_export 436639 0x8F1E uint16

Source documents

  • B23/B24 User Manual , ABB, 2CMC485003M0201, Revision E (accessed 2026-10-31) Chapter 9, Communication with Modbus.

View this map on GitHub (YAML)

Read it by name

Read the B23/B24 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": {
    "b23-1": {
      "protocol": "modbus-tcp",
      "host": "192.168.10.40",
      "unit_id": 1,
      "map": "abb/b23-b24"
    }
  }
}

Ask your assistant

Read voltage_l1_n, voltage_l2_n, voltage_l3_n from b23-1.

The tool call it makes

read_named(device: "b23-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.

Modbus in Proxus Industrial connectivity