{
 "manufacturer": "WaterFurnace",
 "manufacturer_slug": "waterfurnace",
 "model": "Dual Compressor Water-to-Air Heat Pump with Hot Gas Reheat (FX10)",
 "model_slug": "fx10-dual-compressor-water-to-air-hot-gas-reheat",
 "short_model": "Water-to-Air Dual Compressor Reheat (FX10)",
 "aliases": [
  "PRODCWA-RH-03",
  "PRODCWA-RH",
  "WaterFurnace dual compressor reheat FX10",
  "WaterFurnace FX10"
 ],
 "equipment_type": "Water-source heat pump controller",
 "applies_to": "WaterFurnace dual-compressor water-to-air heat pumps with hot gas reheat, fitted with the FX10 DDC controller.",
 "summary": "BACnet objects for WaterFurnace's dual-compressor water-to-air heat pump with hot gas reheat on the FX10 controller. The BAS can command occupancy and let the FX10 hold its setpoints, or send G, Y1, Y2 and O calls directly. Space temperature and humidity can be overridden from the network, and a dehumidification setpoint and dehumidistat command drive the reheat.",
 "bacnet_transport": [],
 "firmware": null,
 "default_device_instance": null,
 "access_inferred": false,
 "notes": [
  "Output-type points (AO/MO) are volatile and fall back to uncommanded after a power cycle; unlimited writes.",
  "Value-type points (AV/MV) are stored in flash (about 2,000,000 write life); never write them from automatic reset logic.",
  "Multistate numbers assume the BAS shows 255 as uncommanded; if yours shows 254, every state number is one lower (0=Off, 1=On).",
  "Units are not printed on the sheet. The sheet does not state the BACnet transport.",
  "The sheet jumps from MO9 to MO14 (DHStat Cmd); MO10-MO13 are not listed."
 ],
 "source": {
  "title": "BACnet Points for Dual Compressor Water-to-Air Heat Pumps With Hot Gas Reheat Utilizing the FX10 Controller",
  "doc_number": "PRODCWA-RH-03",
  "revision_date": "2013-02",
  "url": "https://www.waterfurnace.com/downloads/ddc/BACnet-Resources/BACnet-points-pdfs/PRODCWA-RH-03.pdf"
 },
 "integration": {
  "summary": "The BAS can run this heat pump in two ways: command occupancy (MO1) and let the FX10 hold its occupied/unoccupied setpoints, or act as the thermostat and send fan, Y1, Y2 and O calls (MO2-MO5). Space temperature and humidity can be overridden on AO2 and AO3, and MO6 forces an emergency shutdown. Keep frequent writes on the volatile AO/MO points, not the flash-backed AV/MV setpoints.",
  "minimum_points": [
   {
    "ref": "MO 1",
    "name": "Occupancy Command",
    "why": "Occupied/unoccupied/bypass/standby command"
   },
   {
    "ref": "MO 6",
    "name": "Emergency Override",
    "why": "Network emergency shutdown (1 = shutdown)"
   },
   {
    "ref": "AV 1",
    "name": "Occupied Cool",
    "why": "Occupied cooling setpoint (flash; write rarely)"
   },
   {
    "ref": "AV 2",
    "name": "Occupied Heat",
    "why": "Occupied heating setpoint (flash; write rarely)"
   },
   {
    "ref": "AV 5",
    "name": "Dehum Setpt",
    "why": "Dehumidification setpoint for reheat (flash)"
   },
   {
    "ref": "MO 7",
    "name": "Alarm Reset",
    "why": "Reset manual-reset alarms"
   },
   {
    "ref": "MI 2",
    "name": "Mode",
    "why": "Current unit mode (auto, heat, cool, shutdown...)"
   },
   {
    "ref": "MI 5",
    "name": "Comp1 Cmd Status",
    "why": "Compressor 1 commanded on/off"
   },
   {
    "ref": "AI 1",
    "name": "Space Temp",
    "why": "Space sensor temperature (terminals RS/AIC)"
   },
   {
    "ref": "AI 8",
    "name": "Alarms Enumerated",
    "why": "Active alarm code"
   }
  ],
  "enable": "The sheet has no separate BAS-enable point. MO6 Emergency Override puts the unit in shutdown (1) or back to auto (2). MO2-MO5 let the BAS send fan, compressor and reversing-valve calls directly.",
  "heartbeat": null,
  "remote_sensors": "AO2 Space Temp Ovrd and AO3 Space RH Ovrd replace the space temperature and humidity readings from the network. MO14 DHStat Cmd drives the dehumidistat input. All are volatile outputs and revert to uncommanded after a power cycle.",
  "setup": [],
  "gotchas": [
   "AV/MV points are stored in flash (about 2,000,000 writes); write them only manually or by schedule, never from automatic reset logic.",
   "Output points (AO/MO) are volatile and go back to uncommanded after a power cycle, so rewrite them after power returns.",
   "If the BAS shows 254 as uncommanded instead of 255, every multistate value is one lower.",
   "Alarm Reset needs a write of 2 followed by 1."
  ]
 },
 "points": [
  {
   "type": "AI",
   "instance": 1,
   "name": "Space Temp",
   "description": "Space sensor reading (terminals RS/AIC)",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 2,
   "name": "Discharge Air",
   "description": "Discharge air sensor (FX10 input AI4)",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 3,
   "name": "Circuit 1 Temp",
   "description": "Water coil heat exchanger temperature, circuit 1",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 4,
   "name": "Circuit 2 Temp",
   "description": "Water coil heat exchanger temperature, circuit 2",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 5,
   "name": "Active Clg Setpt",
   "description": "Effective cooling setpoint",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 6,
   "name": "Active Hgt Setpt",
   "description": "Effective heating setpoint",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 7,
   "name": "Low Temp Limit",
   "description": "Water coil low temperature limit",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 8,
   "name": "Alarms Enumerated",
   "description": "Active alarm code (see alarm table)",
   "units": "",
   "access": "R",
   "states": "0=No Alarm; 1=Condensate Detected; 2=Compressor 1 High Discharge Pressure; 3=Compressor 1 Low Suction Pressure; 4=Circuit 1 Low Temp Limit on Coax; 5=Compressor 2 High Discharge Pressure; 6=Compressor 2 Low Suction Pressure; 7=Circuit 2 Low Temp Limit on Coax; 8=Circuit 1 Bad Refrigerant Temp Sensor; 9=Circuit 2 Bad Refrigerant Temp Sensor"
  },
  {
   "type": "AI",
   "instance": 9,
   "name": "Space RH",
   "description": "Space relative humidity",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 10,
   "name": "Lock Out",
   "description": "Generic alarm status (details in AI8)",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 11,
   "name": "Setpt Offset",
   "description": "Sensor warm/cool adjust value",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AO",
   "instance": 1,
   "name": "Common Setpoint",
   "description": "Midpoint setpoint; moves heating and cooling setpoints together",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AO",
   "instance": 2,
   "name": "Space Temp Ovrd",
   "description": "Network override of the space temperature reading",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AO",
   "instance": 3,
   "name": "Space RH Ovrd",
   "description": "Network override of the space humidity reading",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 1,
   "name": "Occupied Cool",
   "description": "Occupied cooling setpoint (flash)",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 2,
   "name": "Occupied Heat",
   "description": "Occupied heating setpoint (flash)",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 3,
   "name": "Unoccupied Cool",
   "description": "Unoccupied cooling setpoint (flash)",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 4,
   "name": "Unoccupied Heat",
   "description": "Unoccupied heating setpoint (flash)",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 5,
   "name": "Dehum Setpt",
   "description": "Dehumidification setpoint for reheat operation",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 6,
   "name": "Max Hgt Setpt",
   "description": "Upper limit for the heating setpoint",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 7,
   "name": "Min Clg Setpt",
   "description": "Lower limit for the cooling setpoint",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 8,
   "name": "Remote Setpt Span",
   "description": "Setpoint shift span, default 2.7 C",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 9,
   "name": "Remote Setpt Bias",
   "description": "Calibrates the setpoint shift center point",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 10,
   "name": "Zone Temp Offset",
   "description": "Calibration offset for the zone sensor",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 11,
   "name": "Integration DeadBand",
   "description": "Zone temperature PI deadband",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 12,
   "name": "HGT Clg Integral Time",
   "description": "Zone temperature PI integration rate",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 13,
   "name": "Dehum Integral Time",
   "description": "Dehumidification PI integration rate",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "MI",
   "instance": 1,
   "name": "Effective Occupancy",
   "description": "Current occupancy status",
   "units": "",
   "access": "R",
   "states": "1=Occupied; 2=Unoccupied; 3=Bypass (temporary occupancy)"
  },
  {
   "type": "MI",
   "instance": 2,
   "name": "Mode",
   "description": "Current unit mode",
   "units": "",
   "access": "R",
   "states": "1=Auto; 2=Heat; 3=Morning Warm-up; 4=Cool; 5=Night Purge; 6=Pre Cool; 7=Off (Shutdown); 8=Test; 9=Emergency Heat"
  },
  {
   "type": "MI",
   "instance": 3,
   "name": "BI7",
   "description": "Digital input 7 state",
   "units": "",
   "access": "R",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MI",
   "instance": 4,
   "name": "Fan Cmd Status",
   "description": "Commanded fan status",
   "units": "",
   "access": "R",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MI",
   "instance": 5,
   "name": "Comp1 Cmd Status",
   "description": "Commanded compressor 1 status",
   "units": "",
   "access": "R",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MI",
   "instance": 6,
   "name": "Comp2 Cmd Status",
   "description": "Commanded compressor 2 status",
   "units": "",
   "access": "R",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MI",
   "instance": 7,
   "name": "Rev Valve Status",
   "description": "Commanded reversing valve position",
   "units": "",
   "access": "R",
   "states": "1=Heating; 2=Cooling"
  },
  {
   "type": "MI",
   "instance": 8,
   "name": "BO-5/Elect Heat",
   "description": "Commanded state of binary output 5",
   "units": "",
   "access": "R",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MI",
   "instance": 9,
   "name": "BO-9 Spare",
   "description": "Commanded state of spare binary output 9",
   "units": "",
   "access": "R",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MI",
   "instance": 10,
   "name": "BI8 Status",
   "description": "Digital input 8 state",
   "units": "",
   "access": "R",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MI",
   "instance": 11,
   "name": "BI9 Status",
   "description": "Digital input 9 state",
   "units": "",
   "access": "R",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MI",
   "instance": 12,
   "name": "BI10 Status",
   "description": "Digital input 10 state",
   "units": "",
   "access": "R",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MI",
   "instance": 13,
   "name": "Reheat Status 1",
   "description": "Reheat control valve, circuit 1",
   "units": "",
   "access": "R",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MI",
   "instance": 14,
   "name": "Reheat Status 2",
   "description": "Reheat control valve, circuit 2",
   "units": "",
   "access": "R",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MO",
   "instance": 1,
   "name": "Occupancy Command",
   "description": "Network occupancy command",
   "units": "",
   "access": "W",
   "states": "1=Occupied; 2=Unoccupied; 3=Bypass; 4=Standby"
  },
  {
   "type": "MO",
   "instance": 2,
   "name": "Fan Command",
   "description": "Network fan call (thermostat G)",
   "units": "",
   "access": "W",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MO",
   "instance": 3,
   "name": "Comp1 Command (Y1)",
   "description": "Network compressor call (thermostat Y1)",
   "units": "",
   "access": "W",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MO",
   "instance": 4,
   "name": "Comp2 Command (Y2)",
   "description": "Network compressor call (thermostat Y2)",
   "units": "",
   "access": "W",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MO",
   "instance": 5,
   "name": "Rev Vlv Cmd",
   "description": "Network reversing valve call (thermostat O)",
   "units": "",
   "access": "W",
   "states": "1=Heat; 2=Cooling"
  },
  {
   "type": "MO",
   "instance": 6,
   "name": "Emergency Override",
   "description": "Network emergency shutdown",
   "units": "",
   "access": "W",
   "states": "1=Shutdown; 2=Auto"
  },
  {
   "type": "MO",
   "instance": 7,
   "name": "Alarm Reset",
   "description": "Reset manual-reset alarms: write 2, then back to 1",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "MO",
   "instance": 8,
   "name": "BO5 Elect Heat",
   "description": "Network control of binary output 5",
   "units": "",
   "access": "W",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MO",
   "instance": 9,
   "name": "BO9 Spare",
   "description": "Network control of binary output 9",
   "units": "",
   "access": "W",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MO",
   "instance": 14,
   "name": "DHStat Cmd",
   "description": "Network control of the dehumidistat input",
   "units": "",
   "access": "W",
   "states": "1=Off; 2=On"
  },
  {
   "type": "MV",
   "instance": 1,
   "name": "Sensor Select",
   "description": "Zone sensor type selection",
   "units": "",
   "access": "W",
   "states": "1=TAXXJ02, TAXXA03, TAXXA04; 2=TAXXA01"
  },
  {
   "type": "MV",
   "instance": 2,
   "name": "Acc 1 Action",
   "description": "Accessory 1 (X1) output with or without compressor",
   "units": "",
   "access": "W",
   "states": "1=On with Compressor; 2=Off with Compressor"
  },
  {
   "type": "MV",
   "instance": 3,
   "name": "Fan Operation",
   "description": "Continuous or cycled fan",
   "units": "",
   "access": "W",
   "states": "1=Continuous; 2=Cycled"
  },
  {
   "type": "MV",
   "instance": 4,
   "name": "Lead Lag",
   "description": "Compressor lead/lag",
   "units": "",
   "access": "W",
   "states": "1=Disabled; 2=Enabled"
  }
 ],
 "page": "https://easybacnet.com/bacnet-points-lists/waterfurnace/fx10-dual-compressor-water-to-air-hot-gas-reheat",
 "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"
}
