REDZ LKM124 Modbus register map
P1 Companion Standard meter to Modbus RTU gateway, RS485 on the Modbus side. Reads one meter
- Official
- 36 registers
- Modbus RTU
- Revision 2
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 RTU
- Unit ID
- 1
- Serial
- 9600 8N1 · 9600 baud, 8 data bits, none parity, 1 stop bit
- 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
- 36 holding registers
- Groups
- 3
- Translation tables
- 1
- Revision
- 2
- Added
- ()
- File
- maps/redz/lkm124.mbmap.json · 11 KB · history
- SHA-256
- 84613551cb108a836adb08b55f36d6d7ae1ffba821c8d53ed4f92d9d6d49c2f8
- Manufacturer
- redz-sc.com
Sources and notes
- LKM Series Electricity Meter Protocol to Modbus Protocol Gateways User Manual sections 6.1, 6.5-6.10 and 8 (standard 24-register firmware)
Source: REDZ, "LKM Series Electricity Meter Protocol to Modbus Protocol Gateways User Manual", sections 6.1, 6.5-6.10 and 8 (standard 24-register firmware)
- REDZ LKM124.
- Standard firmware with the OBIS_EURO list (24 values per meter). Other firmware (OBIS_EURO_1..14, TRF, 64-register versions) keeps the same addresses but maps different OBIS codes, so the names below would be wrong for it.
- Data addresses: the manual's table lists them as 1, 3, 5... (1-based), while its Modbus Poll and ZTerminal examples read
- Time at wire address 0 and 1.8.0 at 4. This map follows the examples. The settings (128-133) and monitoring (160-189)
- addresses are wire addresses, as the FC06/FC16 examples show.
- Values are the read-out digits without the decimal point, so no scale or unit is given: they depend on the meter.
- Mode switch 1 (OFF-OFF): 9600 8N1; modes 2-4 are 19200, 57600 and 115200 8N1 on both sides.
- Table code, reading method and init string are IEC 62056-21 settings; the manual does not say whether the P1 firmware uses them.
| Area | Address | Name | Type | Access | Unit | Scale | Description |
|---|---|---|---|---|---|---|---|
| HR | 0 | uint32 ABCD | R | OBIS 0.9.1. hhmmss as digits (10:25:07 reads 102507). 0 if not in the read-out | |||
| HR | 2 | uint32 ABCD | R | OBIS 0.9.2. yymmdd as digits (22-09-14 reads 220914). 0 if not in the read-out | |||
| HR | 4 | uint32 ABCD | R | OBIS 1.8.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 6 | uint32 ABCD | R | OBIS 2.8.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 8 | uint32 ABCD | R | OBIS 3.8.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 10 | uint32 ABCD | R | OBIS 4.8.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 12 | uint32 ABCD | R | OBIS 5.8.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 14 | uint32 ABCD | R | OBIS 6.8.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 16 | uint32 ABCD | R | OBIS 7.8.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 18 | uint32 ABCD | R | OBIS 8.8.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 20 | uint32 ABCD | R | OBIS 1.6.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 22 | uint32 ABCD | R | OBIS 2.6.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 24 | uint32 ABCD | R | OBIS 1.5.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 26 | uint32 ABCD | R | OBIS 1.7.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 28 | uint32 ABCD | R | OBIS 31.7.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 30 | uint32 ABCD | R | OBIS 51.7.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 32 | uint32 ABCD | R | OBIS 71.7.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 34 | uint32 ABCD | R | OBIS 32.7.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 36 | uint32 ABCD | R | OBIS 52.7.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 38 | uint32 ABCD | R | OBIS 72.7.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 40 | int32 ABCD | R | OBIS 13.7.0. Can be negative; the manual lists UInt32. 0 if not in the read-out | |||
| HR | 42 | uint32 ABCD | R | OBIS 14.7.0. Digits of the read-out value without the decimal point (e.g. 6895.2317 reads 68952317): apply the meter's decimals. 0 if not in the read-out | |||
| HR | 44 | uint32 ABCD | R | OBIS C.1.0. Meter ID / serial number. 0 if not in the read-out | |||
| HR | 46 | int32 ABCD | R | OBIS 16.7.0. Can be negative; the manual lists UInt32. 0 if not in the read-out | |||
| HR | 128 | uint16 | RW | Gateway slave id; answers the write with the old id | |||
| HR | 129 | uint16 | RW | s | Wait after each read attempt (default 10) | ||
| HR | 130 | uint16 | RW | ASCII code sent in the IEC 62056-21 option select message (0x30 = '0' default; 0x37 = '7') | |||
| HR | 131 | uint16 | RW | Default 1 | |||
| HR | 132 | uint16 | RW | Times the init string is sent before the request; 0 = off | |||
| HR | 133 | uint16 | RW | Meters read on the bus (this model reads one meter) | |||
| HR | 160 | uint32 ABCD | RW | IEC 62056-21 device address (usually the serial number); 0 = not used. Write with FC16 | |||
| HR | 162 | uint32 ABCD | R | Successful meter reads | |||
| HR | 164 | uint32 ABCD | R | s | Seconds since power-up; the gateway restarts every 24 h | ||
| HR | 166 | uint32 ABCD | R | 0xDDMYYYVV: day byte; month nibble; year 12 bits; version byte | |||
| HR | 168 | uint32 ABCD | R | Same layout as Firmware original; differs after a field upgrade | |||
| HR | 170 | uint32 ABCD | RW | 4 wake-up bytes sent before the read-out (needs Init string repeat count >= 1). Write with FC16 |
No registers match
Try part of the name, an address (decimal or 0x hex) or clear the filters.
Help improve this map
- I tested it on a deviceReport whether it worked, even if you did not write the map.
- Suggest a correctionEdit the file on GitHub; it opens a pull request.
- Report a problemA wrong address, type, scale or byte order.
- Read the formatWhat each key of the file means (SPEC.md).