MBMap Registry
  1. Devices
  2. Kostal
  3. KOSTAL Smart Energy Meter

Kostal KOSTAL Smart Energy Meter Modbus register map

Also covers KSEM

KOSTAL Smart Energy Meter (KSEM) as Modbus RTU slave (RS485 A/B) or Modbus TCP slave (port 502): internal OBIS power and energy registers

  • Official
  • 65 registers
  • Modbus TCP
  • Revision 3 · 2026-11-10
  • Identity: firmware, serial number

Official: Written from the manufacturer's documentation, but not tested on a device yet. Check the map against the manufacturer's documentation before you write to a live device. Tested it? Report a test.

Communication

Protocol
Modbus TCP
Unit ID
1
TCP port
502
Byte / word order
ABCD · bytes big-endian, words high first
Addresses
0-based

Connection values are defaults: the device may be configured differently.

Map

Registers
65 holding registers
Groups
3
Revision
3 · 2026-11-10
Added
()
File
maps/kostal/kostal-smart-energy-meter.mbmap.json · 14 KB · history
SHA-256
44446b73c037a8b0b4294183e6a4344481c4c3e8c8ec8a42880782e0cfbe8d05
Manufacturer
kostal-solar-electric.com

Device identity

What a tool can read to check that this map fits the connected device (SPEC.md section 4.7). Registers with a role are read like any other register.

Registers
RoleRegisterAddressTypeValues
Serial number Serial number holding 8228 string[16]
Firmware Firmware major holding 8195 uint16 bits 8–15
Firmware Firmware minor holding 8195 uint16 bits 0–7

Sources and notes

Source: KOSTAL Solar Electric, "KOSTAL Smart Energy Meter - Modbus interface description" (BA KOSTAL Interface KSEM EN)

  • Registers are read with FC03. Multi-register values are big-endian, high word first; request all registers of a value in one read.
  • Modbus TCP slave listens on port 502 (802 with TLS). The RS-485 ports are configured in the web interface; the document gives no serial defaults.
  • Power values are split into + (import) and - (export) registers, each unsigned.
  • Unlisted registers return exception 0x02. Only the identity part of the KSEM/RM PnP block (8195 and 8196 to 8243) is in this map. Not in this map: the rest of the PnP block (8192 onwards), the SunSpec block (40000-40177), and the energy flow, wallbox, group and sensor blocks.
