Easy Modbus
  1. Home
  2. Modbus register maps
  3. Lochinvar
  4. Knight / Armor / Wall Mount boilers (ModBus communication board)

Boiler / water heater · Modbus register map

Lochinvar Knight / Armor / Wall Mount boilers (ModBus communication board) Modbus register map

Updated 16 October 2026

Short answer

Lochinvar's Knight, Armor, Wall Mount, FTXL, Shield and related boilers and water heaters speak Modbus RTU through an optional RS-485 communication board configured with DIP switches. A BAS can enable the unit, send a modulation rate or setpoint command, and supply tank, outdoor and system temperatures, with a configuration word telling the appliance which values to take from the BAS. Read-only data covers outlet/inlet/flue temperatures, firing rate, pump speeds, cascade power and status, blocking and lockout codes.

This page lists 43 Modbus registers for the Lochinvar Knight / Armor / Wall Mount boilers (ModBus communication board) — 11 writable — with the table, 0-based wire address, data type, word order, scale, units and access of each, re-typed from Lochinvar’s own free documentation (linked below) and checked against it.

Manufacturer
Lochinvar
Model
Knight / Armor / Wall Mount boilers (ModBus communication board)
Equipment type
Boiler / water heater
Registers
43 (11 writable)
Transport
Modbus RTU
Default unit ID
Not stated
Documented addressing
Modicon 3xxxx/4xxxx (drop the prefix, subtract 1)
Also known as
Knight, Knight XL, Outdoor Knight, Outdoor Knight XL, Armor, Outdoor Armor, Wall Mount Armor, Knight Wall Mount, Knight Wall Hung, AQUAS, FTXL, Shield
Source document
ModBus and BACnet Communication Instructions (Knight, Knight XL, Armor, Outdoor Knight, AQUAS, FTXL, Wall Mount, Wall Hung, Shield) · MODB-I-O_100161545_2000014822 Rev T
Download CSV all columns JSON Manufacturer PDF ↗

Integration notes: Lochinvar Knight / Armor / Wall Mount boilers (ModBus communication board)

Integration in brief

Set the board address, baud and parity on its DIP switches, put the boiler control in ModBus mode, then write the configuration word 40001 followed by the command registers. For a simple enable, write 40001 = 0x0001 and 40002 = 0x0001; for a modulation or setpoint command also set bit 2 (40001 = 0x0005) and write 40003. Monitor 30009-30016.

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 0ConfigurationBITMAP16Configuration bits: which values come from the BASRead/write
HR 1CoilsUINT16Enable / thermostat command wordRead/write
HR 20-10 Volt Input / Rate Command / Setpoint CommandUINT16Rate (%) or setpoint commandRead/write
IR 8Outlet TemperatureUINT16Outlet temperatureRead
IR 9Inlet TemperatureINT16Inlet temperatureRead
IR 11Firing RateUINT16Firing rateRead
IR 13Boiler Status CodeUINT16Status codeRead
IR 15Boiler Lockout CodeUINT16Lockout codeRead

Enable Modbus control & writes

In the boiler installer menu go to CONTROL MODES and set ModBus to ACTIVE, then pick the control mode (enable only, enable + rate/setpoint, rate only, DHW). Set BMS TYPE to POWER or SETPOINT for rate commands. Re-send the configuration word in 40001 before each command.

Communication loss & watchdog

MODBUS T/O in the CONTROL MODES menu, 5-120 s (default 10 s): if BAS-supplied temperatures or the 0-10 V value are not refreshed in time the boiler falls back to its own sensors. Enable-type commands must be refreshed at least every 4 minutes or the boiler reverts to its own inputs.

Byte order & addressing

Network setup

Watch out for

Lochinvar Knight / Armor / Wall Mount boilers (ModBus communication board) 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.

