MBMap Registry
  1. Devices
  2. Circutor
  3. ReadWatt

Circutor ReadWatt Modbus register map

Optical pulse sensor that sticks onto the pulse LED of an energy meter and totalises its pulses over Modbus RTU (RS-485 and RS-232)

  • Official
  • 13 registers
  • Modbus RTU
  • Revision 1 · 2026-11-10
  • Identity: 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 RTU
Unit ID
10
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
13 holding registers
Groups
3
Translation tables
1
Revision
1 · 2026-11-10
Added
()
File
maps/circutor/readwatt.mbmap.json · 4 KB · history
SHA-256
878094c88f4fc625df4d26741395e1b0589464d44d4048cdbb758c5ec3b2a6b3
Manufacturer
circutor.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 96 uint32 ABCD

Sources and notes

Source: Circutor, "ReadWatt pulse sensor, Instruction manual", M018B01-10-22A

  • Read with FC03 or FC04 and write with FC10; a request must cover the full size of each variable.
  • Both ports share one baud rate (9600, 19200 or 38400, 8N1). At start-up the LED flashes 1, 2 or 3 times to show 9600, 19200 or 38400.
  • The manual does not give the unit of the pulse and count registers, the word order of the 64-bit values or the format of the firmware version, so those are left as plain counts with the usual big-endian layout.
  • A broadcast write (address 0) to 0x0BBA changes the address and baud rate of a unit whose address is unknown. It needs the serial number and is not mapped here (manual 4.3.5).
AreaAddressNameTypeAccessUnitScaleDescription
HR 1536 uint64 ABCD R Total pulses read from the meter LED
HR 1540 uint64 ABCD R Counter totalised with the output pulse weight
HR 2000 uint64 ABCD RW Same kind of counter, which can be written to preset it
HR 8 uint16 RW Default 10
HR 268 uint16 RW Default 0 (9600); shared by RS-232 and RS-485
HR 262 uint16 RW ms Default 250 ms
HR 263 uint16 RW ms Default 2 ms
HR 264 uint16 RW Value added to the count register for each output pulse. Default 10
HR 265 uint16 RW Ratio between the optical pulses and the count register. Default 1000
HR 266 uint16 RW Voltage ratio times current ratio of a medium-voltage installation; 1 for direct measurement. Default 1
HR 267 uint16 RW ms Width of the pulse on the open-collector output. Default 100 ms; 2 to 250 ms
HR 96 uint32 ABCD R Printed in decimal on the label
HR 80 string[3] R Three registers (6 bytes); the format is not documented

Help improve this map