Easy Modbus
  1. Home
  2. Modbus register maps
  3. Datakom
  4. D-300 / D-500 / D-700 genset controllers

Generator controller · Modbus register map

Datakom D-300 / D-500 / D-700 genset controllers Modbus register map

Updated 28 October 2026

Short answer

Datakom's D-series units control a single genset (D-300, D-500) or a synchronising genset (D-700) and expose Modbus RTU on RS-485/RS-232 and Modbus TCP on Ethernet or GPRS. Everything sits in holding registers read with function 3. This map covers the 16-bit live values (frequencies, battery and charge voltages, oil pressure, fuel level, rpm), the operating status and mode, the shutdown and warning alarm bits, the function flags and the pushbutton-simulation register used for remote start/stop; all 32-bit values are left out (see notes).

This page lists 29 Modbus registers for the Datakom D-300 / D-500 / D-700 genset controllers — 1 writable — with the table, 0-based wire address, data type, word order, scale, units and access of each, re-typed from Datakom’s own free documentation (linked below) and checked against it.

Manufacturer
Datakom
Model
D-300 / D-500 / D-700 genset controllers
Equipment type
Generator controller
Registers
29 (1 writable)
Transport
Modbus RTU, Modbus TCP
Default unit ID
1
Default serial
8N1
TCP port
502
Documented addressing
0-based (the number printed is the address on the wire)
Firmware
Manual revision 03 (10.09.2015) updated for firmware 5.6
Also known as
D-300, D-500, D-700, D300, D500, D700
Source document
D-300 / 500 / 700 Modbus Application Manual · 500-MODBUS V5.6 · rev. 2016-04-25
Download CSV all columns JSON Manufacturer PDF ↗

Integration notes: Datakom D-300 / D-500 / D-700 genset controllers

Integration in brief

Read 10604 (operation status), 10605 (mode) and the summary flags at 11558 with function 3, then 10338-10341 for frequencies and battery voltage. Remote control is done by writing a single bit to 8193 to simulate a panel key (Stop, Run/Manual, Auto, Test).

Minimum registers to map

Addresses are 0-based wire addresses. Enough to monitor and run the unit; map more as the job needs.

RegisterNameTypeWhyAccess
HR 10604Unit operation statusUINT16Genset sequence stateRead
HR 10605Unit modeUINT16STOP / RUN / AUTO / TEST modeRead
HR 11558Function flags 48-63BITMAP16Shutdown, loaddump and warning summary flagsRead
HR 11557Function flags 32-47BITMAP16Mains fail and engine running flagsRead
HR 10339Genset frequencyUINT16Genset frequencyRead
HR 10341Battery voltageUINT16Battery voltageRead
HR 10376Engine rpmUINT16Engine speedRead
HR 8193Pushbutton simulationBITMAP16Remote key pressesWrite

Enable Modbus control & writes

Set a Modbus slave address (1-240). For RS-485 set 'RS-485 Enable' to 1 and pick a baud rate; for Ethernet set 'Ethernet Enable' to 1, the Modbus TCP port (usually 502) and the IP, gateway and subnet; the first User IP Mask should be 255.255.255.0.

Byte order & addressing

Network setup

Watch out for

Datakom D-300 / D-500 / D-700 genset controllers Modbus registers

Address = 0-based wire address (the documented number is shown under it when it differs) · Order: ABCD = high word first, CDAB = low word first · Scale: engineering value = raw × scale.

