{
 "manufacturer": "Cleaver-Brooks",
 "manufacturer_slug": "cleaver-brooks",
 "model": "UDC 2500 loop controller profile (ProtoNode)",
 "model_slug": "udc-2500-controller-protonode",
 "aliases": [
  "UDC 2500",
  "UDC2500",
  "Honeywell UDC 2500",
  "ProtoNode RER",
  "750-426"
 ],
 "equipment_type": "Process loop controller via BACnet gateway",
 "applies_to": "Honeywell UDC 2500 loop controllers supplied on Cleaver-Brooks equipment, read through a ProtoNode RER gateway.",
 "summary": "The ProtoNode maps the UDC 2500 controller to BACnet: process variable, remote variable, inputs, alarm states and actions as AIs, and working setpoint, output, tuning, alarm setpoints, limits, overrides, local/remote setpoint and auto/manual selection as writable AVs.",
 "bacnet_transport": [
  "BACnet MS/TP",
  "BACnet IP"
 ],
 "firmware": null,
 "default_device_instance": "50000 + Modbus Node-ID",
 "access_inferred": true,
 "notes": [
  "Each Cleaver-Brooks controller on the ProtoNode is its own BACnet device; the object instances below are the same on every device.",
  "The guide prints no write-point stars for this profile; the AV/BV objects map to Metasys N2 outputs and Modbus output registers or coils, so they are taken as writable. Access is inferred from object type.",
  "The guide gives no engineering units or state texts; units appear only where the object name carries them (DEG F / DEG C).",
  "Where a description is filled in, it gives the register from the guide's Modbus column."
 ],
 "source": {
  "title": "Cloud Enabled ProtoNode Gateway Startup Guide (RER/LER) for interfacing Cleaver-Brooks products",
  "doc_number": "750-426",
  "revision_date": "03/2018",
  "url": "https://watmfg.com/watmfg23082016/wp-content/uploads/2016/09/750-426-ProtoNode-Cloud.pdf",
  "unofficial": true,
  "host": "watmfg.com"
 },
 "integration": {
  "summary": "Read the process variable and output; write the local setpoint and auto/manual mode only if the BMS is meant to adjust the loop.",
  "minimum_points": [
   {
    "ref": "AV 14",
    "why": "Local setpoint 1",
    "name": "SP1_LSP1"
   },
   {
    "ref": "AV 30",
    "why": "Auto/manual selection",
    "name": "AutoMan"
   },
   {
    "ref": "AI 1",
    "why": "Process variable",
    "name": "PV"
   },
   {
    "ref": "AV 1",
    "why": "Working setpoint",
    "name": "WorkingSP"
   },
   {
    "ref": "AV 2",
    "why": "Controller output",
    "name": "Output"
   },
   {
    "ref": "AI 10",
    "why": "Alarm status bits 1-16",
    "name": "AlarmStat1_16"
   }
  ],
  "enable": null,
  "heartbeat": null,
  "remote_sensors": null,
  "setup": [
   "BACnet Device Instance = the controller's Modbus Node-ID + Node_Offset (default 50,000), so Node-ID 1 = 50001. Change Node_Offset in the ProtoNode web configurator to pick other instances.",
   "The ProtoNode RER does BACnet MS/TP or BACnet IP, selected on its S bank DIP switches.",
   "BACnet MS/TP: one MAC address (1-127) for the whole ProtoNode on the A bank DIP switches; baud on B0-B3 (38400 factory default).",
   "BACnet IP: default ProtoNode address 192.168.1.24; change it in the web configurator."
  ],
  "gotchas": [
   "Tuning (gain, reset, rate) and limit AVs change the controller's configuration; don't write them cyclically."
  ]
 },
 "points": [
  {
   "type": "AI",
   "instance": 1,
   "name": "PV",
   "description": "Modbus 40001",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 2,
   "name": "RV",
   "description": "Modbus 40002",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 3,
   "name": "Input1",
   "description": "Modbus 40005",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 4,
   "name": "Input2",
   "description": "Modbus 40006",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 5,
   "name": "Direction",
   "description": "Modbus 40008",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 6,
   "name": "PVLow",
   "description": "Modbus 40012",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 7,
   "name": "PVHigh",
   "description": "Modbus 40013",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 8,
   "name": "Alm1Action",
   "description": "Modbus 40016",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 9,
   "name": "Alm2Action",
   "description": "Modbus 40026",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 10,
   "name": "AlarmStat1_16",
   "description": "Modbus 47153",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 11,
   "name": "AlarmStat17_32",
   "description": "Modbus 47154",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 1,
   "name": "WorkingSP",
   "description": "Modbus 40003",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 2,
   "name": "Output",
   "description": "Modbus 40004",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 3,
   "name": "Gain1",
   "description": "Modbus 40007",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 4,
   "name": "Reset1",
   "description": "Modbus 40009",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 5,
   "name": "Rate1",
   "description": "Modbus 40010",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 6,
   "name": "CycleTime1",
   "description": "Modbus 40011",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 7,
   "name": "Alm1SP1",
   "description": "Modbus 40014",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 8,
   "name": "Alm1SP2",
   "description": "Modbus 40015",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 9,
   "name": "Gain2",
   "description": "Modbus 40017",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 10,
   "name": "Deadband",
   "description": "Modbus 40018",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 11,
   "name": "Reset2",
   "description": "Modbus 40019",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 12,
   "name": "Rate2",
   "description": "Modbus 40020",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 13,
   "name": "CycleTime2",
   "description": "Modbus 40021",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 14,
   "name": "SP1_LSP1",
   "description": "Modbus 40022",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 15,
   "name": "LSP2",
   "description": "Modbus 40023",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 16,
   "name": "Alm2SP1",
   "description": "Modbus 40024",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 17,
   "name": "Alm2SP2",
   "description": "Modbus 40025",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 18,
   "name": "SPLowLimit",
   "description": "Modbus 40027",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 19,
   "name": "SPHighLimit",
   "description": "Modbus 40028",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 20,
   "name": "WorkingSPa",
   "description": "Modbus 40029",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 21,
   "name": "OutputLowLimit",
   "description": "Modbus 40030",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 22,
   "name": "OutputHighLimit",
   "description": "Modbus 40031",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 23,
   "name": "OutputWorkValue",
   "description": "Modbus 40032",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 24,
   "name": "PVOverride",
   "description": "Modbus 40033",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 25,
   "name": "SPOverride",
   "description": "Modbus 40034",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 26,
   "name": "OutOverride",
   "description": "Modbus 40035",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 27,
   "name": "Ratio",
   "description": "Modbus 40036",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 28,
   "name": "Bias",
   "description": "Modbus 40037",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 29,
   "name": "LocRemSP",
   "description": "Modbus 40253",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 30,
   "name": "AutoMan",
   "description": "Modbus 40251",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 31,
   "name": "SPState",
   "description": "Modbus 40252",
   "units": "",
   "access": "W",
   "states": ""
  }
 ],
 "page": "https://easybacnet.com/bacnet-points-lists/cleaver-brooks/udc-2500-controller-protonode",
 "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"
}
