{
 "manufacturer": "Lochinvar",
 "manufacturer_slug": "lochinvar",
 "model": "Knight FTXL (ProtoNode FPC-N54)",
 "model_slug": "knight-ftxl-protonode-n54",
 "aliases": [
  "Knight FTXL",
  "FTXL",
  "Lochinvar FTXL",
  "ProtoNode FPC-N54"
 ],
 "equipment_type": "Commercial boiler controller gateway",
 "applies_to": "Lochinvar Knight FTXL fire-tube boilers, read through the ProtoNode FPC-N54 gateway.",
 "summary": "Lochinvar's ProtoNode FPC-N54 start-up guide maps the Knight FTXL boiler's Modbus registers to 46 BACnet objects (Appendix C.6). Four BVs carry room and tank thermostat demands, BIs give safety switch, flame, pump and relay states, AIs give temperatures, firing rate, pump speeds and the status, blocking and lockout codes, and eight AVs take the Modbus board command and BMS-supplied sensor values.",
 "bacnet_transport": [
  "BACnet IP",
  "BACnet MS/TP"
 ],
 "firmware": null,
 "default_device_instance": null,
 "access_inferred": true,
 "notes": [
  "Appendix C.6 of the guide (page 51).",
  "The table has no read/write column, units or states; access is inferred from the N2 type (DO/AO = writable)."
 ],
 "integration": {
  "summary": "Call for heat with the Room Thermostat 1 BV (and Tank Thermostat for DHW), or use the 0-10 Volt Input/Rate Cmd/SP Cmd AV for a rate or setpoint. Read boiler status, outlet temperature, firing rate, flame, alarm contacts and the lockout code.",
  "minimum_points": [
   {
    "ref": "BV 1",
    "name": "Room Thermostat 1",
    "why": "Heat demand (room thermostat 1) from the BMS"
   },
   {
    "ref": "BV 4",
    "name": "Tank Thermostat",
    "why": "Tank (DHW) demand from the BMS"
   },
   {
    "ref": "AV 41",
    "name": "0-10 Volt Input/Rate Cmd/SP Cmd",
    "why": "Rate or setpoint command from the BMS"
   },
   {
    "ref": "AV 39",
    "name": "Configuration",
    "why": "Configuration register; see the Modbus manual"
   },
   {
    "ref": "AI 36",
    "name": "Boiler Status Code",
    "why": "What the boiler is doing"
   },
   {
    "ref": "AI 31",
    "name": "Outlet Temperature",
    "why": "Boiler outlet water temperature"
   },
   {
    "ref": "AI 34",
    "name": "Firing Rate",
    "why": "Burner firing rate"
   },
   {
    "ref": "BI 11",
    "name": "Flame",
    "why": "Flame present"
   },
   {
    "ref": "BI 16",
    "name": "Alarm Contacts",
    "why": "Alarm contacts closed"
   },
   {
    "ref": "AI 38",
    "name": "Boiler Lockout Code",
    "why": "Active lockout code"
   }
  ],
  "enable": "BV 1-3 (Room Thermostat 1-3) and BV 4 (Tank Thermostat) are the demand commands; AV 39 Configuration, AV 40 Coils and AV 41 0-10 Volt Input/Rate Cmd/SP Cmd are the Modbus board command registers. The guide does not give the command sequence.",
  "heartbeat": null,
  "remote_sensors": "AV 43-46 (tank, outdoor, system supply and return temperature) are writable so the BMS can supply those values; the guide does not say when they are used.",
  "setup": [
   "ProtoNode FPC-N54 to the boiler: Modbus RTU, 9600 baud, no parity, 8 data bits, 2 stop bits (IPW: 19200 baud, 1 stop bit).",
   "Give each unit a unique Node-ID (1-255). BACnet device instance = Node_Offset (default 50,000) + Node-ID.",
   "BACnet IP or BACnet MS/TP is chosen in the ProtoNode web configurator."
  ],
  "gotchas": [
   "Access is inferred: the table has no read/write column; BVs and AVs (N2 DO/AO) are treated as writable.",
   "The guide does not explain Configuration, Coils or the rate/setpoint command; they carry the Lochinvar Modbus board registers, so read the boiler's Lochinvar Modbus communication manual before writing them.",
   "Discrete Inputs words pack 16 binary states each."
  ]
 },
 "source": {
  "title": "ProtoNode FPC-N54 Start-up Guide For Interfacing Lochinvar Products, Appendix C.6 Knight FTXL",
  "doc_number": "Document Revision 5.A (Lochinvar 2000594856 Rev A)",
  "revision_date": "2020-06 (effective date)",
  "url": "https://assets.lochinvar.com/damroot/Original/10014/161357100338377_2000594856_Rev%20A%20(ProtoNode%20FPC-N54%20Start-up%20Guide%20for%20Lochinvar).pdf"
 },
 "points": [
  {
   "type": "BV",
   "instance": 1,
   "name": "Room Thermostat 1",
   "description": "",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 2,
   "name": "Room Thermostat 2",
   "description": "",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 3,
   "name": "Room Thermostat 3",
   "description": "",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 4,
   "name": "Tank Thermostat",
   "description": "",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 5,
   "name": "Flow Switch",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 6,
   "name": "Gas Pressure Switch",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 7,
   "name": "Louver Proving Switch",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 8,
   "name": "Air Pressure Switch",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 9,
   "name": "Blocked Drain Switch",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 10,
   "name": "Auto Reset High Limit",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 11,
   "name": "Flame",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 12,
   "name": "Room Thermostat 1",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 13,
   "name": "Tank Thermostat",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 14,
   "name": "Room Thermostat 2",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 15,
   "name": "Run-time Contacts",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 16,
   "name": "Alarm Contacts",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 17,
   "name": "CH Pump",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 18,
   "name": "DHW Pump 1",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 19,
   "name": "Louver Relay",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 20,
   "name": "Gas Valve",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 21,
   "name": "System Pump",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 22,
   "name": "DHW Pump 2",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 23,
   "name": "Discrete Inputs 1 - 16",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 24,
   "name": "Discrete Inputs 17 - 32",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 25,
   "name": "Discrete Inputs 33 - 48",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 26,
   "name": "System Cascade Setpoint",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 27,
   "name": "System Pump Speed",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 28,
   "name": "Cascade Total Power",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 29,
   "name": "Cascade Current Power",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 30,
   "name": "Outlet Setpoint",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 31,
   "name": "Outlet Temperature",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 32,
   "name": "Inlet Temperature",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 33,
   "name": "Flue Temperature",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 34,
   "name": "Firing Rate",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 35,
   "name": "Boiler Pump Speed",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 36,
   "name": "Boiler Status Code",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 37,
   "name": "Boiler Blocking Code",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 38,
   "name": "Boiler Lockout Code",
   "description": "",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 39,
   "name": "Configuration",
   "description": "",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 40,
   "name": "Coils",
   "description": "",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 41,
   "name": "0-10 Volt Input/Rate Cmd/SP Cmd",
   "description": "",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 42,
   "name": "Tank Setpoint",
   "description": "",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 43,
   "name": "Tank Temperature",
   "description": "",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 44,
   "name": "Outdoor Temperature",
   "description": "",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 45,
   "name": "System Supply Temperature",
   "description": "",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 46,
   "name": "System Return Temperature",
   "description": "",
   "units": "",
   "access": "W",
   "states": ""
  }
 ],
 "page": "https://easybacnet.com/bacnet-points-lists/lochinvar/knight-ftxl-protonode-n54",
 "note": "Provided as-is. Point availability varies by firmware and options; verify against the live device.",
 "disclaimer": "DISCLAIMER: reference only, provided AS IS with no warranty. May contain errors or be out of date. You must verify every point against the manufacturer's current documentation and the live device before use. easybacnet.com accepts no liability for its use and is not affiliated with the manufacturer. Terms: https://easybacnet.com/terms#content"
}