29 of 29 shown
Datakom D-300 / D-500 / D-700 genset controllers Modbus register map
TableAddressNameDescriptionTypeOrderScaleUnitsAccessValues / bits
HR8193Pushbutton simulationWrite a bit to press the matching front-panel key remotely.BITMAP16Writebit 0 = Stop button; bit 1 = Run button (D-500) / Manual button (D-700); bit 2 = Auto button; bit 3 = Test button; bit 4 = Run button (D-700); bit 5 = GCB button; bit 6 = MCB button; bit 7 = Menu+ button; bit 8 = Menu- button; bit 9 = Up button; bit 10 = Down button; bit 14 = Button long pressed; bit 15 = Button very long pressed
HR10338Mains frequencyUINT16× 0.01HzRead
HR10339Genset frequencyUINT16× 0.01HzRead
HR10340Charge input voltageCharge alternator (D+) input voltage.UINT16× 0.01VRead
HR10341Battery voltageStarter battery voltage.UINT16× 0.01VRead
HR10343Charge input 2 voltageSecond charge input voltage.UINT16× 0.01VRead
HR10344Battery 2 voltageSecond battery voltage.UINT16× 0.01VRead
HR10361Oil pressureEngine oil pressure in bar.UINT16× 0.1barRead
HR10363Fuel levelUINT16× 0.1%Read
HR10375Magnetic pickup readingSpeed measured on the magnetic pickup input.UINT16rpmRead
HR10376Engine rpmUINT16rpmRead
HR10385Minimum cranking battery voltageLowest battery voltage seen during the last crank.UINT16× 0.01VRead
HR10507doc 10507 (in 10504-10519)Shutdown alarm bits 48-63Word 4 of the shutdown alarm bit array; bit 0 = alarm 48.BITMAP16Readbit 0 = Genset low frequency; bit 1 = Genset high frequency; bit 2 = Genset low RPM; bit 3 = Genset high RPM; bit 4 = Genset low voltage; bit 5 = Genset high voltage; bit 6 = Low oil pressure; bit 7 = High oil pressure; bit 8 = Low engine temperature; bit 9 = High engine temperature; bit 10 = Low fuel level; bit 11 = High fuel level; bit 12 = Low oil temperature; bit 13 = High oil temperature; bit 14 = Low canopy temperature; bit 15 = High canopy temperature
HR10510doc 10510 (in 10504-10519)Shutdown alarm bits 96-111Word 7 of the shutdown alarm bit array; bit 0 = alarm 96.BITMAP16Readbit 0 = Low battery voltage; bit 1 = High battery voltage; bit 2 = Fail to start; bit 3 = Fail to stop; bit 4 = Low charge voltage; bit 5 = J1939 ECU error; bit 6 = High air inlet temperature; bit 7 = Low coolant level; bit 8 = Voltage unbalance; bit 9 = Current unbalance; bit 10 = Over current; bit 11 = Over load; bit 12 = Reverse power; bit 13 = Genset phase order fail; bit 14 = Mains phase order fail; bit 15 = Genset CB fail to close
HR10511doc 10511 (in 10504-10519)Shutdown alarm bits 112-127Word 8 of the shutdown alarm bit array; bit 0 = alarm 112.BITMAP16Readbit 0 = Genset CB fail to open; bit 1 = Mains CB fail to close; bit 2 = Mains CB fail to open; bit 3 = Device address fail; bit 4 = Comm. bus error; bit 5 = Excitation lost; bit 6 = Service 1 request; bit 7 = Service 2 request; bit 8 = Service 3 request; bit 9 = G59: no mains frequency; bit 10 = G59: mains frequency fail; bit 11 = G59: mains reverse power; bit 12 = G59: ROCOF df/dt; bit 13 = G59: vector shift; bit 14 = NVM function failure; bit 15 = Communication lost
HR10539doc 10539 (in 10536-10551)Warning alarm bits 48-63Word 4 of the warning alarm bit array; bit 0 = alarm 48.BITMAP16Readbit 0 = Genset low frequency; bit 1 = Genset high frequency; bit 2 = Genset low RPM; bit 3 = Genset high RPM; bit 4 = Genset low voltage; bit 5 = Genset high voltage; bit 6 = Low oil pressure; bit 7 = High oil pressure; bit 8 = Low engine temperature; bit 9 = High engine temperature; bit 10 = Low fuel level; bit 11 = High fuel level; bit 12 = Low oil temperature; bit 13 = High oil temperature; bit 14 = Low canopy temperature; bit 15 = High canopy temperature
HR10542doc 10542 (in 10536-10551)Warning alarm bits 96-111Word 7 of the warning alarm bit array; bit 0 = alarm 96.BITMAP16Readbit 0 = Low battery voltage; bit 1 = High battery voltage; bit 2 = Fail to start; bit 3 = Fail to stop; bit 4 = Low charge voltage; bit 5 = J1939 ECU error; bit 6 = High air inlet temperature; bit 7 = Low coolant level; bit 8 = Voltage unbalance; bit 9 = Current unbalance; bit 10 = Over current; bit 11 = Over load; bit 12 = Reverse power; bit 13 = Genset phase order fail; bit 14 = Mains phase order fail; bit 15 = Genset CB fail to close
HR10543doc 10543 (in 10536-10551)Warning alarm bits 112-127Word 8 of the warning alarm bit array; bit 0 = alarm 112.BITMAP16Readbit 0 = Genset CB fail to open; bit 1 = Mains CB fail to close; bit 2 = Mains CB fail to open; bit 3 = Device address fail; bit 4 = Comm. bus error; bit 5 = Excitation lost; bit 6 = Service 1 request; bit 7 = Service 2 request; bit 8 = Service 3 request; bit 9 = G59: no mains frequency; bit 10 = G59: mains frequency fail; bit 11 = G59: mains reverse power; bit 12 = G59: ROCOF df/dt; bit 13 = G59: vector shift; bit 14 = NVM function failure; bit 15 = Communication lost
HR10604Unit operation statusCurrent step of the genset control sequence.UINT16Read0 = Genset at rest; 1 = Wait before fuel; 2 = Engine preheat; 3 = Wait oil flash off; 4 = Crank rest; 5 = Cranking; 6 = Engine run idle speed; 7 = Engine heating; 8 = Running off load; 9 = Synchronizing to mains; 10 = Load transfer to genset; 11 = Gen CB activation; 12 = Genset CB timer; 13 = Master genset on load; 14 = Peak lopping; 15 = Power exporting; 16 = Slave genset on load; 17 = Synchronizing back to mains; 18 = Load transfer to mains; 19 = Mains CB activation; 20 = Mains CB timer; 21 = Stop with cooldown; 22 = Cooling down; 23 = Engine stop idle speed; 24 = Immediate stop; 25 = Engine stopping
HR10605Unit modeSelected operating mode.UINT16Read1 = STOP; 2 = RUN (D-500) / MANUAL (D-700); 4 = AUTO; 8 = TEST
HR10607GOV control outputGovernor (speed) control output level.UINT16× 0.1%Read
HR10608AVR control outputVoltage regulator control output level.UINT16× 0.1%Read
HR10609Device identityModel code, e.g. 0xD500 for a D-500.UINT16Read
HR10610Hardware versionUINT16Read
HR10611Software versionUINT16Read
HR11173Battery charge currentUINT16× 0.1ARead
HR11555doc 11555 (in 11555-11568)Function flags 0-15Output functions currently active (fuel, crank, contactors).BITMAP16Readbit 0 = Fuel; bit 1 = Horn; bit 2 = Crank; bit 3 = Stop solenoid; bit 4 = Genset contactor; bit 5 = Mains contactor; bit 6 = Idle speed; bit 7 = Preheat; bit 8 = Alternate crank; bit 9 = Fuel main winding; bit 10 = Genset close pulse; bit 11 = Genset open pulse; bit 12 = Genset UV coil; bit 13 = Mains close pulse; bit 14 = Mains open pulse; bit 15 = Mains UV coil
HR11557doc 11557 (in 11555-11568)Function flags 32-47Readiness, mains-fail and engine-running flags.BITMAP16Readbit 0 = Bus bar UV coil; bit 1 = Load shedding; bit 2 = Load add; bit 3 = Load subtract; bit 4 = Service 1 request; bit 5 = Service 2 request; bit 6 = Service 3 request; bit 7 = Mains phase order fail; bit 8 = Genset phase order fail; bit 9 = Auto ready; bit 10 = Weekly schedule on; bit 11 = Exerciser on; bit 12 = Mains fail; bit 13 = Program mode active; bit 14 = Engine running; bit 15 = Genset voltage OK
HR11558doc 11558 (in 11555-11568)Function flags 48-63Summary alarm flags and the active mode.BITMAP16Readbit 0 = Alarm check enable; bit 1 = Oil pressure OK; bit 2 = Shutdown alarm; bit 3 = Loaddump alarm; bit 4 = Warning alarm; bit 5 = Shutdown or loaddump; bit 6 = Shutdown or loaddump or warning; bit 7 = Test mode; bit 8 = Auto mode; bit 9 = Manual mode; bit 10 = Off mode; bit 11 = Not in auto; bit 12 = Genset at rest; bit 13 = Waiting before fuel; bit 14 = Preheating; bit 15 = Waiting oil flash off

