- Home
- Modbus register maps
- Grundfos
- Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500
Pump (booster system / multi-pump controller) · Modbus register map
Grundfos Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500 Modbus register map
Updated 16 October 2026
Grundfos multi-pump booster sets and twin-head pumps share one Modbus functional profile, reached through a CIM 200 (RTU) or CIM 500 (Modbus TCP) module or the SoftCIM port on GENIECON and newer MGE pumps. The map covers system start/stop, control mode and setpoint, per-pump force start/stop, system status and alarm codes, system measurements and a status/data block for each of up to six pumps. Which registers are live depends on the booster type and installed sensors.
This page lists 127 Modbus registers for the Grundfos Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500 — 23 writable — with the table, 0-based wire address, data type, word order, scale, units and access of each, re-typed from Grundfos’s own free documentation (linked below) and checked against it.
- Manufacturer
- Grundfos
- Model
- Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500
- Equipment type
- Pump (booster system / multi-pump controller)
- Registers
- 127 (23 writable)
- Transport
- Modbus RTU, Modbus TCP
- Default unit ID
- Not stated
- Default serial
- 19200 baud, 8E1
- TCP port
- 502
- Documented addressing
- 1-based (subtract 1 for the wire address)
- 32-bit word order
- ABCD high word first (big-endian)
- Also known as
- Hydro MPC, Control MPC, CU 352, GENIECON MPC, Hydro Multi-E, Hydro Multi-B, CU 323, DDD, CU 354, TPED, MAGNA3-D, CIM 200, CIM 500, SoftCIM Modbus TCP
Integration notes: Grundfos Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500
Address the CIM (rotary switches on the CIM 200, IP on the CIM 500), enable bus control in the controller if it is an MPC/GENIECON/DDD, then write 00101 = 3 to take remote control and start, and 00104 for the setpoint in 0.01 %. Poll 00201 for on/alarm/warning, 00205 for the alarm code, 00301/00302 for pressure and flow and 00209/00210 for per-pump running and alarm bits.
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 100 | ControlRegister | BITMAP16 | Remote/start/stop/reset command word | Read/write |
| HR 103 | Setpoint | UINT16 | Setpoint, 0.01 % | Read/write |
| HR 200 | SystemStatus | BITMAP16 | System status bits | Read |
| HR 204 | AlarmCode | UINT16 | System alarm code | Read |
| HR 208 | PumpsRunning | BITMAP16 | Pumps running | Read |
| HR 209 | PumpsAlarm | BITMAP16 | Pumps in alarm | Read |
| HR 300 | Head | UINT16 | System head/pressure | Read |
| HR 301 | VolumeFlow | UINT16 | System flow | Read |
| HR 311 | Power | UINT32 ABCD | System power (32-bit) | Read |
Enable Modbus control & writes
Set 00101 bit 0 (RemoteAccessReq) = 1 and bit 1 (OnOffReq) to start/stop. For Hydro MPC, GENIECON and DDD you must also set the controller's control source to 'From bus' (Settings > Secondary functions > Control source). With a CIM in more than one pump of a Multi-E/TPED, control registers must be written to every pump head.
Communication loss & watchdog
Register 00012 sets a comm-loss timeout of 5-3600 s (0 = disabled, default). On timeout the booster returns to Local mode.
Byte order & addressing
- Register numbers are 1-based: 00104 is wire address 103.
- Temperatures are in 0.01 K; HeatDiffTemp is in 0.01 °C.
- Pump block power is scaled 10 W per count, unlike the system power register (1 W, 32-bit).
- ResetAlarm acts on a rising edge; if AutoAckControlBits (00005) = 0, clear the bit before the next reset.
Network setup
- CIM 200: address on hex rotary switches SW6/SW7; baud on SW4/SW5 (default 19200); parity on SW3 (default even, 1 stop bit); termination via SW1/SW2.
- CIM 500: set the protocol rotary switch to Modbus TCP and configure the Modbus TCP IP address in the module web server.
- Hydro MPC / GENIECON / DDD: select 'From bus' as control source in the controller HMI before expecting Modbus commands to act.
Watch out for
- Many measurements return 0xFFFF on a given booster type because the sensor or function is not present.
- Hydro Multi-E model G can only run in auto-control and OpenLoopMax; several pump-block values are unavailable on model G.
Grundfos Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500 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 | 0doc 00001 | SlaveMinimumReplyDelay | Extra reply delay added by the CIM 200 (0-10000 ms). | UINT16 | ms | Read/write | |||
| HR | 2doc 00003 | SoftwareDefinedModbusAddress | Slave address used only in software-defined mode (CIM 200). | UINT16 | Read/write | ||||
| HR | 3doc 00004 | SoftwareDefinedBitRate | Baud rate used only in software-defined mode (CIM 200). | UINT16 | Read/write | 0 = 1200; 1 = 2400; 2 = 4800; 3 = 9600; 4 = 19200; 5 = 38400 | |||
| HR | 4doc 00005 | AutoAckControlBits | 1 = CIM lowers triggered control bits automatically. | UINT16 | Read/write | 0 = Disabled; 1 = Enabled | |||
| HR | 8doc 00009 | SoftwareDefinedParity | Parity used only in software-defined mode (CIM 200). | UINT16 | Read/write | 0 = None; 1 = Even; 2 = Odd | |||
| HR | 9doc 00010 | SoftwareDefinedStopBit | Stop bits used only in software-defined mode (CIM 200). | UINT16 | Read/write | 0 = No stop bit; 1 = 1 stop bit; 2 = 2 stop bits | |||
| HR | 11doc 00012 | Watchdog | Comm-loss timeout; 0 disables. On timeout the booster reverts to Local mode. | UINT16 | s | Read/write | |||
| HR | 23doc 00024 | ActualModbusAddress | Slave address currently in use. | UINT16 | Read | ||||
| HR | 29doc 00030 | UnitFamily | Product family code (e.g. 21 = Hydro/Control MPC). | UINT16 | Read | 17 = Hydro Multi-E; 21 = Hydro/Control MPC; 38 = Circulator twin pump; 39 = Multi pump | |||
| HR | 30doc 00031 | UnitType | Product type within the family (see manual). | UINT16 | Read | ||||
| HR | 100doc 00101 | ControlRegister | Remote/local, start/stop, reset and counter-reset command bits. | BITMAP16 | Read/write | bit 0 = RemoteAccessReq (1 = remote); bit 1 = OnOffReq (1 = start, 0 = stop); bit 2 = ResetAlarm (rising edge); bit 4 = CopyToLocal (Multi-E/TPED model H+, MAGNA3-D); bit 5 = ResetAccCounters (volume and energy) | |||
| HR | 101doc 00102 | ControlMode | Requested control mode; support varies by booster type. | UINT16 | Read/write | 0 = Constant speed; 1 = Constant frequency; 3 = Constant head; 4 = Constant pressure; 5 = Constant differential pressure; 6 = Proportional pressure; 7 = Constant flow; 8 = Constant temperature; 9 = Constant temp. difference; 10 = Constant level; 128 = AUTOadapt (automatic adaption for DDD); 129 = FLOWadapt; 130 = Closed-loop sensor | |||
| HR | 102doc 00103 | OperationMode | Requested operating mode; only acts when OnOffReq is On. | UINT16 | Read/write | 0 = Auto-control; 4 = OpenLoopMin; 6 = OpenLoopMax | |||
| HR | 103doc 00104 | Setpoint | Closed loop: % of sensor max or setpoint range; open loop: % of performance or nominal frequency. | UINT16 | × 0.01 | % | Read/write | ||
| HR | 104doc 00105 | ControlPump1 | Force pump 1 (Multi-B, MPC, GENIECON, DDD). | UINT16 | Read/write | 0 = Auto-control (by booster system); 1 = Forced start; 2 = Forced stop | |||
| HR | 105doc 00106 | ControlPump2 | Force pump 2. | UINT16 | Read/write | 0 = Auto-control (by booster system); 1 = Forced start; 2 = Forced stop | |||
| HR | 106doc 00107 | ControlPump3 | Force pump 3. | UINT16 | Read/write | 0 = Auto-control (by booster system); 1 = Forced start; 2 = Forced stop | |||
| HR | 107doc 00108 | ControlPump4 | Force pump 4. | UINT16 | Read/write | 0 = Auto-control (by booster system); 1 = Forced start; 2 = Forced stop | |||
| HR | 108doc 00109 | ControlPump5 | Force pump 5 (MPC, GENIECON, DDD). | UINT16 | Read/write | 0 = Auto-control (by booster system); 1 = Forced start; 2 = Forced stop | |||
| HR | 109doc 00110 | ControlPump6 | Force pump 6 (MPC, GENIECON, DDD). | UINT16 | Read/write | 0 = Auto-control (by booster system); 1 = Forced start; 2 = Forced stop | |||
| HR | 114doc 00115 | SetPropControlReduction | Reduction in proportional-pressure mode. | UINT16 | × 0.01 | % | Read/write | ||
| HR | 115doc 00116 | SetPropControlFlowMax | Manual max flow in proportional-pressure mode. | UINT16 | × 0.1 | m³/h | Read/write | ||
| HR | 116doc 00117 | ControlPilotpump | Force the pilot pump (MPC, GENIECON). | UINT16 | Read/write | 0 = Auto-control (by booster system); 1 = Forced start; 2 = Forced stop | |||
| HR | 117doc 00118 | ControlBackuppump | Force the backup pump (MPC, GENIECON). | UINT16 | Read/write | 0 = Auto-control (by booster system); 1 = Forced start; 2 = Forced stop | |||
| HR | 129doc 00130 | Control.RemoteSensor1 | Remote sensor 1 value written to MPC. | UINT16 | × 0.01 | % | Read/write | ||
| HR | 130doc 00131 | Control.RemoteSensor2 | Remote sensor 2 value written to MPC. | UINT16 | × 0.01 | % | Read/write | ||
| HR | 200doc 00201 | SystemStatus | Booster mode and state flags. | BITMAP16 | Read | bit 1 = CopyToLocal enabled; bit 2 = ResetAccCountersAck; bit 3 = ResetAlarmAck; bit 4 = SetpointInfluence active; bit 5 = AtMaxPower; bit 6 = Rotation (any pump running); bit 8 = AccessMode (1 = remote); bit 9 = OnOff (1 = on); bit 10 = Alarm; bit 11 = Warning; bit 13 = AtMaxSpeed; bit 15 = AtMinSpeed | |||
| HR | 201doc 00202 | ProcessFeedback | Actual feedback, % of sensor max (closed loop) or of performance (open loop). | UINT16 | × 0.01 | % | Read | ||
| HR | 202doc 00203 | ControlMode (actual) | Active control mode. | UINT16 | Read | 0 = Constant speed; 1 = Constant frequency; 3 = Constant head; 4 = Constant pressure; 5 = Constant differential pressure; 6 = Proportional pressure; 7 = Constant flow; 8 = Constant temperature; 9 = Constant temp. difference; 10 = Constant level; 128 = AUTOadapt (automatic adaption for DDD); 129 = FLOWadapt; 130 = Closed-loop sensor | |||
| HR | 203doc 00204 | OperationMode (actual) | Active operating mode. | UINT16 | Read | 0 = Auto-control; 4 = OpenLoopMin; 6 = OpenLoopMax | |||
| HR | 204doc 00205 | AlarmCode | Active booster system alarm code; pump alarms are passed through from the device. | UINT16 | Read | 3 = External fault signal; 10 = Communication fault, pump; 25 = Setup conflict; 28 = Battery low; 68 = Media temperature too high in pipe; 80 = Hardware fault, IO 351 pump module / I/O module; 83 = Verification error, EEPROM parameter area; 87 = Multi sensor value exceeds limit (min/max); 88 = Sensor fault, general measuring sensor; 89 = Signal fault, closed-loop feedback sensor; 91 = Signal fault, temperature sensor 1; 93 = Fall-back sensor signal fault; 133 = Controlled I/O conflict; 143 = Multi sensor sensor signal fault; 157 = Real-time clock error; 159 = CIM module connection to product lost; 161 = Sensor supply fault, 5 V; 162 = Sensor supply fault, 24 V; 165 = Signal fault, analog input 1; 166 = Signal fault, analog input 2; 167 = Signal fault, analog input 3; 175 = Signal fault, temperature sensor 2; 190 = Limit exceeded, supervised item 1; 191 = Limit exceeded, supervised item 2; 193 = Sensor limit 4 exceeded / Low level; 203 = Alarm on all pumps; 204 = Inconsistency between sensors; 205 = Level/float switch sequence inconsistency; 208 = Operation outside performance range; 210 = Overpressure; 211 = Underpressure; 213 = VFD not ready; 214 = Water shortage; 215 = Soft pressure buildup time-out; 216 = Pilot pump alarm; 219 = Pressure relief not adequate; 231 = Ethernet: No IP address from DHCP server; 232 = Ethernet: Auto-disabled due to misuse; 236 = Pump fault; 248 = Fault, battery/UPS; 249 = User defined event 1 triggered; 250 = User defined event 2 triggered; 253 = SMS data not received within time; 254 = Water pipe system model data inconsistency | |||
| HR | 205doc 00206 | WarningCode | Active booster system warning code. | UINT16 | Read | 3 = External fault signal; 10 = Communication fault, pump; 25 = Setup conflict; 28 = Battery low; 68 = Media temperature too high in pipe; 80 = Hardware fault, IO 351 pump module / I/O module; 83 = Verification error, EEPROM parameter area; 87 = Multi sensor value exceeds limit (min/max); 88 = Sensor fault, general measuring sensor; 89 = Signal fault, closed-loop feedback sensor; 91 = Signal fault, temperature sensor 1; 93 = Fall-back sensor signal fault; 133 = Controlled I/O conflict; 143 = Multi sensor sensor signal fault; 157 = Real-time clock error; 159 = CIM module connection to product lost; 161 = Sensor supply fault, 5 V; 162 = Sensor supply fault, 24 V; 165 = Signal fault, analog input 1; 166 = Signal fault, analog input 2; 167 = Signal fault, analog input 3; 175 = Signal fault, temperature sensor 2; 190 = Limit exceeded, supervised item 1; 191 = Limit exceeded, supervised item 2; 193 = Sensor limit 4 exceeded / Low level; 203 = Alarm on all pumps; 204 = Inconsistency between sensors; 205 = Level/float switch sequence inconsistency; 208 = Operation outside performance range; 210 = Overpressure; 211 = Underpressure; 213 = VFD not ready; 214 = Water shortage; 215 = Soft pressure buildup time-out; 216 = Pilot pump alarm; 219 = Pressure relief not adequate; 231 = Ethernet: No IP address from DHCP server; 232 = Ethernet: Auto-disabled due to misuse; 236 = Pump fault; 248 = Fault, battery/UPS; 249 = User defined event 1 triggered; 250 = User defined event 2 triggered; 253 = SMS data not received within time; 254 = Water pipe system model data inconsistency | |||
| HR | 207doc 00208 | PumpsPresent | Which pumps are present. | BITMAP16 | Read | bit 0 = Pump 1; bit 1 = Pump 2; bit 2 = Pump 3; bit 3 = Pump 4; bit 4 = Pump 5; bit 5 = Pump 6; bit 6 = Pilot pump; bit 7 = Backup pump | |||
| HR | 208doc 00209 | PumpsRunning | Which pumps are running. | BITMAP16 | Read | bit 0 = Pump 1; bit 1 = Pump 2; bit 2 = Pump 3; bit 3 = Pump 4; bit 4 = Pump 5; bit 5 = Pump 6; bit 6 = Pilot pump; bit 7 = Backup pump | |||
| HR | 209doc 00210 | PumpsAlarm | Which pumps have an alarm. | BITMAP16 | Read | bit 0 = Pump 1; bit 1 = Pump 2; bit 2 = Pump 3; bit 3 = Pump 4; bit 4 = Pump 5; bit 5 = Pump 6; bit 6 = Pilot pump; bit 7 = Backup pump | |||
| HR | 210doc 00211 | PumpsCommFault | Which pumps have lost communication. | BITMAP16 | Read | bit 0 = Pump 1; bit 1 = Pump 2; bit 2 = Pump 3; bit 3 = Pump 4; bit 4 = Pump 5; bit 5 = Pump 6; bit 6 = Pilot pump; bit 7 = Backup pump | |||
| HR | 211doc 00212 | SystemActiveFunctions | Active system functions (MPC/GENIECON all bits; Multi-B bits 7 and 12). | BITMAP16 | Read | bit 1 = Emergency Run active; bit 2 = Standby pumps active; bit 3 = Pump test run active; bit 4 = Alternative setpoint active; bit 5 = Clock program active; bit 6 = Remote VNC active; bit 7 = Remote bus active; bit 8 = Remote service port active; bit 9 = Pressure relief function active; bit 10 = Soft pressure function active; bit 11 = Low-flow boost active; bit 12 = Low-flow stop active; bit 13 = Proportional pressure active | |||
| HR | 212doc 00213 | PumpsAutoMode | 1 = pump in auto-control, 0 = forced start/stop. | BITMAP16 | Read | bit 0 = Pump 1; bit 1 = Pump 2; bit 2 = Pump 3; bit 3 = Pump 4; bit 4 = Pump 5; bit 5 = Pump 6; bit 6 = Pilot pump; bit 7 = Backup pump | |||
| HR | 213doc 00214 | ApplicationType | Configured application (MPC, Multi-B). | UINT16 | Read | 0 = Unknown; 1 = Pressure boosting; 2 = Heating pumps on hot side; 3 = Heating pumps on cold side; 4 = AirCon pumps on hot side; 5 = AirCon pumps on cold side; 6 = MPC S2000 heating pumps on hot side; 7 = MPC S2000 heating pumps on cold side; 8 = MPC S2000 AirCon pumps on hot side; 9 = MPC S2000 AirCon pumps on cold side; 10 = Tank filling (level sensor); 11 = Tank filling (float switches) | |||
| HR | 219doc 00220 | FeedBackSensorUnit | Unit of the feedback sensor. | UINT16 | Read | 0 = bar; 1 = mbar; 2 = m; 3 = kPa; 4 = psi; 5 = ft; 6 = m³/h; 7 = m³/s; 8 = l/s; 9 = gpm; 10 = °C; 11 = °F; 12 = %; 13 = K; 14 = l/h; 255 = - | |||
| HR | 222doc 00223 | SystemFeedbackSensor | Feedback sensor type (MPC). | UINT16 | Read | 3 = Flow sensor; 6 = Pressure sensor | |||
| HR | 300doc 00301 | Head | Actual system head/pressure (sensor required). | UINT16 | × 0.001 | bar | Read | ||
| HR | 301doc 00302 | VolumeFlow | Actual system flow (sensor required). | UINT16 | × 0.1 | m³/h | Read | ||
| HR | 302doc 00303 | RelativePerformance | Performance relative to maximum. | UINT16 | × 0.01 | % | Read | ||
| HR | 305doc 00306 | DigitalInput | External digital input states, one bit per input. | UINT16 | Read | ||||
| HR | 306doc 00307 | DigitalOutput | External digital output states, one bit per output. | UINT16 | Read | ||||
| HR | 307doc 00308 | ActualSetpoint | Setpoint actually used, after limits; same scaling as 00104. | UINT16 | × 0.01 | % | Read | ||
| HR | 308doc 00309 | MotorCurrent | Motor current (Hydro Multi-E model G only). | UINT16 | × 0.1 | A | Read | ||
| HR | 311doc 00312 | Power | Total power consumption of the system (HI/LO pair). | UINT32 | ABCD | W | Read | ||
| HR | 314doc 00315 | InletPressure | Inlet pressure relative to atmosphere; raw includes -1.000 bar offset. | UINT16 | × 0.001 − 1 | bar | Read | ||
| HR | 315doc 00316 | RemotePressure1 | External pressure sensor 1. | UINT16 | × 0.001 | bar | Read | ||
| HR | 316doc 00317 | StorageTankLevel | Storage tank level; raw includes -100 m offset. | UINT16 | × 0.01 − 100 | m | Read | ||
| HR | 319doc 00320 | RemoteTemp1 | External temperature sensor 1 (kelvin). | UINT16 | × 0.01 | K | Read | ||
| HR | 324doc 00325 | AuxSensorInput | UINT16 | × 0.01 | % | Read | |||
| HR | 326doc 00327 | OperationTime | Total operating hours (HI/LO pair). | UINT32 | ABCD | h | Read | ||
| HR | 328doc 00329 | TotalPoweredTime | Total powered hours (Multi-E model G only). | UINT32 | ABCD | h | Read | ||
| HR | 331doc 00332 | Energy | Total energy consumption (HI/LO pair). | UINT32 | ABCD | kWh | Read | ||
| HR | 336doc 00337 | AmbientTemp | Ambient temperature (kelvin). | UINT16 | × 0.01 | K | Read | ||
| HR | 337doc 00338 | InletTemp | Inlet water temperature (kelvin). | UINT16 | × 0.01 | K | Read | ||
| HR | 338doc 00339 | OutletTemp | Outlet water temperature (kelvin). | UINT16 | × 0.01 | K | Read | ||
| HR | 339doc 00340 | TempDifference | Differential temperature. | UINT16 | × 0.01 | K | Read | ||
| HR | 340doc 00341 | OutletPressure | System outlet pressure. | UINT16 | × 0.001 | bar | Read | ||
| HR | 341doc 00342 | FeedTankLevel | Feed tank level; raw includes -100 m offset. | UINT16 | × 0.01 − 100 | m | Read | ||
| HR | 342doc 00343 | UserSetpoint | Setpoint before modifications. | UINT16 | × 0.01 | % | Read | ||
| HR | 343doc 00344 | AnalogueInfluence | Setpoint attenuator. | UINT16 | × 0.01 | % | Read | ||
| HR | 344doc 00345 | NumberOfPowerOns | Number of times the system has been powered on. | UINT16 | Read | ||||
| HR | 345doc 00346 | SpecificEnergy | UINT16 | × 0.1 | Wh/m³ | Read | |||
| HR | 346doc 00347 | SpecificEnergyAverage | UINT16 | × 0.1 | Wh/m³ | Read | |||
| HR | 350doc 00351 | PropControlReduction | Proportional control reduction. | UINT16 | × 0.01 | % | Read | ||
| HR | 351doc 00352 | PropControlFlowMax | Proportional control maximum flow point. | UINT16 | × 0.1 | m³/h | Read | ||
| HR | 352doc 00353 | RemotePressure2 | UINT16 | × 0.001 | bar | Read | |||
| HR | 353doc 00354 | RemoteTemp2 | External temperature sensor 2 (kelvin). | UINT16 | × 0.01 | K | Read | ||
| HR | 354doc 00355 | MediumTemp | Medium temperature (kelvin). | UINT16 | × 0.01 | K | Read | ||
| HR | 355doc 00356 | DifferentialPressure | UINT16 | × 0.001 | bar | Read | |||
| HR | 359doc 00360 | RemoteFlow | Flow from a remote sensor. | UINT16 | × 0.1 | m³/h | Read | ||
| HR | 362doc 00363 | Volume | Pumped volume (HI/LO pair). | UINT32 | ABCD | × 0.1 | m³ | Read | |
| HR | 364doc 00365 | HeatingEnergyCounter | Lifetime heat energy (external temperature sensor required). | UINT32 | ABCD | kWh | Read | ||
| HR | 366doc 00367 | HeatPower | Current heat power (external temperature sensor required). | UINT32 | ABCD | W | Read | ||
| HR | 368doc 00369 | HeatDiffTemp | Forward/return delta-T (published in 0.01 °C). | UINT16 | × 0.01 | °C | Read | ||
| HR | 400doc 00401 | Pump1.Status | Pump 1 mode, on/off and alarm bits. | BITMAP16 | Read | bit 0 = AccessMode (1 = remote via booster); bit 1 = OnOff; bit 2 = Alarm | |||
| HR | 401doc 00402 | Pump1.AlarmCode | Grundfos alarm code of pump 1. | UINT16 | Read | ||||
| HR | 402doc 00403 | Pump1.OperationTime | Operating hours of pump 1 (HI/LO pair). | UINT32 | ABCD | h | Read | ||
| HR | 404doc 00405 | Pump1.Speed | Pump 1 motor speed. | UINT16 | × 0.01 | % | Read | ||
| HR | 405doc 00406 | Pump1.LineCurrent | Average line current of pump 1. | UINT16 | × 0.1 | A | Read | ||
| HR | 406doc 00407 | Pump1.Power | Power consumption of pump 1 (10 W steps). | UINT16 | × 10 | W | Read | ||
| HR | 407doc 00408 | Pump1.MotorTemperature | Motor temperature of pump 1 (kelvin). | UINT16 | × 0.01 | K | Read | ||
| HR | 410doc 00411 | Pump2.Status | Pump 2 mode, on/off and alarm bits. | BITMAP16 | Read | bit 0 = AccessMode (1 = remote via booster); bit 1 = OnOff; bit 2 = Alarm | |||
| HR | 411doc 00412 | Pump2.AlarmCode | Grundfos alarm code of pump 2. | UINT16 | Read | ||||
| HR | 412doc 00413 | Pump2.OperationTime | Operating hours of pump 2 (HI/LO pair). | UINT32 | ABCD | h | Read | ||
| HR | 414doc 00415 | Pump2.Speed | Pump 2 motor speed. | UINT16 | × 0.01 | % | Read | ||
| HR | 415doc 00416 | Pump2.LineCurrent | Average line current of pump 2. | UINT16 | × 0.1 | A | Read | ||
| HR | 416doc 00417 | Pump2.Power | Power consumption of pump 2 (10 W steps). | UINT16 | × 10 | W | Read | ||
| HR | 417doc 00418 | Pump2.MotorTemperature | Motor temperature of pump 2 (kelvin). | UINT16 | × 0.01 | K | Read | ||
| HR | 420doc 00421 | Pump3.Status | Pump 3 mode, on/off and alarm bits. | BITMAP16 | Read | bit 0 = AccessMode (1 = remote via booster); bit 1 = OnOff; bit 2 = Alarm | |||
| HR | 421doc 00422 | Pump3.AlarmCode | Grundfos alarm code of pump 3. | UINT16 | Read | ||||
| HR | 422doc 00423 | Pump3.OperationTime | Operating hours of pump 3 (HI/LO pair). | UINT32 | ABCD | h | Read | ||
| HR | 424doc 00425 | Pump3.Speed | Pump 3 motor speed. | UINT16 | × 0.01 | % | Read | ||
| HR | 425doc 00426 | Pump3.LineCurrent | Average line current of pump 3. | UINT16 | × 0.1 | A | Read | ||
| HR | 426doc 00427 | Pump3.Power | Power consumption of pump 3 (10 W steps). | UINT16 | × 10 | W | Read | ||
| HR | 427doc 00428 | Pump3.MotorTemperature | Motor temperature of pump 3 (kelvin). | UINT16 | × 0.01 | K | Read | ||
| HR | 430doc 00431 | Pump4.Status | Pump 4 mode, on/off and alarm bits. | BITMAP16 | Read | bit 0 = AccessMode (1 = remote via booster); bit 1 = OnOff; bit 2 = Alarm | |||
| HR | 431doc 00432 | Pump4.AlarmCode | Grundfos alarm code of pump 4. | UINT16 | Read | ||||
| HR | 432doc 00433 | Pump4.OperationTime | Operating hours of pump 4 (HI/LO pair). | UINT32 | ABCD | h | Read | ||
| HR | 434doc 00435 | Pump4.Speed | Pump 4 motor speed. | UINT16 | × 0.01 | % | Read | ||
| HR | 435doc 00436 | Pump4.LineCurrent | Average line current of pump 4. | UINT16 | × 0.1 | A | Read | ||
| HR | 436doc 00437 | Pump4.Power | Power consumption of pump 4 (10 W steps). | UINT16 | × 10 | W | Read | ||
| HR | 437doc 00438 | Pump4.MotorTemperature | Motor temperature of pump 4 (kelvin). | UINT16 | × 0.01 | K | Read | ||
| HR | 440doc 00441 | Pump5.Status | Pump 5 mode, on/off and alarm bits. | BITMAP16 | Read | bit 0 = AccessMode (1 = remote via booster); bit 1 = OnOff; bit 2 = Alarm | |||
| HR | 441doc 00442 | Pump5.AlarmCode | Grundfos alarm code of pump 5. | UINT16 | Read | ||||
| HR | 442doc 00443 | Pump5.OperationTime | Operating hours of pump 5 (HI/LO pair). | UINT32 | ABCD | h | Read | ||
| HR | 444doc 00445 | Pump5.Speed | Pump 5 motor speed. | UINT16 | × 0.01 | % | Read | ||
| HR | 445doc 00446 | Pump5.LineCurrent | Average line current of pump 5. | UINT16 | × 0.1 | A | Read | ||
| HR | 446doc 00447 | Pump5.Power | Power consumption of pump 5 (10 W steps). | UINT16 | × 10 | W | Read | ||
| HR | 447doc 00448 | Pump5.MotorTemperature | Motor temperature of pump 5 (kelvin). | UINT16 | × 0.01 | K | Read | ||
| HR | 450doc 00451 | Pump6.Status | Pump 6 mode, on/off and alarm bits. | BITMAP16 | Read | bit 0 = AccessMode (1 = remote via booster); bit 1 = OnOff; bit 2 = Alarm | |||
| HR | 451doc 00452 | Pump6.AlarmCode | Grundfos alarm code of pump 6. | UINT16 | Read | ||||
| HR | 452doc 00453 | Pump6.OperationTime | Operating hours of pump 6 (HI/LO pair). | UINT32 | ABCD | h | Read | ||
| HR | 454doc 00455 | Pump6.Speed | Pump 6 motor speed. | UINT16 | × 0.01 | % | Read | ||
| HR | 455doc 00456 | Pump6.LineCurrent | Average line current of pump 6. | UINT16 | × 0.1 | A | Read | ||
| HR | 456doc 00457 | Pump6.Power | Power consumption of pump 6 (10 W steps). | UINT16 | × 10 | W | Read | ||
| HR | 457doc 00458 | Pump6.MotorTemperature | Motor temperature of pump 6 (kelvin). | UINT16 | × 0.01 | K | Read | ||
| HR | 480doc 00481 | Pump1.Energy | Energy consumption of pump 1. | UINT16 | kWh | Read | |||
| HR | 481doc 00482 | Pump2.Energy | Energy consumption of pump 2. | UINT16 | kWh | Read | |||
| HR | 482doc 00483 | Pump3.Energy | Energy consumption of pump 3. | UINT16 | kWh | Read | |||
| HR | 483doc 00484 | Pump4.Energy | Energy consumption of pump 4. | UINT16 | kWh | Read | |||
| HR | 484doc 00485 | Pump5.Energy | Energy consumption of pump 5. | UINT16 | kWh | Read | |||
| HR | 485doc 00486 | Pump6.Energy | Energy consumption of pump 6. | UINT16 | kWh | Read |
Notes on this map
- All blocks can be read with function code 03 or 04; listed here as holding registers. Control and configuration registers are written with 06 or 16.
- 32-bit values are HI/LO register pairs with HI at the lower address; the manual combines them as HI x 65536 + LO (ABCD).
- Temperatures are in 0.01 K (kelvin) except HeatDiffTemp (00369), which is published in 0.01 °C.
- A raw value of 0xFFFF means 'not available'. Many registers apply only to particular booster types or need a sensor; see the support columns in the manual.
- Pump blocks repeat every 10 registers: pump 1 at 00401, pump 2 at 00411 ... pump 6 at 00451. Pump power is in 10 W steps. Pilot and backup pump blocks (00461, 00471) and Pump-x energy for pilot/backup were left out.
- Left out: tank-filling limits (00111-00114, 00215-00219), DDD remote-sensor setpoints and fieldbus sensor block (00119-00128, 00146-00156), manual pump speeds (00136-00143), PI tuning registers 00144/00145 and 00231/00232 (offset/scaling not clear enough), FeedbackSensorMin/Max (00221/00222, no scaling given), analog input values/units (00224-00230, 00376-00382, scaling depends on an enum), flow measurements 1-3 and remote/differential pressures not listed above, and the DDD logged sensor data. Alarm simulation registers were also omitted.
- AlarmCode 00205 lists booster-system codes; when the alarm comes from an individual pump the pump's own Grundfos code is reported (see the E-pump code list).
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 Grundfos Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500
What Modbus registers does the Grundfos Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500 have?
This map lists 127 registers: 127 holding registers. 23 of them can be written. Registers vary with firmware, options and configuration, so confirm against the device.
Are the Grundfos Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500 Modbus addresses 0-based or 1-based?
The manufacturer's document numbers registers 1-based (subtract 1 for the wire address). 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. Registers are printed as 5-digit register numbers; the manual states register X is addressed as X-1 in the telegram (setpoint 00104 is sent as 00103).
What byte order does the Grundfos Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500 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 Grundfos Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500?
Start with HR 100 ControlRegister (Remote/start/stop/reset command word); HR 103 Setpoint (Setpoint, 0.01 %); HR 200 SystemStatus (System status bits); HR 204 AlarmCode (System alarm code); HR 208 PumpsRunning (Pumps running); HR 209 PumpsAlarm (Pumps in alarm); HR 300 Head (System head/pressure); HR 301 VolumeFlow (System flow); HR 311 Power (System power (32-bit)).
How do I enable Modbus control of the Grundfos Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500?
Set 00101 bit 0 (RemoteAccessReq) = 1 and bit 1 (OnOffReq) to start/stop. For Hydro MPC, GENIECON and DDD you must also set the controller's control source to 'From bus' (Settings > Secondary functions > Control source). With a CIM in more than one pump of a Multi-E/TPED, control registers must be written to every pump head.
What happens when the Grundfos Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500 loses Modbus communication?
Register 00012 sets a comm-loss timeout of 5-3600 s (0 = disabled, default). On timeout the booster returns to Local mode.
Where is the official Grundfos Booster systems (Hydro MPC, Hydro Multi-E, Multi-B) via CIM 200 / CIM 500 Modbus documentation?
The source is Modbus for Grundfos boosters - SoftCIM Modbus RTU, SoftCIM Modbus TCP, CIM/CIU 200 Modbus RTU, CIM/CIU 500 Modbus TCP - Functional profile and user manual (98393459), revision 2025-09, published free by Grundfos at https://api.grundfos.com/literature/Grundfosliterature-6012934.pdf.
More Grundfos Modbus register maps
- Pump (circulator / E-pump / pump drive)
Grundfos E-pumps (MAGNA3, TPE, CRE, CUE) via CIM 200 / CIM 500
Grundfos E-pumps (CRE/CRNE/CRIE, MTRE, CHIE, CME, TPE, TPE Series 2000, NBE/NKE), CUE drives and MAGNA3 with a CIM/CIU 200, CIM/CIU 500 or built-in SoftCIM.
Also known as: MAGNA3, TPE, TPE Series 2000, CRE, CRNE, CRIE, MTRE, CHIE, CME, NBE, NKE, CUE, MGE, CIM 200, CIU 200, CIM 500, CIU 500, SoftCIM Modbus RTU - Pump (chemical dosing pump)
Grundfos SMART Digital DDA dosing pump (SoftCIM, CIM 200 / CIM 500)
Grundfos SMART Digital DDA dosing pumps: DDA model C with built-in SoftCIM Modbus RTU/TCP, and DDA XL (or others) through a CIM 200 Modbus RTU or CIM 500 Modbus TCP module in a CIU 900, per functional profile 98473491 (09.2026).
Also known as: DDA, DDA S, DDA XL, DDA-C, DDA model C, SMART Digital S, SMART Digital XL, CIM 200, CIM 500, 98473491
Source: Modbus for Grundfos boosters - SoftCIM Modbus RTU, SoftCIM Modbus TCP, CIM/CIU 200 Modbus RTU, CIM/CIU 500 Modbus TCP - Functional profile and user manual · 98393459 · rev. 2025-09. Register numbers, types, scaling and units are reproduced as published; descriptions are our own.