43 of 43 shown
Lochinvar Knight / Armor / Wall Mount boilers (ModBus communication board) Modbus register map
TableAddressNameDescriptionTypeOrderScaleUnitsAccessValues / bits
CO0doc 00001Room Thermostat 1Enable/heat demand input 1 written by the BAS.BITRead/write0 = Off; 1 = On
CO1doc 00002Room Thermostat 2BITRead/write0 = Off; 1 = On
CO2doc 00003Room Thermostat 3BITRead/write0 = Off; 1 = On
CO4doc 00005Tank ThermostatDHW tank thermostat demand written by the BAS.BITRead/write0 = Off; 1 = On
DI1doc 10002Flow SwitchBITRead0 = Off; 1 = On
DI2doc 10003Gas Pressure SwitchBITRead0 = Off; 1 = On
DI3doc 10004Louver Proving SwitchBITRead0 = Off; 1 = On
DI4doc 10005Air Pressure SwitchBITRead0 = Off; 1 = On
DI5doc 10006Blocked Drain SwitchBITRead0 = Off; 1 = On
DI6doc 10007Auto Reset High LimitBITRead0 = Off; 1 = On
DI7doc 10008FlameBITRead0 = Off; 1 = On
DI8doc 10009Room Thermostat 1BITRead0 = Off; 1 = On
DI9doc 10010Tank ThermostatBITRead0 = Off; 1 = On
DI23doc 10024Room Thermostat 2BITRead0 = Off; 1 = On
DI32doc 10033Run-time ContactsBITRead0 = Off; 1 = On
DI33doc 10034Alarm ContactsBITRead0 = Off; 1 = On
DI34doc 10035CH PumpBITRead0 = Off; 1 = On
DI35doc 10036DHW PumpBITRead0 = Off; 1 = On
DI36doc 10037Louver RelayBITRead0 = Off; 1 = On
DI37doc 10038Gas ValveBITRead0 = Off; 1 = On
DI38doc 10039System PumpBITRead0 = Off; 1 = On
DI43doc 10044DHW Recirculation PumpBITRead0 = Off; 1 = On
IR0doc 30001Discrete Inputs 1-16Packed copy of discrete inputs 1-16.UINT16Read
IR1doc 30002Discrete Inputs 17-32Packed copy of discrete inputs 17-32.UINT16Read
IR2doc 30003Discrete Inputs 33-48Packed copy of discrete inputs 33-48.UINT16Read
IR4doc 30005System Pump SpeedUINT16%Read
IR5doc 30006Cascade Total PowerTotal cascade capacity (100-800 %).UINT16%Read
IR6doc 30007Cascade Current PowerCurrent cascade output (0-800 %).UINT16%Read
IR8doc 30009Outlet TemperatureRaw is degrees C x 10 (manual example: 683 = 68.3 C).UINT16× 0.1°CRead
IR9doc 30010Inlet TemperatureINT16× 0.1°CRead
IR10doc 30011Flue TemperatureINT16× 0.1°CRead
IR11doc 30012Firing RateUINT16%Read
IR12doc 30013Boiler Pump SpeedUINT16%Read
IR13doc 30014Boiler Status CodeWhat the appliance is doing; 40 = lockout.UINT16Read2 = Heat demand blocked: high absolute outlet temperature; 3 = Heat demand blocked: high absolute flue temperature; 4 = Heat demand blocked: high absolute delta T; 8 = Heat demand blocked: low 24 VAC; 9 = Outdoor shutdown; 10 = Blocked: boiler switched off at display; 12 = Blocked: no correct cascade communication; 16 = Service function; 19 = DHW function storage tank; 21 = SH heat demand from room thermostat; 22 = SH heat demand from BMS; 23 = SH heat demand from cascade; 30 = Heat demand from freeze protection; 32 = DHW pump delay; 33 = SH pump delay; 34 = No heat function (after pump delay); 40 = Lockout; 32764 = Busy updating status; 32765 = DHW blocked: no tank sensor; 32766 = Burner control(s) manually shut down; 32767 = Code not present
IR14doc 30015Boiler Blocking CodeReason heat demand is blocked or limited.UINT16Read0 = No blocking; 1 = SH blocking; 2 = Low 24 VAC supply; 3 = General block; 4 = MRHL open; 5 = Boiler switched off (display); 6 = Wrong cascade communication; 7 = High delta T; 8 = High flue temperature; 9 = High outlet temperature; 10 = Service blocking; 12 = DHW blocking, high outlet temperature; 13 = Anti-cycling time; 14 = Storage tank demand blocked, fan problem; 15 = No system sensor with leader control present; 16 = Fan speed limited, high outlet temperature; 17 = Fan min decreased, low flame current; 18 = Max fan speed limited, high delta T; 19 = Max fan speed limited, high flue temperature; 32767 = Code not present
IR15doc 30016Boiler Lockout CodeLockout reason; only valid while status code is 40.UINT16Read161 = Parameters not re-programmed by Lochinvar; 164 = No reset allowed (> 15 minutes); 166 = Auto reset high limit; 167 = Blocked drain; 168 = Louver proving; 169 = Gas pressure switch; 170 = Flow switch; 177 = Flue sensor short; 178 = Flue sensor open; 179 = Inlet sensor short; 180 = Inlet sensor open; 192 = Outlet sensor short; 193 = Outlet sensor open; 204 = CRC EEPROM failed; 205 = EEPROM programmed; 206 = EEPROM programming error; 207 = EEPROM write error; 229 = Watchdog; 230 = Fan low (should be high); 231 = Fan high (should be low); 232 = No flame when running; 233 = No flame after ignition; 234 = Simultaneous output APS and fan; 235 = APS active not closed; 236 = APS active not open; 237 = Flame out of sequence; 239 = Gas valve relay test failed; 240 = MRHL; 32767 = Code not present
HR0doc 40001ConfigurationSelects which values the BAS supplies instead of the boiler's own inputs.BITMAP16Read/writebit 0 = Boiler Enable from BAS; bit 1 = Tank Thermostat from BAS; bit 2 = Rate Command / 0-10V Input / Setpoint Command from BAS; bit 3 = Tank Setpoint from BAS; bit 4 = System Supply Temperature from BAS; bit 5 = Outdoor Temperature from BAS; bit 6 = Tank Temperature from BAS; bit 7 = System Return Temperature from BAS
HR1doc 40002CoilsCommand word written by the BAS; write the values given in the manual's control-mode tables.UINT16Read/write
HR2doc 400030-10 Volt Input / Rate Command / Setpoint CommandModulation % or setpoint, per the BMS Type setting (0-100).UINT16%Read/write
HR4doc 40005Tank TemperatureTank temperature supplied by the BAS.INT16× 0.1°CRead/write
HR5doc 40006Outdoor TemperatureOutdoor temperature supplied by the BAS (-40 to 60 C).INT16× 0.1°CRead/write
HR6doc 40007System Supply TemperatureSystem supply temperature supplied by the BAS.INT16× 0.1°CRead/write
HR7doc 40008DHW Recirculation TemperatureDHW recirculation temperature supplied by the BAS.INT16× 0.1°CRead/write

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 Lochinvar Knight / Armor / Wall Mount boilers (ModBus communication board)

