{
 "manufacturer": "Heat-Timer",
 "manufacturer_slug": "heat-timer",
 "model": "MPC Platinum (BACnet)",
 "model_slug": "mpc-platinum",
 "aliases": [
  "MPC",
  "MPC Platinum",
  "Heat-Timer MPC",
  "Platinum BACnet"
 ],
 "equipment_type": "Boiler / steam heating plant control",
 "applies_to": "Heat-Timer MPC Platinum heating control for a burner/valve or district steam plant, with the BACnet IP/MS/TP board.",
 "summary": "The MPC Platinum runs a heating plant (burner, valve or district steam) on outdoor temperature with day and night heat adjustments. Its BACnet board exposes the settings, schedule slots, sensor readings and relay states as Analog, Binary and Multi-state Values with instances in steps of 100.",
 "bacnet_transport": [
  "BACnet IP",
  "BACnet MS/TP"
 ],
 "firmware": null,
 "default_device_instance": null,
 "access_inferred": false,
 "notes": [
  "Objects are Analog, Binary and Multi-state Values only. Rows without a read-only mark in the manual are listed as writable.",
  "Temperature objects use °F or °C depending on the INMODE (sensor type/mode) setting.",
  "Start-up settings can be read but not written over BACnet; Heat-Timer says to set them at the panel first.",
  "The manual prints some rows as ranges (SCHEDULES00-55 = 2000-2055). Only the first and last printed objects of each range are listed here; the ones in between follow the same pattern.",
  "BOOSTADJ is printed with the range \"0 1 - 6 4\" (decimal points appear to be missing).",
  "Variable list: manual pages 12-13."
 ],
 "integration": {
  "summary": "The MPC cycles a heating plant (burner/valve or district steam) on outdoor temperature. From the BMS, read the system and outdoor temperatures and the output and system relays; adjust the day/night heat adjustments, cutoffs or system setpoint, and force a day/night shift if needed.",
  "minimum_points": [
   {
    "ref": "MV 2200",
    "name": "SHIFT",
    "why": "Force day/night: 1 To-Day, 2 To-Night, 3 Extend-Day"
   },
   {
    "ref": "MV 600",
    "name": "DADJUST",
    "why": "Day heat adjustment curve, A-P"
   },
   {
    "ref": "AV 2900",
    "name": "XYZTEMP",
    "why": "System setpoint (burner/valve mode)"
   },
   {
    "ref": "AV 2400",
    "name": "SYSSEN",
    "why": "System sensor temperature"
   },
   {
    "ref": "AV 1400",
    "name": "ODTEMP",
    "why": "Outdoor temperature"
   },
   {
    "ref": "BV 1700",
    "name": "OUTPUT",
    "why": "Output relay (1 = on)"
   },
   {
    "ref": "BV 2500",
    "name": "SYSTEM",
    "why": "System relay (1 = on)"
   }
  ],
  "enable": null,
  "heartbeat": null,
  "remote_sensors": null,
  "setup": [
   "BACnet IP or BACnet MS/TP is chosen at the panel (Network Settings > Switch to IP / Switch to MS/TP).",
   "Device ID is a 7-digit number entered at the panel; the device object name is HTC_ followed by the panel serial number.",
   "MS/TP: MAC address 1-127 (default 1), baud 9600, 19200 or 38400 (default 9600), 8 data bits, no parity, 1 stop bit.",
   "IP: leave the IP and mask blank for DHCP, or enter a fixed address at the panel."
  ],
  "gotchas": [
   "XYZMIN applies in District Steam mode; XYZTEMP, HDIFF and TLOCKOUT in Burner/valve mode.",
   "BOOSTADJ applies with BOOSTMODE VariDay/VariDayNight; BOOSTTIME with ManualBoost.",
   "The weekly schedule is 56 AV slots (instances 2000-2055), minutes since midnight; 1440 = empty slot."
  ]
 },
 "source": {
  "title": "Platinum BACnet Installation and Configuration Manual (IP and MS/TP) - MPC Platinum BACnet Variable List (pp. 12-13)",
  "doc_number": "HT# 059082-00C",
  "revision_date": null,
  "url": "https://www.heat-timer.com/wp-content/uploads/2019/04/Platinum-BACnet-Configuration-Manual-059082C-Color.pdf"
 },
 "points": [
  {
   "type": "AV",
   "instance": 0,
   "name": "BOOSTADJ",
   "description": "Vari-Boost Adjustment; range printed \"0 1 - 6 4\"",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "MV",
   "instance": 100,
   "name": "BOOSTMODE",
   "description": "Boost Mode",
   "units": "",
   "access": "W",
   "states": "1=BoostOff, 2=ManualBoost, 3=VariDay, 4=VariDayNight"
  },
  {
   "type": "AV",
   "instance": 200,
   "name": "BOOSTTIME",
   "description": "Manual Boost Time; range 0 - 120",
   "units": "min",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 300,
   "name": "BPTIME",
   "description": "Bypass Time; range 0 - 2,147,483,647",
   "units": "min",
   "access": "R",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 400,
   "name": "BYPASSMODE",
   "description": "Bypass Mode",
   "units": "",
   "access": "W",
   "states": "0=AUTO, 1=ON"
  },
  {
   "type": "AV",
   "instance": 500,
   "name": "CLENGTH",
   "description": "Cycle Length; range 10 - 240",
   "units": "min",
   "access": "W",
   "states": ""
  },
  {
   "type": "MV",
   "instance": 600,
   "name": "DADJUST",
   "description": "Day Heat Adjustment",
   "units": "",
   "access": "W",
   "states": "1=A, 2=B, 3=C, 4=D, 5=E, 6=F, 7=G, 8=H, 9=I, 10=J, 11=K, 12=L, 13=M, 14=N, 15=O, 16=P"
  },
  {
   "type": "AV",
   "instance": 700,
   "name": "DCUTOFF",
   "description": "Outdoor Day Cutoff; range -6 - 38°C, 20 - 100°F",
   "units": "°F or °C (per INMODE)",
   "access": "W",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 800,
   "name": "DLS",
   "description": "Day Light Saving",
   "units": "",
   "access": "W",
   "states": "0=Enable, 1=Disable"
  },
  {
   "type": "BV",
   "instance": 900,
   "name": "FAULTMODE",
   "description": "Sensor Fault Mode",
   "units": "",
   "access": "W",
   "states": "0=OutputOn, 1=OutputOff"
  },
  {
   "type": "AV",
   "instance": 1000,
   "name": "HDIFF",
   "description": "System Differential; range 2 - 42°C, 3 - 75°F",
   "units": "°F or °C (per INMODE)",
   "access": "W",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 1100,
   "name": "INMODE",
   "description": "Sensor Mode",
   "units": "",
   "access": "W",
   "states": "0=°F, 1=°C"
  },
  {
   "type": "MV",
   "instance": 1200,
   "name": "NADJUST",
   "description": "Night Heat Adjustment",
   "units": "",
   "access": "W",
   "states": "1=A, 2=B, 3=C, 4=D, 5=E, 6=F, 7=G, 8=H, 9=I, 10=J, 11=K, 12=L, 13=M, 14=N, 15=O, 16=P"
  },
  {
   "type": "AV",
   "instance": 1300,
   "name": "NCUTOFF",
   "description": "Outdoor Night Cutoff; range -6 - 38°C, 20 - 100°F",
   "units": "°F or °C (per INMODE)",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 1400,
   "name": "ODTEMP",
   "description": "Outdoor Sensor; range -40 - +122°C, -40 - +250°F",
   "units": "°F or °C (per INMODE)",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 1500,
   "name": "ODTRIM",
   "description": "Outdoor Sensor Trim; range -3 - +3°C, -5 - +5°F",
   "units": "°F or °C (per INMODE)",
   "access": "W",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 1600,
   "name": "OPMODE",
   "description": "Operation Mode",
   "units": "",
   "access": "W",
   "states": "0=Burner/valve, 1=District Steam"
  },
  {
   "type": "BV",
   "instance": 1700,
   "name": "OUTPUT",
   "description": "Output Relay",
   "units": "",
   "access": "R",
   "states": "0=Off, 1=On"
  },
  {
   "type": "AV",
   "instance": 1800,
   "name": "PDATE",
   "description": "Panel Date; range 0 - 2,147,483,647",
   "units": "days since 1/1/1981",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 1900,
   "name": "PTIME",
   "description": "Panel Time; range 0 - 1439",
   "units": "min since 0:00",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 2000,
   "name": "SCHEDULES00",
   "description": "Schedules; range 0 - 1439, 1440=empty schedule (first of 2000-2055)",
   "units": "min since 0:00",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 2055,
   "name": "SCHEDULES55",
   "description": "Schedules; range 0 - 1439, 1440=empty schedule (last of 2000-2055)",
   "units": "min since 0:00",
   "access": "W",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 2100,
   "name": "SEASON",
   "description": "Season",
   "units": "",
   "access": "W",
   "states": "0=Winter, 1=Summer"
  },
  {
   "type": "MV",
   "instance": 2200,
   "name": "SHIFT",
   "description": "Day/Night Shift",
   "units": "",
   "access": "W",
   "states": "1=To-Day, 2=To-Night, 3=Extend-Day, 4=To-Schedule"
  },
  {
   "type": "AV",
   "instance": 2300,
   "name": "SRUNON",
   "description": "System Run-on; range 0 - 60",
   "units": "min",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 2400,
   "name": "SYSSEN",
   "description": "System Sensor; range -40 - +122°C, -40 - +250°F",
   "units": "°F or °C (per INMODE)",
   "access": "R",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 2500,
   "name": "SYSTEM",
   "description": "System Relay",
   "units": "",
   "access": "R",
   "states": "0=Off, 1=On"
  },
  {
   "type": "AV",
   "instance": 2600,
   "name": "SYTRIM",
   "description": "System Sensor Trim; range -3 - +3°C, -5 - +5°F",
   "units": "°F or °C (per INMODE)",
   "access": "W",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 2700,
   "name": "TLOCKOUT",
   "description": "Thermal Lockout Enable",
   "units": "",
   "access": "W",
   "states": "0=OFF, 1=ON"
  },
  {
   "type": "AV",
   "instance": 2800,
   "name": "XYZMIN",
   "description": "District Steam Delay; range 0 - 30",
   "units": "min",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 2900,
   "name": "XYZTEMP",
   "description": "System Setpoint; range 21 - 122°C, 70 - 250°F",
   "units": "°F or °C (per INMODE)",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 3000,
   "name": "ZMAXTGT",
   "description": "Max Target Temperature; range 32 - 116°C, 90 - 240°F",
   "units": "°F or °C (per INMODE)",
   "access": "W",
   "states": ""
  }
 ],
 "page": "https://easybacnet.com/bacnet-points-lists/heat-timer/mpc-platinum",
 "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"
}