AreaAddressNameTypeAccessUnitScaleDescription
HR 0 uint32 ABCD R W ×0.1 OBIS 1-0:1.4.0*255
HR 2 uint32 ABCD R W ×0.1 OBIS 1-0:2.4.0*255
HR 4 uint32 ABCD R var ×0.1 OBIS 1-0:3.4.0*255
HR 6 uint32 ABCD R var ×0.1 OBIS 1-0:4.4.0*255
HR 16 uint32 ABCD R VA ×0.1 OBIS 1-0:9.4.0*255
HR 18 uint32 ABCD R VA ×0.1 OBIS 1-0:10.4.0*255
HR 24 int32 ABCD R ×0.001 OBIS 1-0:13.4.0*255
HR 26 uint32 ABCD R Hz ×0.001 OBIS 1-0:14.4.0*255
HR 40 uint32 ABCD R W ×0.1 OBIS 1-0:21.4.0*255
HR 42 uint32 ABCD R W ×0.1 OBIS 1-0:22.4.0*255
HR 44 uint32 ABCD R var ×0.1 OBIS 1-0:23.4.0*255
HR 46 uint32 ABCD R var ×0.1 OBIS 1-0:24.4.0*255
HR 56 uint32 ABCD R VA ×0.1 OBIS 1-0:29.4.0*255
HR 58 uint32 ABCD R VA ×0.1 OBIS 1-0:30.4.0*255
HR 60 uint32 ABCD R A ×0.001 OBIS 1-0:31.4.0*255
HR 62 uint32 ABCD R V ×0.001 OBIS 1-0:32.4.0*255
HR 64 int32 ABCD R ×0.001 OBIS 1-0:33.4.0*255
HR 80 uint32 ABCD R W ×0.1 OBIS 1-0:41.4.0*255
HR 82 uint32 ABCD R W ×0.1 OBIS 1-0:42.4.0*255
HR 84 uint32 ABCD R var ×0.1 OBIS 1-0:43.4.0*255
HR 86 uint32 ABCD R var ×0.1 OBIS 1-0:44.4.0*255
HR 96 uint32 ABCD R VA ×0.1 OBIS 1-0:49.4.0*255
HR 98 uint32 ABCD R VA ×0.1 OBIS 1-0:50.4.0*255
HR 100 uint32 ABCD R A ×0.001 OBIS 1-0:51.4.0*255
HR 102 uint32 ABCD R V ×0.001 OBIS 1-0:52.4.0*255
HR 104 int32 ABCD R ×0.001 OBIS 1-0:53.4.0*255
HR 120 uint32 ABCD R W ×0.1 OBIS 1-0:61.4.0*255
HR 122 uint32 ABCD R W ×0.1 OBIS 1-0:62.4.0*255
HR 124 uint32 ABCD R var ×0.1 OBIS 1-0:63.4.0*255
HR 126 uint32 ABCD R var ×0.1 OBIS 1-0:64.4.0*255
HR 136 uint32 ABCD R VA ×0.1 OBIS 1-0:69.4.0*255
HR 138 uint32 ABCD R VA ×0.1 OBIS 1-0:70.4.0*255
HR 140 uint32 ABCD R A ×0.001 OBIS 1-0:71.4.0*255
HR 142 uint32 ABCD R V ×0.001 OBIS 1-0:72.4.0*255
HR 144 int32 ABCD R ×0.001 OBIS 1-0:73.4.0*255
HR 146 uint32 ABCD R W ×0.1
HR 512 uint64 ABCD R Wh ×0.1 OBIS 1-0:1.8.0*255
HR 516 uint64 ABCD R Wh ×0.1 OBIS 1-0:2.8.0*255
HR 520 uint64 ABCD R varh ×0.1 OBIS 1-0:3.8.0*255
HR 524 uint64 ABCD R varh ×0.1 OBIS 1-0:4.8.0*255
HR 544 uint64 ABCD R VAh ×0.1 OBIS 1-0:9.8.0*255
HR 548 uint64 ABCD R VAh ×0.1 OBIS 1-0:10.8.0*255
HR 592 uint64 ABCD R Wh ×0.1 OBIS 1-0:21.8.0*255
HR 596 uint64 ABCD R Wh ×0.1 OBIS 1-0:22.8.0*255
HR 600 uint64 ABCD R varh ×0.1 OBIS 1-0:23.8.0*255
HR 604 uint64 ABCD R varh ×0.1 OBIS 1-0:24.8.0*255
HR 624 uint64 ABCD R VAh ×0.1 OBIS 1-0:29.8.0*255
HR 628 uint64 ABCD R VAh ×0.1 OBIS 1-0:30.8.0*255
HR 672 uint64 ABCD R Wh ×0.1 OBIS 1-0:41.8.0*255
HR 676 uint64 ABCD R Wh ×0.1 OBIS 1-0:42.8.0*255
HR 680 uint64 ABCD R varh ×0.1 OBIS 1-0:43.8.0*255
HR 684 uint64 ABCD R varh ×0.1 OBIS 1-0:44.8.0*255
HR 704 uint64 ABCD R VAh ×0.1 OBIS 1-0:49.8.0*255
HR 708 uint64 ABCD R VAh ×0.1 OBIS 1-0:50.8.0*255
HR 752 uint64 ABCD R Wh ×0.1 OBIS 1-0:61.8.0*255
HR 756 uint64 ABCD R Wh ×0.1 OBIS 1-0:62.8.0*255
HR 760 uint64 ABCD R varh ×0.1 OBIS 1-0:63.8.0*255
HR 764 uint64 ABCD R varh ×0.1 OBIS 1-0:64.8.0*255
HR 784 uint64 ABCD R VAh ×0.1 OBIS 1-0:69.8.0*255
HR 788 uint64 ABCD R VAh ×0.1 OBIS 1-0:70.8.0*255
HR 8196 string[16] R KSEM/RM PnP block, padded with NUL bytes
HR 8212 string[16] R KSEM/RM PnP block, padded with NUL bytes
HR 8228 string[16] R KSEM/RM PnP block, padded with NUL bytes
HR 8195 uint16 bits 8–15 R KSEM/RM PnP block: 0x0103 is 1.3.x
HR 8195 uint16 bits 0–7 R KSEM/RM PnP block: 0x0103 is 1.3.x

Help improve this map