What Modbus registers does the Lochinvar Knight / Armor / Wall Mount boilers (ModBus communication board) have?

This map lists 43 registers: 4 coils, 18 discrete inputs, 14 input registers, 7 holding registers. 11 of them can be written. Registers vary with firmware, options and configuration, so confirm against the device.

Are the Lochinvar Knight / Armor / Wall Mount boilers (ModBus communication board) Modbus addresses 0-based or 1-based?

The manufacturer's document numbers registers Modicon 3xxxx/4xxxx (drop the prefix, subtract 1). 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. Addresses are printed Modicon-style (00001 coils, 10001 discrete inputs, 30001 input registers, 40001 holding registers). Subtract the table base and 1 for the wire address, e.g. Outlet Temperature 30009 is input register 8.

What are the minimum Modbus registers to integrate the Lochinvar Knight / Armor / Wall Mount boilers (ModBus communication board)?

Start with HR 0 Configuration (Configuration bits: which values come from the BAS); HR 1 Coils (Enable / thermostat command word); HR 2 0-10 Volt Input / Rate Command / Setpoint Command (Rate (%) or setpoint command); IR 8 Outlet Temperature (Outlet temperature); IR 9 Inlet Temperature (Inlet temperature); IR 11 Firing Rate (Firing rate); IR 13 Boiler Status Code (Status code); IR 15 Boiler Lockout Code (Lockout code).

How do I enable Modbus control of the Lochinvar Knight / Armor / Wall Mount boilers (ModBus communication board)?

In the boiler installer menu go to CONTROL MODES and set ModBus to ACTIVE, then pick the control mode (enable only, enable + rate/setpoint, rate only, DHW). Set BMS TYPE to POWER or SETPOINT for rate commands. Re-send the configuration word in 40001 before each command.

What happens when the Lochinvar Knight / Armor / Wall Mount boilers (ModBus communication board) loses Modbus communication?

MODBUS T/O in the CONTROL MODES menu, 5-120 s (default 10 s): if BAS-supplied temperatures or the 0-10 V value are not refreshed in time the boiler falls back to its own sensors. Enable-type commands must be refreshed at least every 4 minutes or the boiler reverts to its own inputs.

Where is the official Lochinvar Knight / Armor / Wall Mount boilers (ModBus communication board) Modbus documentation?

The source is ModBus and BACnet Communication Instructions (Knight, Knight XL, Armor, Outdoor Knight, AQUAS, FTXL, Wall Mount, Wall Hung, Shield) (MODB-I-O_100161545_2000014822 Rev T), published free by Lochinvar at https://assets.lochinvar.com/damroot/Original/10014/MODB-I-O_100161545_2000014822_Rev_T_(54850).pdf.

More Lochinvar Modbus register maps

Source: ModBus and BACnet Communication Instructions (Knight, Knight XL, Armor, Outdoor Knight, AQUAS, FTXL, Wall Mount, Wall Hung, Shield) · MODB-I-O_100161545_2000014822 Rev T. Register numbers, types, scaling and units are reproduced as published; descriptions are our own.