- Home
- Modbus register maps
- Woodward
- easYgen-3000XT Series
Generator controller · Modbus register map
Woodward easYgen-3000XT Series Modbus register map
Updated 24 October 2026
The easYgen-3000XT is Woodward's genset controller for standby, AMF, peak-shaving and mains-parallel plants. It is a Modbus RTU slave on RS-485 and a Modbus TCP server on Ethernet. Measurements, status and alarm flags are read from a fixed telegram (protocol 5010) starting at address 50000; remote start/stop, acknowledge and interface setpoints are written to parameter addresses 503-511. This page covers generator, mains and engine values, the main status and alarm words, and the remote-control words.
This page lists 90 Modbus registers for the Woodward easYgen-3000XT Series — 8 writable — with the table, 0-based wire address, data type, word order, scale, units and access of each, re-typed from Woodward’s own free documentation (linked below) and checked against it.
- Manufacturer
- Woodward
- Model
- easYgen-3000XT Series
- Equipment type
- Generator controller
- Registers
- 90 (8 writable)
- Transport
- Modbus RTU, Modbus TCP
- Default unit ID
- 1
- Default serial
- 19200 baud, 8N1
- Documented addressing
- 0-based (the number printed is the address on the wire)
- 32-bit word order
- ABCD high word first (big-endian)
- Firmware
- Release 2.17-0
- Also known as
- easYgen-3100XT-P1, easYgen-3200XT-P1, easYgen-3200XT-P1-LT, easYgen-3100XT, easYgen-3200XT
Integration notes: Woodward easYgen-3000XT Series
Block-read holding registers from 50000 (up to 128 per request) for status and alarms, and the 32-bit generator and mains values at 50322-50411. To start or stop the set, write parameter 503 with 0 and then the start (bit 0) or stop (bit 1) bit; acknowledge alarms by pulsing bit 4 twice.
Minimum registers to map
Addresses are 0-based wire addresses. Enough to monitor and run the unit; map more as the job needs.
| Register | Name | Type | Why | Access |
|---|---|---|---|---|
| HR 50099 | Control mode | BITMAP16 | Operating mode (AUTO/STOP/MANUAL/TEST) | Read |
| HR 50104 | Control bits 3 | BITMAP16 | GCB / MCB closed flags | Read |
| HR 50114 | Alarm general | BITMAP16 | Latched alarm classes A-F | Read |
| HR 50009 | Generator frequency | INT16 | Generator frequency | Read |
| HR 50322 | Total generator active power | INT32 ABCD | Total generator active power (32-bit) | Read |
| HR 50346 | Generator voltage L1-L2 | INT32 ABCD | Generator voltage L1-L2 (32-bit) | Read |
| HR 50336 | Generator current 1 | INT32 ABCD | Generator current 1 (32-bit) | Read |
| HR 50052 | Battery voltage | INT16 | Battery voltage | Read |
| HR 503 | Remote control word 1 | BITMAP16 | Remote start / stop / acknowledge | Read/write |
Enable Modbus control & writes
RS-485: set Modbus slave ID (parameter 3188, default 1; 0 disables Modbus) and baud/parity/stop bits (3170-3172). Ethernet: set Modbus/TCP slave ID (7485) and the Ethernet A IP settings, then turn on the matching 'Set IP address' parameter. Protocol number 3184 must stay 5010 for this map; a change needs a reboot. For a remote start, the LogicsManager start request must include 04.13 Remote request.
Communication loss & watchdog
No Modbus communication timeout is documented. Bits 2 and 3 of parameter 503 must always be 0; the manual reserves them for a watchdog. A remote start request (04.13) stays set until a stop bit arrives or power is lost.
Byte order & addressing
- Start, stop and acknowledge act on rising edges: write 0, then the bit. Writing the same value again does nothing.
- Acknowledge needs two rising edges of bit 4: the first silences the horn, the second resets alarms that are no longer active.
- Status-word bit numbers here follow the manual's masks: mask 8000h = bit 15.
- Reads use function 03; parameters are written with 06 or 16. Parameters are accessed one at a time, with a length that matches their data type.
- Some PC tools need the address shifted by one (e.g. 504 instead of 503); the manual says to try both.
- Each parameter ID has its own address, and a 32-bit parameter is read or written as 2 registers starting at that address (high word first). So 507 (INT32) is sent as 507+508 in one request, yet 508 alone is the separate PF setpoint; likewise 510 and 511. Never block-read or block-write across 503-511; send one request per parameter with the length of its data type.
Network setup
- RS-485 defaults: 19.2 kBd, no parity, one stop bit, full-duplex mode (parameter 3173). Select half-duplex for a two-wire bus and set a reply delay (3189) if the master needs it.
- Modbus/TCP: up to 5 sockets. An idle socket closes after about 2.2 s and opening one takes about 200 ms, so poll continuously or expect reconnects.
- The manual recommends a 10 ms pause after each response; RTU replies can take up to 2-3 s on display / plastic-housing units.
Watch out for
- This controller starts engines and closes breakers. Make sure the site is safe and the operators know before writing parameter 503.
- Bit 9 of parameter 503 sets 03.40 Remote Shutdown. One chapter says it shuts the engine down at once, but the configuration chapters route 03.40 through a LogicsManager flag and a free alarm with a shutdown class. Check how your unit is set up before relying on it.
- Writing setpoints 507-511 changes nothing until the AnalogManager setpoint source points at the interface value.
- Password protection for Modbus RS-485 (9128) and Ethernet (9129) defaults to On. The manual says the remote-control words and interface setpoints need no password; parameter changes do.
Woodward easYgen-3000XT Series 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.
| Table | Address | Name | Description | Type | Order | Scale | Units | Access | Values / bits |
|---|---|---|---|---|---|---|---|---|---|
| HR | 503doc 40504 (parameter 503) | Remote control word 1 | Start, stop, acknowledge and shutdown on rising edges; write 0 then 1. | BITMAP16 | Read/write | bit 0 = Start (rising edge); bit 1 = Stop (rising edge); bit 2 = Must always be 0; bit 3 = Must always be 0; bit 4 = External acknowledge (rising edge, needed twice); bit 9 = Shutdown command (rising edge) | |||
| HR | 504doc 40505 (parameter 504) | Remote control word 2 | Selects setpoint 2 instead of setpoint 1 for P, PF, frequency, voltage. | BITMAP16 | Read/write | bit 4 = Request voltage setpoint 2 (04.37); bit 5 = Request frequency setpoint 2 (04.38); bit 6 = Request power factor setpoint 2 (04.39); bit 7 = Request active power setpoint 2 (04.40) | |||
| HR | 505doc 40506 (parameter 505) | Remote control word 3 | Sixteen free remote-control bits for LogicsManager use. | BITMAP16 | Read/write | bit 0 = Remote control bit 1 (04.44); bit 1 = Remote control bit 2 (04.45); bit 2 = Remote control bit 3 (04.46); bit 3 = Remote control bit 4 (04.47); bit 4 = Remote control bit 5 (04.48); bit 5 = Remote control bit 6 (04.49); bit 6 = Remote control bit 7 (04.50); bit 7 = Remote control bit 8 (04.51); bit 8 = Remote control bit 9 (04.52); bit 9 = Remote control bit 10 (04.53); bit 10 = Remote control bit 11 (04.54); bit 11 = Remote control bit 12 (04.55); bit 12 = Remote control bit 13 (04.56); bit 13 = Remote control bit 14 (04.57); bit 14 = Remote control bit 15 (04.58); bit 15 = Remote control bit 16 (04.59) | |||
| HR | 507doc 40508 (parameter 507) | Remote active power setpoint | Interface P setpoint (05.56), kW x 10. Write 2 registers at this address; used only if an AnalogManager selects it. | INT32 | ABCD | × 0.1 | kW | Read/write | |
| HR | 508doc 40509 (parameter 508) | Remote power factor setpoint | Interface PF setpoint (05.12); 1000 = 1.00, +710 inductive, -710 capacitive. Separate from 507. | INT16 | × 0.001 | Read/write | |||
| HR | 509doc 40510 (parameter 509) | Remote frequency setpoint | Interface frequency setpoint (05.53); 5000 = 50.00 Hz. Its own parameter. | INT16 | × 0.01 | Hz | Read/write | ||
| HR | 510doc 40511 (parameter 510) | Remote voltage setpoint | Interface voltage setpoint (05.59); 400 = 400 V. Write 2 registers at this address. | UINT32 | ABCD | V | Read/write | ||
| HR | 511doc 40512 (parameter 511) | Remote reactive power setpoint | Interface kvar setpoint (05.83), signed; 1000 = 100.0 kvar. Write 2 registers at this address. | INT32 | ABCD | × 0.1 | kvar | Read/write | |
| HR | 50000 | Protocol ID | Always reads 5010 when the default visualization protocol is active. | INT16 | Read | ||||
| HR | 50009 | Generator frequency | INT16 | × 0.01 | Hz | Read | |||
| HR | 50012 | Generator power factor | Transmitted as PF x 1000. | INT16 | × 0.001 | Read | |||
| HR | 50022 | Busbar 1 frequency | INT16 | × 0.01 | Hz | Read | |||
| HR | 50030 | Mains frequency | INT16 | × 0.01 | Hz | Read | |||
| HR | 50033 | Mains power factor | Transmitted as PF x 1000. | INT16 | × 0.001 | Read | |||
| HR | 50045 | Nominal real power in system | INT16 | × 0.01 | % | Read | |||
| HR | 50046 | Real power in system | INT16 | × 0.01 | % | Read | |||
| HR | 50047 | Reserve real power in system | INT16 | × 0.01 | % | Read | |||
| HR | 50051 | Engine pickup speed | Speed from the magnetic pickup input. | INT16 | rpm | Read | |||
| HR | 50052 | Battery voltage | INT16 | × 0.1 | V | Read | |||
| HR | 50053 | Auxiliary excitation D+ | Charging alternator D+ voltage. | INT16 | × 0.1 | V | Read | ||
| HR | 50054 | Engine number of start requests | INT16 | Read | |||||
| HR | 50055 | Hours until next maintenance | INT16 | h | Read | ||||
| HR | 50094 | Days until next maintenance | INT16 | days | Read | ||||
| HR | 50099 | Control mode | Active operating mode; only the low four bits (mask 000Fh) are used. | BITMAP16 | Read | bit 0 = AUTO; bit 1 = STOP; bit 2 = MANUAL; bit 3 = TEST | |||
| HR | 50100 | Status message | Index of the current status text; see the manual's status messages chapter. | INT16 | Read | ||||
| HR | 50102 | Control bits 1 | Engine sequence flags: start/stop requests, cooldown, engine release. | BITMAP16 | Read | bit 0 = 04.61 Lamp test request; bit 1 = 03.31 Auxiliary services postrun active; bit 2 = 03.30 Auxiliary services prerun active; bit 3 = 03.06 Engine release is active; bit 4 = 04.27 Critical mode is active; bit 5 = 03.25 Engine shall run; bit 6 = 03.08 Breaker delay timer expired; bit 7 = 03.07 Engine monitoring delay expired; bit 8 = 03.01 Auxiliary services active; bit 9 = 04.10 Cooldown is active; bit 10 = Manual STOP requested; bit 11 = Manual START requested; bit 12 = 04.64 Key activation; bit 13 = 04.12 Start without closing GCB; bit 14 = 04.15 Idle run is active; bit 15 = Idle mode or ramp to rated active | |||
| HR | 50103 | Control bits 2 | Starter, ignition, emergency mode and mains-parallel flags. | BITMAP16 | Read | bit 0 = Increment engine start counter; bit 1 = 03.36 Free PID 1 raise; bit 2 = 03.37 Free PID 1 lower; bit 3 = Genset runs mains parallel; bit 5 = 03.27 Stop solenoid is active; bit 6 = 03.34 Free PID 2 raise; bit 7 = 03.35 Free PID 2 lower; bit 8 = 03.32 Free PID 3 raise; bit 9 = 03.33 Free PID 3 lower; bit 10 = 03.40 Remote shutdown (ID 503 bit 9); bit 11 = 04.09 Emergency mode is active; bit 12 = 04.11 Mains settling; bit 13 = 03.04 Preglow or ignition is active; bit 14 = 03.28 Operating magnet / gas relay active; bit 15 = 03.02 Starter / crank is active | |||
| HR | 50104 | Control bits 3 | Breaker states and synchronising / open / close commands. | BITMAP16 | Read | bit 0 = 04.30 Power limited prerun; bit 1 = 04.29 Unloading mains active; bit 2 = 04.28 Unloading generator active; bit 3 = 04.23 Close command MCB active; bit 4 = 04.22 Open command MCB active; bit 5 = 04.21 MCB synchronisation active; bit 6 = 04.20 Close command GCB active; bit 7 = 04.19 Opening GCB relay active; bit 8 = 04.18 GCB synchronisation active; bit 9 = 05.16 Derating active; bit 10 = 04.07 MCB is closed; bit 11 = 04.06 GCB is closed; bit 12 = 03.23 3-pos. controller volt./reactive power lower; bit 13 = 03.22 3-pos. controller volt./reactive power raise; bit 14 = 03.21 3-pos. controller freq./power lower; bit 15 = 03.20 3-pos. controller freq./power raise | |||
| HR | 50106 | Control bits 5 | Remote request / acknowledge echo, droop and sync-mode flags. | BITMAP16 | Read | bit 3 = 04.70 Opening GCB active; bit 4 = 02.39 Mains decoupling enabled; bit 5 = 86.42 LDSS MOP reserve power 2 ready; bit 6 = 86.41 LDSS IOP reserve power 2 ready; bit 7 = 86.85 LM Enable MCB; bit 8 = Sync mode Run active; bit 9 = Sync mode Permissive active; bit 10 = Sync mode Check active; bit 11 = 86.26 LM voltage droop active; bit 12 = 86.25 LM frequency droop active; bit 13 = 05.17 Uprating active; bit 14 = 04.14 Remote acknowledge; bit 15 = 04.13 Remote start request | |||
| HR | 50108 | Relay outputs 1 | State of relay outputs 1-12. | BITMAP16 | Read | bit 4 = Relay 12; bit 5 = Relay 11; bit 6 = Relay 10; bit 7 = Relay 9; bit 8 = Relay 8; bit 9 = Relay 7; bit 10 = Relay 6; bit 11 = Relay 5; bit 12 = Relay 4; bit 13 = Relay 3; bit 14 = Relay 2; bit 15 = Relay 1 (self-test relay) | |||
| HR | 50114 | Alarm general | New-alarm flag and latched alarm classes A-F. | BITMAP16 | Read | bit 0 = 01.01 Alarm class A latched; bit 1 = 01.02 Alarm class B latched; bit 2 = 01.03 Alarm class C latched; bit 3 = 01.04 Alarm class D latched; bit 4 = 01.05 Alarm class E latched; bit 5 = 01.06 Alarm class F latched; bit 15 = 01.11 New alarm triggered | |||
| HR | 50115 | Alarms 2 latched | Unacknowledged sync timeouts, breaker 50BF failures, ECU lamp alarms. | BITMAP16 | Read | bit 0 = 05.14 ECU amber lamp alarm; bit 1 = 05.13 ECU red lamp alarm; bit 2 = 08.48 MCB plausibility; bit 3 = 08.17 Missing members; bit 4 = 08.16 Parameter alignment LDSS; bit 5 = 08.19 CANopen error CAN interface 2; bit 6 = 05.23 ECU emission alarm; bit 7 = 05.22 ECU protect alarm; bit 8 = 08.46 GCB failure 50BF; bit 9 = 08.47 MCB failure 50BF; bit 10 = 08.45 CPU overload R1 trip; bit 11 = Operating range failure 12; bit 12 = 05.11 Charge fail (D+); bit 14 = 08.31 Timeout synchronisation MCB; bit 15 = 08.30 Timeout synchronisation GCB | |||
| HR | 50120 | Alarms 1 latched (engine) | Unacknowledged engine, start-fail, breaker-fail and maintenance alarms. | BITMAP16 | Read | bit 0 = 08.18 CANopen error CAN interface 1; bit 1 = 05.10 Maintenance hours exceeded; bit 2 = 05.09 Maintenance days exceeded; bit 3 = 05.08 Start fail detected; bit 4 = 08.10 General CAN-J1939 fault; bit 5 = 08.08 MCB fail to open; bit 6 = 08.07 MCB fail to close; bit 7 = 08.06 GCB fail to open; bit 8 = 08.05 GCB fail to close; bit 9 = 05.06 Shutdown malfunction detected; bit 10 = 05.07 Speed detection alarm; bit 11 = 05.05 Unintended stop detected; bit 12 = 05.04 Engine underspeed 2; bit 13 = 05.03 Engine underspeed 1; bit 14 = 05.02 Engine overspeed 2; bit 15 = 05.01 Engine overspeed 1 | |||
| HR | 50122 | Alarms AI 1 latched (battery) | Unacknowledged battery voltage and charging alternator alarms. | BITMAP16 | Read | bit 0 = 08.03 Battery undervoltage 1; bit 1 = 08.01 Battery overvoltage 1; bit 2 = 08.04 Battery undervoltage 2; bit 3 = 08.02 Battery overvoltage 2; bit 4 = 05.11 Failure charging alternator (D+) | |||
| HR | 50126 | Alarms generator latched | Unacknowledged generator frequency, voltage, current and power alarms. | BITMAP16 | Read | bit 1 = 06.15 Gen overload IOP 2; bit 2 = 06.14 Gen overload IOP 1; bit 3 = 06.13 Reverse / reduced power 2; bit 4 = 06.12 Reverse / reduced power 1; bit 5 = 06.11 Gen overcurrent 3; bit 6 = 06.10 Gen overcurrent 2; bit 7 = 06.09 Gen overcurrent 1; bit 8 = 06.08 Gen undervoltage 2; bit 9 = 06.07 Gen undervoltage 1; bit 10 = 06.06 Gen overvoltage 2; bit 11 = 06.05 Gen overvoltage 1; bit 12 = 06.04 Gen underfrequency 2; bit 13 = 06.03 Gen underfrequency 1; bit 14 = 06.02 Gen overfrequency 2; bit 15 = 06.01 Gen overfrequency 1 | |||
| HR | 50128 | Alarms generator 1 latched | Unacknowledged unbalance, ground fault, rotation, overload MOP and PF alarms. | BITMAP16 | Read | bit 0 = 06.28 Gen PF leading 2; bit 1 = 06.27 Gen PF leading 1; bit 2 = 06.26 Gen PF lagging 2; bit 3 = 06.25 Gen PF lagging 1; bit 4 = 06.24 Gen overload MOP 2; bit 5 = 06.23 Gen overload MOP 1; bit 6 = 06.31 Operating range failed; bit 7 = 06.22 Inverse time overcurrent; bit 8 = 06.30 Gen unloading mismatch; bit 9 = 06.29 Gen active power mismatch; bit 10 = 06.21 Gen phase rotation mismatch; bit 11 = 06.20 Ground fault 2; bit 12 = 06.19 Ground fault 1; bit 13 = 06.18 Gen voltage asymmetry; bit 14 = 06.17 Gen unbalanced load 2; bit 15 = 06.16 Gen unbalanced load 1 | |||
| HR | 50132 | Alarms mains latched | Unacknowledged mains frequency, voltage, phase shift and decoupling alarms. | BITMAP16 | Read | bit 2 = 07.05 Mains phase rotation mismatch; bit 5 = 07.32 Mains AC wiring; bit 6 = 07.25 Mains decoupling; bit 7 = 07.14 Mains phase shift; bit 8 = 07.13 Mains undervoltage 2; bit 9 = 07.12 Mains undervoltage 1; bit 10 = 07.11 Mains overvoltage 2; bit 11 = 07.10 Mains overvoltage 1; bit 12 = 07.09 Mains underfrequency 2; bit 13 = 07.08 Mains underfrequency 1; bit 14 = 07.07 Mains overfrequency 2; bit 15 = 07.06 Mains overfrequency 1 | |||
| HR | 50133 | Alarms mains active | Same mains alarms as 50132, showing the currently active state. | BITMAP16 | Read | bit 2 = Mains phase rotation mismatch; bit 5 = Mains AC wiring; bit 6 = Mains decoupling; bit 7 = Mains phase shift; bit 8 = Mains undervoltage 2; bit 9 = Mains undervoltage 1; bit 10 = Mains overvoltage 2; bit 11 = Mains overvoltage 1; bit 12 = Mains underfrequency 2; bit 13 = Mains underfrequency 1; bit 14 = Mains overfrequency 2; bit 15 = Mains overfrequency 1 | |||
| HR | 50138 | Alarms DI 1 latched | Unacknowledged alarms from discrete inputs 1-12 (inputs with alarm class Control show here only if parameter 8854 allows it). | BITMAP16 | Read | bit 4 = 09.12 Discrete input 12; bit 5 = 09.11 Discrete input 11; bit 6 = 09.10 Discrete input 10; bit 7 = 09.09 Discrete input 9; bit 8 = 09.08 Discrete input 8; bit 9 = 09.07 Discrete input 7; bit 10 = 09.06 Discrete input 6; bit 11 = 09.05 Discrete input 5; bit 12 = 09.04 Discrete input 4; bit 13 = 09.03 Discrete input 3; bit 14 = 09.02 Discrete input 2; bit 15 = 09.01 Discrete input 1 | |||
| HR | 50159 | Alarms AI wire break latched | Wire-break alarms for analog inputs 1-3; bit 0 is unused here. | BITMAP16 | Read | bit 1 = 10.01 Analog input 1 wire break; bit 2 = 10.02 Analog input 2 wire break; bit 3 = 10.03 Analog input 3 wire break | |||
| HR | 50191 | J1939 lamp status DM1 | ECU lamp states from the active-fault (DM1) message. | BITMAP16 | Read | bit 0 = Protect lamp off; bit 1 = Protect lamp on; bit 4 = Amber warning lamp off; bit 5 = Amber warning lamp on; bit 8 = Red stop lamp off; bit 9 = Red stop lamp on; bit 12 = Malfunction lamp off; bit 13 = Malfunction lamp on | |||
| HR | 50201 | J1939 engine speed (SPN 190) | From the engine ECU over J1939; needs the ECU connected. | INT16 | rpm | Read | |||
| HR | 50202 | J1939 coolant temperature (SPN 110) | From the engine ECU over J1939; needs the ECU connected. | INT16 | °C | Read | |||
| HR | 50203 | J1939 fuel temperature (SPN 174) | From the engine ECU over J1939; needs the ECU connected. | INT16 | °C | Read | |||
| HR | 50204 | J1939 engine oil temperature 1 (SPN 175) | From the engine ECU over J1939; needs the ECU connected. | INT16 | × 0.1 | °C | Read | ||
| HR | 50205 | J1939 engine oil pressure (SPN 100) | From the engine ECU over J1939; needs the ECU connected. | INT16 | kPa | Read | |||
| HR | 50206 | J1939 fuel rate (SPN 183) | From the engine ECU over J1939; needs the ECU connected. | INT16 | × 0.1 | L/h | Read | ||
| HR | 50207 | J1939 coolant level (SPN 111) | From the engine ECU over J1939; needs the ECU connected. | INT16 | × 0.1 | % | Read | ||
| HR | 50209 | J1939 load at current speed (SPN 92) | From the engine ECU over J1939; needs the ECU connected. | INT16 | % | Read | |||
| HR | 50211 | J1939 boost pressure (SPN 102) | From the engine ECU over J1939; needs the ECU connected. | INT16 | kPa | Read | |||
| HR | 50216 | J1939 exhaust gas temperature (SPN 173) | From the engine ECU over J1939; needs the ECU connected. | INT16 | × 0.1 | °C | Read | ||
| HR | 50322 | Total generator active power | INT32 | ABCD | W | Read | |||
| HR | 50324 | Total generator reactive power | INT32 | ABCD | var | Read | |||
| HR | 50326 | Total generator apparent power | INT32 | ABCD | VA | Read | |||
| HR | 50328 | Average generator wye voltage | Average line-to-neutral voltage. | INT32 | ABCD | × 0.1 | V | Read | |
| HR | 50330 | Average generator delta voltage | Average line-to-line voltage. | INT32 | ABCD | × 0.1 | V | Read | |
| HR | 50332 | Average busbar 1 delta voltage | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50334 | Average generator current | INT32 | ABCD | × 0.001 | A | Read | ||
| HR | 50336 | Generator current 1 | INT32 | ABCD | × 0.001 | A | Read | ||
| HR | 50338 | Generator current 2 | INT32 | ABCD | × 0.001 | A | Read | ||
| HR | 50340 | Generator current 3 | INT32 | ABCD | × 0.001 | A | Read | ||
| HR | 50342 | Measured ground current | INT32 | ABCD | × 0.001 | A | Read | ||
| HR | 50346 | Generator voltage L1-L2 | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50348 | Generator voltage L2-L3 | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50350 | Generator voltage L3-L1 | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50352 | Generator voltage L1-N | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50354 | Generator voltage L2-N | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50356 | Generator voltage L3-N | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50358 | Generator active power L1-N | INT32 | ABCD | W | Read | |||
| HR | 50360 | Generator active power L2-N | INT32 | ABCD | W | Read | |||
| HR | 50362 | Generator active power L3-N | INT32 | ABCD | W | Read | |||
| HR | 50364 | Busbar 1 voltage L1-L2 | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50366 | Generator real energy | Active energy counter. | INT32 | ABCD | × 0.01 | MWh | Read | |
| HR | 50368 | Generator positive reactive energy | INT32 | ABCD | × 0.01 | Mvarh | Read | ||
| HR | 50370 | Generator hours of operation | Run-hours counter kept by the controller. | INT32 | ABCD | × 0.01 | h | Read | |
| HR | 50372 | Setpoint active power | Active power setpoint currently in use. | INT32 | ABCD | × 0.1 | kW | Read | |
| HR | 50374 | Setpoint voltage | Voltage setpoint currently in use. | INT32 | ABCD | V | Read | ||
| HR | 50384 | Total mains active power | INT32 | ABCD | W | Read | |||
| HR | 50386 | Total mains reactive power | INT32 | ABCD | var | Read | |||
| HR | 50388 | Average mains wye voltage | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50390 | Average mains delta voltage | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50392 | Average mains current | INT32 | ABCD | × 0.001 | A | Read | ||
| HR | 50394 | Mains current L1 | INT32 | ABCD | × 0.001 | A | Read | ||
| HR | 50400 | Mains voltage L1-L2 | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50402 | Mains voltage L2-L3 | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50404 | Mains voltage L3-L1 | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50406 | Mains voltage L1-N | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50408 | Mains voltage L2-N | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50410 | Mains voltage L3-N | INT32 | ABCD | × 0.1 | V | Read | ||
| HR | 50444 | J1939 total engine hours | Engine hours reported by the ECU (J1939 HOURS). | UINT32 | ABCD | h | Read |
Notes on this map
- The manual states Modbus registers are big-endian; 32-bit values are read high word first (ABCD). LogicsManager composite parameters are the exception (little-endian) and are not on this page.
- Left out: the 16-bit power, voltage and current values at 50010-50021 and 50031-50040. Their scale depends on exponents published at 50001-50003 and the manual does not give the formula clearly enough; use the 32-bit values from 50322, which have fixed scaling.
- Left out: 50028/50029 (setpoint frequency / PF, printed with a multiplier of 1 that does not fit their units), the 'active (reserved)' alarm words, and rows the table marks for the easYgen-3400XT/3500XT only (busbar L2-L3/L3-L1, LSx values, GGB bits, analog inputs 4-12, relays 13-22).
- The status message at 50100 is an index into the manual's status message list; the index-to-text mapping is not tabulated, so no enum is given.
- 'Latched' alarm words hold an alarm until it is acknowledged. The controller also offers alarm telegrams (protocols 5011/5017) that are not covered here.
- Interface setpoints only take effect when the matching AnalogManager source (05.56, 05.12, 05.53, 05.59, 05.83) is selected. Parameters 507-511 are described with CANopen object data types; their Modbus addresses follow the parameter rule on p. 921.
- The easYgen-3400XT/3500XT use the same 5010 telegram but are documented in their own manual, which was not checked for this page.
- The parameter list gives Ethernet A a default IP of 10.31.140.0 with mask 255.255.240.0. The TCP port is not stated in the manual.
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 Woodward easYgen-3000XT Series
What Modbus registers does the Woodward easYgen-3000XT Series have?
This map lists 90 registers: 90 holding registers. 8 of them can be written. Registers vary with firmware, options and configuration, so confirm against the device.
Are the Woodward easYgen-3000XT Series 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 protocol 5010 table in the appendix prints wire addresses (Protocol ID at 50000). The Modbus chapter shows the same block Modicon-style from 450001 and says 450001 can become bus address 50000. Parameters (remote control, setpoints) use Modicon address = 40000 + (parameter ID + 1), so parameter 503 is 40504 and wire address 503. The manual warns some PC tools need a shift of one (e.g. 504); if a write has no effect, try the neighbour.
What byte order does the Woodward easYgen-3000XT Series use for 32-bit values?
Multi-register values in this map use ABCD (high word first (big-endian)). Set your client to this order for every 32/64-bit value in the table.
What are the minimum Modbus registers to integrate the Woodward easYgen-3000XT Series?
Start with HR 50099 Control mode (Operating mode (AUTO/STOP/MANUAL/TEST)); HR 50104 Control bits 3 (GCB / MCB closed flags); HR 50114 Alarm general (Latched alarm classes A-F); HR 50009 Generator frequency (Generator frequency); HR 50322 Total generator active power (Total generator active power (32-bit)); HR 50346 Generator voltage L1-L2 (Generator voltage L1-L2 (32-bit)); HR 50336 Generator current 1 (Generator current 1 (32-bit)); HR 50052 Battery voltage (Battery voltage); HR 503 Remote control word 1 (Remote start / stop / acknowledge).
How do I enable Modbus control of the Woodward easYgen-3000XT Series?
RS-485: set Modbus slave ID (parameter 3188, default 1; 0 disables Modbus) and baud/parity/stop bits (3170-3172). Ethernet: set Modbus/TCP slave ID (7485) and the Ethernet A IP settings, then turn on the matching 'Set IP address' parameter. Protocol number 3184 must stay 5010 for this map; a change needs a reboot. For a remote start, the LogicsManager start request must include 04.13 Remote request.
What happens when the Woodward easYgen-3000XT Series loses Modbus communication?
No Modbus communication timeout is documented. Bits 2 and 3 of parameter 503 must always be 0; the manual reserves them for a watchdog. A remote start request (04.13) stays set until a stop bit arrives or power is lost.
Where is the official Woodward easYgen-3000XT Series Modbus documentation?
The source is Manual easYgen-3000XT Series Genset Control, Release 2.17-0 (B37574 Revision U), revision 2025, published free by Woodward at https://www.woodward.com/products/wp-content/uploads/sites/3/2025/04/B37574_U.pdf.
Source: Manual easYgen-3000XT Series Genset Control, Release 2.17-0 · B37574 Revision U · rev. 2025. Register numbers, types, scaling and units are reproduced as published; descriptions are our own.