Notes on this map

Check it against the live device. A register map tells you what the controller can expose; the unit in front of you may differ by firmware or options. Read a few registers and compare them with the unit’s own display; for a 32-bit value the float and byte-order decoder shows all four word orders at once, so a wrong word order or scale is obvious. New to this? Read what a register map is and why addresses are off by one.

Questions about the Datakom D-300 / D-500 / D-700 genset controllers

What Modbus registers does the Datakom D-300 / D-500 / D-700 genset controllers have?

This map lists 29 registers: 29 holding registers. 1 of them can be written. Registers vary with firmware, options and configuration, so confirm against the device.

Are the Datakom D-300 / D-500 / D-700 genset controllers Modbus addresses 0-based or 1-based?

The manufacturer's document numbers registers 0-based (the number printed is the address on the wire). Every address on this page is the 0-based wire address you put in the request; the documented number is shown under it where it differs. The register tables print decimal addresses and they go on the wire unchanged. The manual's read example asks for 16 registers 'starting from address 20h (32 decimal)' with the frame 01 03 00 20 00 10, and its write example puts register 40h in the frame as 00 40. So 10338 (mains frequency) is requested as 10338, with no 40001 offset and no minus 1.

What are the minimum Modbus registers to integrate the Datakom D-300 / D-500 / D-700 genset controllers?

