{
 "manufacturer": "Ouellet",
 "manufacturer_slug": "ouellet",
 "model": "FRIO S1 Heat Trace / Freeze Protection Controller",
 "model_slug": "frio-s1",
 "aliases": [
  "FRIO",
  "S1",
  "Ouellet S1",
  "Frio S1"
 ],
 "equipment_type": "Heat trace (freeze protection) controller",
 "applies_to": "Ouellet FRIO (S1) smart heat trace controllers for freeze protection and temperature maintenance.",
 "summary": "The FRIO S1 switches a heat trace circuit for pipe freeze protection or temperature maintenance, controlled locally by thermostat or from the Frio Cloud. Its BACnet list is short: current, voltage, RTD and thermistor temperatures, control mode, state and sub-state, alarm and relay status, plus a force on/off command.",
 "bacnet_transport": [],
 "firmware": null,
 "default_device_instance": null,
 "access_inferred": false,
 "notes": [
  "From the French-language \"Liste des points FRIO Modbus/BACnet\" (pages 1-3). Object names are kept in French as printed; descriptions are translated.",
  "The list also gives Modbus RTU registers. It does not say whether BACnet runs over IP or MS/TP.",
  "Access is from the Lecture/Écriture column: only AO 1 is R/W."
 ],
 "source": {
  "title": "Liste des points FRIO Modbus/BACnet (S1)",
  "doc_number": null,
  "revision_date": null,
  "url": "https://www.ouellet.com/getattachment/Produits/THERMOSTATS-et-CONTROLES/S1/S1_Modbus_BACnet_Liste-des-points.pdf.aspx?lang=fr-CA"
 },
 "integration": {
  "summary": "Read the heater relay state, alarm summary, current and temperature. The BMS can force the heater on or off with AO 1; writing 0 returns control to the configured mode.",
  "minimum_points": [
   {
    "ref": "AO 1",
    "name": "Forcer Marche/Arrêt",
    "why": "0 = no force, 1 = force on, 2 = force off"
   },
   {
    "ref": "BI 2",
    "name": "État du relais de chauffage",
    "why": "Heater relay: 1 = closed, heat on"
   },
   {
    "ref": "AI 8",
    "name": "État",
    "why": "Operating state"
   },
   {
    "ref": "AI 1",
    "name": "Actuel",
    "why": "Heat trace current, A"
   },
   {
    "ref": "AI 3",
    "name": "DTR Température C",
    "why": "RTD temperature, °C"
   },
   {
    "ref": "BI 1",
    "name": "Alarme",
    "why": "Any alarm active"
   }
  ],
  "enable": "Forcer Marche/Arrêt (AO 1): 1 = FORCE_ON, 2 = FORCE_OFF puts the unit in MODBUS_CONTROL state; 0 = DO_NOTHING returns to the configured control mode. This override has priority over local and cloud overrides.",
  "heartbeat": null,
  "remote_sensors": null,
  "setup": [],
  "gotchas": [
   "Temperature AIs read 65535 when the RTD or thermistor is not connected.",
   "A CRITICAL_ERROR state needs a manual test/reset cycle at the unit to clear."
  ]
 },
 "points": [
  {
   "type": "AI",
   "instance": 1,
   "name": "Actuel",
   "description": "Heat trace current draw; controller rated 30 A",
   "units": "A",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 2,
   "name": "Tension",
   "description": "Supply voltage; controller rated 277 V",
   "units": "V AC",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 3,
   "name": "DTR Température C",
   "description": "RTD temperature; 65535 if no RTD",
   "units": "°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 4,
   "name": "Température en C de la thermistance",
   "description": "Thermistor temperature; 65535 if not fitted",
   "units": "°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 5,
   "name": "DTR Température F",
   "description": "RTD temperature; 65535 if no RTD",
   "units": "°F",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 6,
   "name": "Température en F de la thermistance",
   "description": "Thermistor temperature; 65535 if not fitted",
   "units": "°F",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 7,
   "name": "Modes de contrôle",
   "description": "Configured control mode",
   "units": "",
   "access": "R",
   "states": "0=ALWAYS_OFF, 1=ALWAYS_ON, 2=THERMOSTAT_FP, 3=THERMOSTAT_TM, 4=CLOUD_CONTROL"
  },
  {
   "type": "AI",
   "instance": 8,
   "name": "État",
   "description": "Operating state",
   "units": "",
   "access": "R",
   "states": "0=CLOUD_CONTROL, 1=LOCAL_CONTROL, 2=OVERRIDE, 3=CRITICAL_ERROR, 4=MODBUS_CONTROL"
  },
  {
   "type": "AI",
   "instance": 9,
   "name": "Sous-état",
   "description": "Operating sub-state",
   "units": "",
   "access": "R",
   "states": "0=THERMOSTAT_FP, 1=THERMOSTAT_TM, 2=ALWAYS_ON, 3=ALWAYS_OFF, 4=CLOUD_CONTROL"
  },
  {
   "type": "BI",
   "instance": 1,
   "name": "Alarme",
   "description": "Alarm summary",
   "units": "",
   "access": "R",
   "states": "0=No alarm, 1=One or more alarms"
  },
  {
   "type": "BI",
   "instance": 2,
   "name": "État du relais de chauffage",
   "description": "Heater relay state",
   "units": "",
   "access": "R",
   "states": "0=Relay open, heat off, 1=Relay closed, heat on"
  },
  {
   "type": "AO",
   "instance": 1,
   "name": "Forcer Marche/Arrêt",
   "description": "Force heater relay, ignoring control mode",
   "units": "",
   "access": "W",
   "states": "0=DO_NOTHING, 1=FORCE_ON, 2=FORCE_OFF"
  }
 ],
 "page": "https://easybacnet.com/bacnet-points-lists/ouellet/frio-s1",
 "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"
}
