{
 "manufacturer": "Regin",
 "manufacturer_slug": "regin",
 "model": "RCF fan coil room controllers (RCF-230CD, RCF-230CAD, RCF-230CTD, RCF-230CTD-EC)",
 "model_slug": "rcf-fan-coil-controller",
 "short_model": "Regio RCF",
 "aliases": [
  "RCF",
  "Regio RCF",
  "RCF-230CD",
  "RCF-230CAD",
  "RCF-230CTD",
  "RCF-230CTD-EC"
 ],
 "equipment_type": "Fan coil room controller",
 "applies_to": "Regin RCF 230 V wall-mounted fan coil controllers with built-in communication (models with a C in the name).",
 "summary": "The RCF is a wall-mounted fan coil controller for heating, cooling and change-over with a three-speed or EC fan. Models with a C in the name have an RS485 port that runs EXOline, Modbus or BACnet MS/TP; BACnet is selected with parameter 57. All communicating models share one object list; objects for functions a model lacks stay unused.",
 "bacnet_transport": [
  "BACnet MS/TP"
 ],
 "firmware": "1.4-1-00 or later (BTL listed from 1.2-1-00)",
 "default_device_instance": null,
 "access_inferred": false,
 "notes": [
  "Object list from chapter 19 of the RCF manual (rev 3.2, May 2021), pages 52-56.",
  "Rows printed as 'Not used in this model' (AV 7-8, AV 11, AV 17-26, BI 1, BI 4-6, BV 0, BV 5-6, BV 8, MI 0, MV 3) are left out. BV 11 is not listed at all.",
  "Value objects are not commandable (no priority array).",
  "RegioMinECFanSpeed and RegioMaxFanSpeed (AV 27-28) only apply to the RCF-230CTD-EC.",
  "EDE files for the BACnet objects come with the Regio tool installation."
 ],
 "source": {
  "title": "RCF manual",
  "doc_number": null,
  "revision_date": "Rev. 3.2, May 2021",
  "url": "https://www.regincontrols.com/globalassets/pimmediafiles/documents/rcf_manu_en.pdf"
 },
 "points": [
  {
   "type": "AI",
   "instance": 0,
   "name": "RC_Actual_R.RegioRoomTemp",
   "description": "Room temperature",
   "units": "°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 1,
   "name": "RC_Actual_R.RegioAIChangeOver",
   "description": "Change-over temperature",
   "units": "°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 2,
   "name": "RC_Actual_R.RegioAnaIn1",
   "description": "Value on analogue input 1",
   "units": "°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 3,
   "name": "RC_Actual_R.RegioUAnaIn1",
   "description": "Value on universal analogue input 1",
   "units": "V",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 4,
   "name": "RC_Actual_R.RegioSupplyAirTemp",
   "description": "Supply air temperature",
   "units": "°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 0,
   "name": "RC_Actual_R.RegioUAnaOut1",
   "description": "Value on universal analogue output 1",
   "units": "V",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 1,
   "name": "RC_Actual_R.RegioUAnaOut2",
   "description": "Value on universal analogue output 2",
   "units": "V",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 2,
   "name": "RC_Actual_R.RegioSetPAdjustment",
   "description": "Setpoint displacement from internal unit",
   "units": "°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 3,
   "name": "RC_Actual_R.RegioPIDSetP",
   "description": "Controller setpoint",
   "units": "°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 4,
   "name": "RC_Actual_R.RegioPIDOutput",
   "description": "Controller output",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 5,
   "name": "RC_Actual_R.RegioHeatOutput",
   "description": "Heating control",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 6,
   "name": "RC_Actual_R.RegioCoolOutput",
   "description": "Cooling control",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 9,
   "name": "RC_Setp_R.RegioUnOccSetPHeat",
   "description": "Room heating setpoint in Economy mode",
   "units": "°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 10,
   "name": "RC_Setp_R.RegioUnOccSetPCool",
   "description": "Room cooling setpoint in Economy mode",
   "units": "°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 12,
   "name": "RC_Setp_R.RegioSetPOffset",
   "description": "Setpoint displacement during presence",
   "units": "°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 13,
   "name": "RC_Setp_R.RegioHeatOutputManual",
   "description": "Manual value heating output",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 14,
   "name": "RC_Setp_R.RegioCoolOutputManual",
   "description": "Manual value cooling output",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 15,
   "name": "RC_Setp_R.RegioRoomTempRemote",
   "description": "Room temperature written from the network",
   "units": "°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 16,
   "name": "RC_Setp_R.RegioStandbySetPDeadBand",
   "description": "Deadband for Standby mode",
   "units": "°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 27,
   "name": "RC_Setp_R.RegioMinECFanSpeed",
   "description": "Lowest possible speed for the EC fan",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 28,
   "name": "RC_Setp_R.RegioMaxFanSpeed",
   "description": "Highest possible speed for the EC fan",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 29,
   "name": "RC_Setp_R.RegioAIChangeOverLimitLow",
   "description": "Cool when change-over temperature is below this",
   "units": "°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 30,
   "name": "RC_Setp_R.RegioAIChangeOverLimitHigh",
   "description": "Heat when change-over temperature is above this",
   "units": "°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 31,
   "name": "RC_Setp_R.RegioThermostatHyst",
   "description": "Room temperature hysteresis",
   "units": "°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 32,
   "name": "RC_Setp_R.RegioComfortSetPDeadband",
   "description": "Deadband for comfort mode",
   "units": "°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 33,
   "name": "RC_SetpExt_R.RegioRCFSetPoint",
   "description": "Basic setpoint for the controller",
   "units": "°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 34,
   "name": "RC_Actual_R.RegioPID2Setp",
   "description": "Calculated supply air setpoint",
   "units": "°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 0,
   "name": "RC_Actual_L.RegioDIOpenWindow",
   "description": "Indicates open window",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 2,
   "name": "RC_Actual_L.RegioDIPresences",
   "description": "Indicates presence from digital input",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 3,
   "name": "RC_Actual_L.RegioDIChangeOver",
   "description": "Indicates change-over from digital input",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 1,
   "name": "RC_Actual_L.RegioCVHeatPulsProp",
   "description": "Indicates pulse prop. heating",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 2,
   "name": "RC_Actual_L.RegioCVCoolPulsProp",
   "description": "Indicates pulse prop. cooling",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 3,
   "name": "RC_Actual_L.RegioCVHeatInc",
   "description": "Indicates heating increase",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 4,
   "name": "RC_Actual_L.RegioCVHeatDec",
   "description": "Indicates heating decrease",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 7,
   "name": "RC_Actual_L.RegioChangeOverState",
   "description": "Change-over state from digital or analogue input",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 9,
   "name": "RC_Actual_L.RegioFireAlarmStop",
   "description": "Fire alarm stop: shutdown and block restart until reset to 0",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 10,
   "name": "RC_Setp_L.RegioShutDown",
   "description": "Places the unit in Shutdown mode",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 12,
   "name": "RC_Setp_L.RegioBlockConfig",
   "description": "Prevents parameter menu access via display",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "LO",
   "instance": 0,
   "name": "Controller",
   "description": "Room temperature control loop",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "MI",
   "instance": 1,
   "name": "RC_Actual_X.RegioUnitState",
   "description": "Current running mode",
   "units": "",
   "access": "R",
   "states": "1=Off, 2=Economy/Standby, 3=Not used, 4=Not used, 5=Comfort"
  },
  {
   "type": "MI",
   "instance": 2,
   "name": "RC_Actual_X.RegioControllerState",
   "description": "Current control mode",
   "units": "",
   "access": "R",
   "states": "1=Off, 2=Heating, 3=Cooling"
  },
  {
   "type": "MI",
   "instance": 3,
   "name": "RC_Actual_X.RegioFanSpeed",
   "description": "Current fan speed",
   "units": "",
   "access": "R",
   "states": "1=Off, 2=Fan speed 1, 3=Fan speed 2, 4=Fan speed 3"
  },
  {
   "type": "MV",
   "instance": 0,
   "name": "RC_Setp_X.RegioHeatOutputSelect",
   "description": "Manual/Auto heat output",
   "units": "",
   "access": "W",
   "states": "1=Off, 2=Manual output, 3=Automatic output"
  },
  {
   "type": "MV",
   "instance": 1,
   "name": "RC_Setp_X.RegioCoolOutputSelect",
   "description": "Manual/Auto cool output",
   "units": "",
   "access": "W",
   "states": "1=Off, 2=Manual output, 3=Automatic output"
  },
  {
   "type": "MV",
   "instance": 2,
   "name": "RC_Setp_X.RegioFanSelect",
   "description": "Fan mode select",
   "units": "",
   "access": "W",
   "states": "1=Off, 2=Manual speed 1, 3=Manual speed 2, 4=Manual speed 3, 5=Auto, 6=Auto 2, 7=Auto 1"
  },
  {
   "type": "MV",
   "instance": 4,
   "name": "RC_Setp_X.RegioChangeOverSelect",
   "description": "Manual/Auto change-over",
   "units": "",
   "access": "W",
   "states": "1=Heating, 2=Cooling, 3=Auto"
  },
  {
   "type": "MV",
   "instance": 5,
   "name": "RC_Setp_X.RegioRemoteState",
   "description": "Remote control unit state",
   "units": "",
   "access": "W",
   "states": "1=Off, 2=Economy/Standby, 3=Not used, 4=Not used, 5=Comfort, 6=No remote control"
  },
  {
   "type": "MV",
   "instance": 6,
   "name": "RC_Non_Modbus.RegioButtonActiveConf",
   "description": "Buttons active",
   "units": "",
   "access": "W",
   "states": "1=No buttons, 2=Occupancy button only, 3=INCREASE/DECREASE only, 4=Occupancy button and INCREASE/DECREASE, 5=Fan button only, 6=Occupancy button and fan button, 7=INCREASE/DECREASE and fan button, 8=All buttons"
  }
 ],
 "integration": {
  "summary": "Set parameter 57 to BACnet MS/TP, then the MAC address and device ID (parameters 58-60). Command the unit state with RegioRemoteState (MV 5), adjust the basic setpoint (AV 33) and fan mode, and read room temperature, running mode, control mode and fan speed.",
  "minimum_points": [
   {
    "ref": "MV 5",
    "name": "RC_Setp_X.RegioRemoteState",
    "why": "Unit state command: off, economy/standby or comfort"
   },
   {
    "ref": "BV 10",
    "name": "RC_Setp_L.RegioShutDown",
    "why": "Force the unit into shutdown"
   },
   {
    "ref": "AV 33",
    "name": "RC_SetpExt_R.RegioRCFSetPoint",
    "why": "Basic room setpoint"
   },
   {
    "ref": "MV 2",
    "name": "RC_Setp_X.RegioFanSelect",
    "why": "Fan mode: off, manual speed 1-3 or auto"
   },
   {
    "ref": "MI 1",
    "name": "RC_Actual_X.RegioUnitState",
    "why": "Current running mode"
   },
   {
    "ref": "MI 2",
    "name": "RC_Actual_X.RegioControllerState",
    "why": "Off, heating or cooling"
   },
   {
    "ref": "MI 3",
    "name": "RC_Actual_X.RegioFanSpeed",
    "why": "Current fan speed"
   },
   {
    "ref": "AI 0",
    "name": "RC_Actual_R.RegioRoomTemp",
    "why": "Room temperature"
   },
   {
    "ref": "AV 3",
    "name": "RC_Actual_R.RegioPIDSetP",
    "why": "Active controller setpoint"
   }
  ],
  "enable": "RegioRemoteState (MV 5) forces off, economy/standby or comfort; 6 = no remote control returns control to the buttons. RegioShutDown (BV 10) forces shutdown, and RegioFireAlarmStop (BV 9) blocks the unit until it is written back to 0.",
  "heartbeat": null,
  "remote_sensors": "RegioRoomTempRemote (AV 15) takes the room temperature from the network when the controller is configured for remote room temperature.",
  "setup": [
   "Parameter 57 = 1 selects BACnet MS/TP (0 = automatic EXOline/Modbus).",
   "MAC address 0-127 (parameter 58); device ID is set as the 4 lowest digits (59) and 3 highest digits (60). Max master is parameter 61 (default 127).",
   "Speeds 9600, 19200, 38400 or 76800 bit/s (76800 only for BACnet).",
   "Once switched to BACnet, the protocol can only be switched back from the display."
  ],
  "gotchas": [
   "RegioFireAlarmStop (BV 9) keeps the unit off and locks the On/Off button until the BMS writes 0.",
   "RegioBlockConfig (BV 12) locks the parameter menu and can only be released over the network.",
   "Value objects have no priority array; the last write wins."
  ]
 },
 "page": "https://easybacnet.com/bacnet-points-lists/regin/rcf-fan-coil-controller",
 "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"
}