Start with HR 10604 Unit operation status (Genset sequence state); HR 10605 Unit mode (STOP / RUN / AUTO / TEST mode); HR 11558 Function flags 48-63 (Shutdown, loaddump and warning summary flags); HR 11557 Function flags 32-47 (Mains fail and engine running flags); HR 10339 Genset frequency (Genset frequency); HR 10341 Battery voltage (Battery voltage); HR 10376 Engine rpm (Engine speed); HR 8193 Pushbutton simulation (Remote key presses).

How do I enable Modbus control of the Datakom D-300 / D-500 / D-700 genset controllers?

Set a Modbus slave address (1-240). For RS-485 set 'RS-485 Enable' to 1 and pick a baud rate; for Ethernet set 'Ethernet Enable' to 1, the Modbus TCP port (usually 502) and the IP, gateway and subnet; the first User IP Mask should be 255.255.255.0.

Where is the official Datakom D-300 / D-500 / D-700 genset controllers Modbus documentation?

The source is D-300 / 500 / 700 Modbus Application Manual (500-MODBUS V5.6), revision 2016-04-25, published free by Datakom at https://www.datakom.com.tr/upload/Files/500_MODBUS.pdf.

Source: D-300 / 500 / 700 Modbus Application Manual · 500-MODBUS V5.6 · rev. 2016-04-25. Register numbers, types, scaling and units are reproduced as published; descriptions are our own.