{
 "manufacturer": "Neptronic",
 "manufacturer_slug": "neptronic",
 "model": "EVCB14NxT4X VAV Controller (external motor)",
 "model_slug": "evcb14nxt4x-vav-controller",
 "aliases": [
  "EVCB14NxT4X",
  "EVCB14NIT4X",
  "EVCB14NDT4X"
 ],
 "equipment_type": "VAV terminal unit controller",
 "applies_to": "Neptronic EVCB14N VAV controllers with four triac outputs that drive an external damper motor, pressure independent (IT4X) or dependent (DT4X).",
 "summary": "This variant of the EVCB14N drives an external damper actuator instead of the built-in one, and talks BACnet MS/TP with a fixed object table similar to the standard EVCB14N. Points cover zone temperature, setpoints, demands, airflow and triac output configuration. Some objects are not available on the pressure-dependent EVCB14NDT4X.",
 "bacnet_transport": [
  "BACnet MS/TP"
 ],
 "firmware": "5.06 (as printed)",
 "default_device_instance": "153000 + MAC address",
 "access_inferred": false,
 "notes": [
  "Object availability varies by sub-model; the source marks each object per model.",
  "Multistate state lists depend on other configuration objects.",
  "Airflow values are listed without units; scaling depends on the controller configuration.",
  "Some airflow objects are not available on the pressure-dependent EVCB14NDT4X."
 ],
 "source": {
  "title": "EVCB14NxT4X BACnet Communication Module User Guide",
  "doc_number": "EVCB14NxT4X-V506-BACnet Guide-EUA-210818",
  "revision_date": "2021-08-18",
  "url": "https://www.neptronic.com/Controls/pdf/20210908/EVCB14NxT4X-V506-BACnet%20Guide-EUA-210818.pdf"
 },
 "integration": {
  "summary": "Read the zone temperature, setpoint, demands and airflow, and drive occupancy with MSV.11. To control from a BMS space temperature, set MSV.4 to Network Sensor and keep writing AV.1 ControlTemp faster than the NetworkTimeOut period (AV.145).",
  "minimum_points": [
   {
    "ref": "MV 11",
    "name": "NsbOccCommand",
    "why": "BMS occupancy / night setback / off command"
   },
   {
    "ref": "AV 15",
    "name": "TempSetPoint",
    "why": "Occupied/day zone setpoint"
   },
   {
    "ref": "MV 4",
    "name": "Cfg_TempControlSource",
    "why": "Select internal, external or network temperature"
   },
   {
    "ref": "AV 1",
    "name": "ControlTemp",
    "why": "Control temp; BMS writes it when MSV.4 = Network Sensor"
   },
   {
    "ref": "MV 12",
    "name": "OccupancyStatus",
    "why": "Actual occupancy state"
   },
   {
    "ref": "AV 110",
    "name": "ActualAirFlow",
    "why": "Measured airflow"
   },
   {
    "ref": "AV 111",
    "name": "AirFlowSetPoint",
    "why": "Airflow setpoint calculated from demand"
   },
   {
    "ref": "AV 20",
    "name": "HeatingDemand1",
    "why": "Heating ramp demand, %"
   },
   {
    "ref": "AV 40",
    "name": "CoolingDemand1",
    "why": "Cooling ramp demand, %"
   }
  ],
  "enable": "Occupancy and off are commanded with MSV.11 NsbOccCommand: Locally (wired input/sensor decides), Occupancy, No Occupancy (night setback) or OFF. Changeover can also be forced by the BMS through MSV.3 Cfg_ChangeOverControlMode.",
  "heartbeat": "AV.145 NetworkTimeOut (0-60 min): when the temperature source is Network/Remote and the BMS has not written a temperature within this time, the EVC goes to OFF and AV.1 shows 999°C in fault. Setting it to 0 makes AV.1 fall back to the AV.15 setpoint value instead.",
  "remote_sensors": "Set MSV.4 Cfg_TempControlSource to Network Sensor; AV.1 ControlTemp then becomes writable and must be refreshed by the BMS (see AV.145).",
  "setup": [
   "BACnet MS/TP only; the device instance defaults to 153000 + MAC address (auto) and can be changed from the menu or by writing the Device Object_Identifier.",
   "MAC address defaults to 0; baud rate auto-detects (9600/19200/38400/76800), or set it by writing Device proprietary property 1001.",
   "Max_Master defaults to 127; lower it to the highest MAC on the trunk for faster token passing.",
   "A Copy Config function in the menu can clone one controller's configuration to others of the same type on the trunk."
  ],
  "gotchas": [
   "Out_of_Service on read-only objects is writable for testing, but it reverts automatically after 15 minutes (Device proprietary property 1002, 0-120 min, 0 = never).",
   "Many multistate objects only offer some states depending on other configuration objects; read State_Text from the device.",
   "Cfg_ objects are commissioning parameters; avoid writing them cyclically from the BMS.",
   "Airflow objects show \"No units\"; the value follows the airflow scale set on the controller (MSV.41 Cfg_AirFlowScale where present)."
  ]
 },
 "points": [
  {
   "type": "AI",
   "instance": 1,
   "name": "AnalogInput1",
   "description": "Status value in volts of Analog Input 1. Value is active only",
   "units": "V",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 2,
   "name": "AnalogInput2",
   "description": "Status value in volts of Analog Input 2. Value is active only",
   "units": "V",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 3,
   "name": "InternTemp",
   "description": "Intern temperature sensor (ITS)",
   "units": "°F/°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 5,
   "name": "InternHumidity",
   "description": "Humidity reading of on board humidity sensor of TRLH or TRLGH24/TDU (models",
   "units": "%RH",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 6,
   "name": "TrlgCO2",
   "description": "CO reading of on-board sensor of TRLG24 or TRLGH24/TDU (models with 2",
   "units": "ppm",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 7,
   "name": "Intern Light Sensor",
   "description": "Internal light sensor reading in Luxes",
   "units": "lux",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 8,
   "name": "Intern VOC Sensor",
   "description": "Internal VOC sensor reading in ppb",
   "units": "ppb",
   "access": "R",
   "states": ""
  },
  {
   "type": "AO",
   "instance": 1,
   "name": "AnalogOutput1",
   "description": "Modulation percentage of analog output 1 based on demand",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AO",
   "instance": 2,
   "name": "AnalogOutput2",
   "description": "Modulation percentage of analog output 2 based on demand",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 1,
   "name": "ControlTemp",
   "description": "Control temperature; writable when MSV.4 is Network Sensor",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 2,
   "name": "ExternTemp",
   "description": "Read from extern temperature sensor (ETS) when MSV.1 or MSV.2 is set",
   "units": "°F/°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 3,
   "name": "ChangeOverTemp",
   "description": "Changeover temperature sensor (SENS)",
   "units": "°F/°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 4,
   "name": "AirSupplyTemp",
   "description": "Air supply temperature sensor (AST)",
   "units": "°F/°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 5,
   "name": "CO2Sensor",
   "description": "Carbon dioxide sensor (CO2)",
   "units": "ppm",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 6,
   "name": "ram_Ctl_SetPoint",
   "description": "Actual temperature control setpoint value",
   "units": "°F/°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 10,
   "name": "Cfg_InternTempOffset",
   "description": "To calibrate the integrated temperature sensor of the TRL/TDU (ITS)",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 11,
   "name": "Cfg_ExternTempOffset",
   "description": "To calibrate the external temperature sensor (ETS)",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 15,
   "name": "TempSetPoint",
   "description": "Actual user setpoint of the zone in occupied/day mode",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 16,
   "name": "Cfg_MinpSetPoint",
   "description": "User minimum permitted setpoint of the zone in occupied/day mode",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 17,
   "name": "Cfg_MaxpSetPoint",
   "description": "User maximum permitted setpoint of the zone in occupied/day mode",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 18,
   "name": "SetPointCoolNoOccNSB",
   "description": "Cooling setpoint when in night setback or unoccupied",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 19,
   "name": "SetPointHeatNoOccNSB",
   "description": "Heating setpoint when in night setback or unoccupied",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 20,
   "name": "HeatingDemand1",
   "description": "Heating demand in percentage for the Heating Ramp 1. This value is",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 21,
   "name": "Cfg_HeatingPropBand1",
   "description": "Range through which the controller will modulate the heating output from 0-100%",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 22,
   "name": "Cfg_HeatingDeadBand",
   "description": "Range where the controller will not take action when below the zone",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 23,
   "name": "HeatingDemand2",
   "description": "Heating demand in percentage for the Heating Ramp 2. This value is",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 24,
   "name": "Cfg_HeatingPropBand2",
   "description": "Range through which the controller will modulate the heating output from 0-100%",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 25,
   "name": "Cfg_HeatingDeadBand2",
   "description": "Range where the controller will not take action when below the zone",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 30,
   "name": "Cfg_IntegralTimeHeating",
   "description": "Reciprocal of the integral time in seconds (1/I or repeats per second)",
   "units": "s",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 40,
   "name": "CoolingDemand1",
   "description": "Cooling demand for the Cooling Ramp 1. This value is based on",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 41,
   "name": "Cfg_CoolingPropBand1",
   "description": "Range through which the controller will modulate the cooling output from 0-100%",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 42,
   "name": "Cfg_CoolingDeadBand1",
   "description": "Range at which the controller will not take action when above the",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 45,
   "name": "CoolingDemand2",
   "description": "Cooling demand for the Cooling Ramp 2. This value is based on",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 46,
   "name": "Cfg_CoolingPropBand2",
   "description": "Range through which the controller will modulate the cooling output from 0-100%",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 47,
   "name": "Cfg_CoolingDeadBand2",
   "description": "Range at which the controller will not take action when above the",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 50,
   "name": "Cfg_IntegralTimeCooling",
   "description": "Reciprocal of the integral time in seconds (1/I or repeats per second)",
   "units": "s",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 51,
   "name": "Cfg_CoolingAntiCycleDelay",
   "description": "In minutes to prevent the cooling outputs to cycle on and off",
   "units": "min",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 55,
   "name": "ChangeOverDemand",
   "description": "Changeover demand for the VAV box",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 56,
   "name": "Cfg_ChangeOverPropBand",
   "description": "Range through which the controller will modulate the cooling and heating output",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 57,
   "name": "Cfg_ChangeOverDeadBand",
   "description": "Range at which the controller will not take action when above or",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 58,
   "name": "ChangeOverSetPoint",
   "description": "Temperature at which the primary air from the central system is considered",
   "units": "°F/°C",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 60,
   "name": "Cfg_NSBSetBackOverrideDelay",
   "description": "Time in minutes when in night setback and an override has been",
   "units": "min",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 61,
   "name": "Cfg_NoOccOverrideDelay",
   "description": "Time in minutes when unoccupied and an override has been activated on",
   "units": "min",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 62,
   "name": "Cfg_OccupancyMinTime",
   "description": "In minutes for minimum time to maintain occupancy mode after a pulse",
   "units": "min",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 64,
   "name": "Cfg_DigitalInput2Delay",
   "description": "Time in seconds",
   "units": "s",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 70,
   "name": "Cfg_AnalogOutput1Min",
   "description": "Minimum control signal of the controlled element",
   "units": "V",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 71,
   "name": "Cfg_AnalogOutput1Max",
   "description": "Maximum control signal of the controlled element",
   "units": "V",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 72,
   "name": "Cfg_AnalogOutput2Min",
   "description": "Minimum control signal of the controlled element",
   "units": "V",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 73,
   "name": "Cfg_AnalogOutput2Max",
   "description": "Maximum control signal of the controlled element",
   "units": "V",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 75,
   "name": "FloatingTO1/TO2Timer",
   "description": "Represents the time required by the valve actuator to complete a 90°",
   "units": "s",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 76,
   "name": "FloatingTO3/TO4Timer",
   "description": "Represents the time required by the valve actuator to complete a 90°",
   "units": "s",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 77,
   "name": "Cfg_TO1ClosePos",
   "description": "That indicates at what percentage of the demand the contact closes to",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 78,
   "name": "Cfg_TO1OpenPos",
   "description": "That indicates at what percentage of the demand the contact opens to",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 79,
   "name": "Cfg_TO2ClosePos",
   "description": "",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 80,
   "name": "Cfg_TO2OpenPos",
   "description": "",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 81,
   "name": "Cfg_TO3ClosePos",
   "description": "",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 82,
   "name": "Cfg_TO3OpenPos",
   "description": "",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 83,
   "name": "Cfg_TO4ClosePos",
   "description": "",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 84,
   "name": "Cfg_TO4OpenPos",
   "description": "",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 89,
   "name": "Cfg_MotorMinPositionCoolHeat",
   "description": "Minimum position in cooling/heating mode the VAV box is allowed",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 90,
   "name": "Cfg_MotorMinPositionCool",
   "description": "Minimum position in cooling mode the VAV box is allowed",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 91,
   "name": "Cfg_MotorMinPositionHeat",
   "description": "Minimum position in heating mode the VAV box is allowed",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 93,
   "name": "MotorPosition",
   "description": "Damper actuator position",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 95,
   "name": "Cfg_MotorMinVoltage",
   "description": "Minimum control signal of the external actuator",
   "units": "V",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 96,
   "name": "Cfg_MotorMaxVoltage",
   "description": "Maximum control signal of the external actuator",
   "units": "V",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 97,
   "name": "Cfg_FeedBackMinVoltage",
   "description": "Minimum feedback signal of the external actuator",
   "units": "V",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 98,
   "name": "Cfg_FeedBackMaxVoltage",
   "description": "Maximum feedback signal of the external actuator",
   "units": "V",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 100,
   "name": "Cfg_PressureNumFilter",
   "description": "To stabilize the reading of the differential pressure transducer when balancing",
   "units": "s",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 101,
   "name": "Cfg_AirFlowVnomOrKFactor",
   "description": "Maximum airflow of the VAV box at 1\" w.c",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 102,
   "name": "Cfg_AirFlowCoolMin",
   "description": "Minimum cooling airflow when system is in cooling mode",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 103,
   "name": "Cfg_AirFlowCoolMax",
   "description": "Maximum cooling airflow when system is in cooling mode",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 104,
   "name": "Cfg_AirFlowHeatMin",
   "description": "Minimum heating airflow when system is in heating mode",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 105,
   "name": "Cfg_AirFlowHeatMax",
   "description": "Maximum cooling airflow when system is in heating mode",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 106,
   "name": "Cfg_AirFlowIntegralTime",
   "description": "Reciprocal of the integral time in seconds (1/I or repeats per second)",
   "units": "min",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 110,
   "name": "ActualAirFlow",
   "description": "Actual converted airflow measured by the differential pressure transducer",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 111,
   "name": "AirFlowSetPoint",
   "description": "Airflow calculated by demand",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 112,
   "name": "Cfg_AdjustAirFlowMax",
   "description": "During airflow balancing sequence",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 113,
   "name": "Cfg_AdjustAirFlowMin",
   "description": "During airflow balancing sequence",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 114,
   "name": "Cfg_AirFlowOffset",
   "description": "To adjust the calibration of the differential pressure transducer",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 116,
   "name": "Cfg_AirFlowHysteresisStop",
   "description": "Represents the airflow setpoint percentage used to prevent damper actuator oscillations",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 117,
   "name": "Cfg_AirFlowHysteresisStart",
   "description": "Airflow setpoint percentage used to prevent actuator from oscillations",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 133,
   "name": "Cfg_Input3 Reading",
   "description": "Pressure sensor",
   "units": "Pa",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 140,
   "name": "CO2Range",
   "description": "Maximum range of the CO2 sensor (PPM)",
   "units": "ppm",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 141,
   "name": "CO2Setpoint",
   "description": "Maximum limit of CO2 concentration before the EVC sends an alarm",
   "units": "ppm",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 145,
   "name": "NetworkTimeOut",
   "description": "BMS temperature timeout when control source is network",
   "units": "min",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 165,
   "name": "CopyCfgStartAddress",
   "description": "When using copy config, this value represents the first address in the",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 166,
   "name": "CopyCfgEndAddress",
   "description": "When using copy config, this value represents the last address in the",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 167,
   "name": "CopyCfgResult",
   "description": "When using copy config, this value is used to verify that the",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 170,
   "name": "CL_HT_SwitchTimer",
   "description": "Time required before the changeover is permitted to take place (time in",
   "units": "min",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 171,
   "name": "CL_HT_SwitchTimerCount",
   "description": "Remaining time before the changeover is authorised",
   "units": "s",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 180,
   "name": "FloatingTO1/TO2",
   "description": "Status value to show the floating signal demand",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 181,
   "name": "FloatingTO3/TO4",
   "description": "Status value to show the floating signal demand",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 182,
   "name": "TO1Pulsing",
   "description": "TR Status value to show the pulse signal demand",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 183,
   "name": "TO2Pulsing",
   "description": "Status value to show the pulse signal demand",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 184,
   "name": "TO3Pulsing",
   "description": "Status value to show the pulse signal demand",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 185,
   "name": "TO4Pulsing",
   "description": "Status value to show the pulse signal demand",
   "units": "%",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 190,
   "name": "Cfg_CO2PropBand",
   "description": "Range through which the controller modulates the CO control output from 0",
   "units": "ppm",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 191,
   "name": "Cfg_CO2DeadBand",
   "description": "Range at which the controller will not take action when below or",
   "units": "ppm",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 192,
   "name": "AverageTemp",
   "description": "Average temperature of the combination of sensors selected using MSV.45 Cfg_TempSensorCombo",
   "units": "°F/°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 193,
   "name": "MaximumTemp",
   "description": "Maximum temperature of the combination of sensors selected using MSV.45 Cfg_TempSensorCombo",
   "units": "°F/°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 194,
   "name": "ExternalSensorValue_AI2",
   "description": "Temperature reading of AI2 configured as an external temperature sensor",
   "units": "°F/°C",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 1,
   "name": "DigitalInput1",
   "description": "Contact status of the input",
   "units": "",
   "access": "R",
   "states": "0 = Open 1 = Close"
  },
  {
   "type": "BI",
   "instance": 2,
   "name": "DigitalInput2",
   "description": "Contact status of the input",
   "units": "",
   "access": "R",
   "states": "0 = Open 1 = Close"
  },
  {
   "type": "BI",
   "instance": 3,
   "name": "Intern PIR",
   "description": "Internal PIR sensor value: (0) NoOccupancy, (1) Occupancy",
   "units": "",
   "access": "R",
   "states": "0 = NoOccupancy 1 = Occupancy"
  },
  {
   "type": "BO",
   "instance": 1,
   "name": "TO1OnOff",
   "description": "Status value to show if TO1 is active or not",
   "units": "",
   "access": "W",
   "states": "0 = Off 1 = On"
  },
  {
   "type": "BO",
   "instance": 2,
   "name": "TO2OnOff",
   "description": "Status value to show if TO2 is active or not",
   "units": "",
   "access": "W",
   "states": "0 = Off 1 = On"
  },
  {
   "type": "BO",
   "instance": 3,
   "name": "TO3OnOff",
   "description": "Status value to show if TO3 is active or not",
   "units": "",
   "access": "W",
   "states": "0 = Off 1 = On"
  },
  {
   "type": "BO",
   "instance": 4,
   "name": "TO4OnOff",
   "description": "Status value to show if TO4 is active or not",
   "units": "",
   "access": "W",
   "states": "0 = Off 1 = On"
  },
  {
   "type": "BV",
   "instance": 1,
   "name": "Cfg_TempUnitBACnet",
   "description": "Temperature units used in BACnet",
   "units": "",
   "access": "W",
   "states": "0 = Celsius, 1 = Fahrenheit"
  },
  {
   "type": "BV",
   "instance": 2,
   "name": "Cfg_TempSetPointLock",
   "description": "Lock the zone setpoint and prevent users to change the value",
   "units": "",
   "access": "W",
   "states": "0 = Disable, 1 = Enable"
  },
  {
   "type": "BV",
   "instance": 3,
   "name": "UserSysOffMode",
   "description": "Allow users to turn off the EVC. (0) Enable user to turn",
   "units": "",
   "access": "W",
   "states": "0 = Enable, 1 = Disable"
  },
  {
   "type": "BV",
   "instance": 4,
   "name": "Cfg_TempUnitTstat",
   "description": "User temperature units used on TRL/TDU. If set to (0), the temperature",
   "units": "",
   "access": "W",
   "states": "0 = Celsius, 1 = Fahrenheit"
  },
  {
   "type": "BV",
   "instance": 5,
   "name": "ChangeOverMode",
   "description": "Actual mode (0) Cooling, (1) Heating",
   "units": "",
   "access": "W",
   "states": "0 = Cooling, 1 = Heating"
  },
  {
   "type": "BV",
   "instance": 6,
   "name": "Cfg_FreezeProtection",
   "description": "Prevent a zone from falling below 4°C (39.2°F)",
   "units": "",
   "access": "W",
   "states": "0 = Off , 1 = On"
  },
  {
   "type": "BV",
   "instance": 7,
   "name": "Cfg_KeyPadUpperLeftLock",
   "description": "Lock the Cool/Heat button",
   "units": "",
   "access": "W",
   "states": "0 = Off, 1 = On (If set to “On”, functionality of these buttons will not be available.)"
  },
  {
   "type": "BV",
   "instance": 8,
   "name": "Cfg_KeyPadBottomLeftLock",
   "description": "Lock the °C/°F button",
   "units": "",
   "access": "W",
   "states": "0 = Off, 1 = On If set to “On”, functionality of these buttons will not be available."
  },
  {
   "type": "BV",
   "instance": 9,
   "name": "Cfg_KeyPadArrowsLock",
   "description": "Lock the arrow buttons",
   "units": "",
   "access": "W",
   "states": "0 = Off, 1 = On If set to “On”, functionality of these buttons will not be available."
  },
  {
   "type": "BV",
   "instance": 10,
   "name": "Cfg_ProgramLock",
   "description": "Lock the all TRL/TDU buttons",
   "units": "",
   "access": "W",
   "states": "0 = Off, 1 = On If set to “On”, functionality of these buttons will not be available."
  },
  {
   "type": "BV",
   "instance": 20,
   "name": "Cfg_NightSetBackMode",
   "description": "Determine the action of the EVC when in night setback",
   "units": "",
   "access": "W",
   "states": "0 = Setpoint, 1 = OFF"
  },
  {
   "type": "BV",
   "instance": 23,
   "name": "Cfg_OccControlSource",
   "description": "Determines the source of occupancy control to be used by the EVC",
   "units": "",
   "access": "W",
   "states": "0 = BinaryInput1, 1 = InternSensor"
  },
  {
   "type": "BV",
   "instance": 25,
   "name": "Cfg_AnalogOutput1Direction",
   "description": "Analog output direction",
   "units": "",
   "access": "W",
   "states": "0 = Direct, 1 = Reverse"
  },
  {
   "type": "BV",
   "instance": 26,
   "name": "Cfg_AnalogOutput2Direction",
   "description": "Analog output direction",
   "units": "",
   "access": "W",
   "states": "0 = Direct, 1 = Reverse"
  },
  {
   "type": "BV",
   "instance": 30,
   "name": "Cfg_FloatingTO1/TO2Direction",
   "description": "TRIAC contact normal state (Normally Open, Normally Close) when MSV.26 TO1 Signal",
   "units": "",
   "access": "W",
   "states": "0 = Direct, 1 = Reverse"
  },
  {
   "type": "BV",
   "instance": 31,
   "name": "Cfg_FloatingTO3/TO4Direction",
   "description": "TRIAC contact normal state (Normally Open, Normally Close) when MSV.30 TO3 Signal",
   "units": "",
   "access": "W",
   "states": "0 = Direct, 1 = Reverse"
  },
  {
   "type": "BV",
   "instance": 32,
   "name": "Cfg_TO1 Direction",
   "description": "TRIAC contact normal state value of the rotation when MSV.26 TO1 Signal",
   "units": "",
   "access": "W",
   "states": "0 = Direct, 1 = Reverse"
  },
  {
   "type": "BV",
   "instance": 33,
   "name": "Cfg_TO2 Direction",
   "description": "TRIAC contact normal state value of the rotation when MSV.28 TO2 Signal",
   "units": "",
   "access": "W",
   "states": "0 = Direct, 1 = Reverse"
  },
  {
   "type": "BV",
   "instance": 34,
   "name": "Cfg_TO3 Direction",
   "description": "TRIAC contact normal state value of the rotation when MSV.30 TO3 Signal",
   "units": "",
   "access": "W",
   "states": "0 = Direct, 1 = Reverse"
  },
  {
   "type": "BV",
   "instance": 35,
   "name": "Cfg_TO4 Direction",
   "description": "TRIAC contact normal state value of the rotation when MSV.32 TO4 Signal",
   "units": "",
   "access": "W",
   "states": "0 = Direct, 1 = Reverse"
  },
  {
   "type": "BV",
   "instance": 36,
   "name": "Cfg_Digital Input 2 Contact",
   "description": "Change the contact's normal position",
   "units": "",
   "access": "W",
   "states": "0 = Norm Open, 1 = Norm Close"
  },
  {
   "type": "BV",
   "instance": 40,
   "name": "Cfg_MotorDirection",
   "description": "Change the rotation direction of the damper actuator",
   "units": "",
   "access": "W",
   "states": "0 = Direct, 1 = Reverse"
  },
  {
   "type": "BV",
   "instance": 41,
   "name": "MotorFaultPosition",
   "description": "To select the control mode for the motor position when there is",
   "units": "",
   "access": "W",
   "states": "0 = Close, 1 = Full Open"
  },
  {
   "type": "BV",
   "instance": 45,
   "name": "AirFlowBalancing",
   "description": "To enable and disable the airflow balancing",
   "units": "",
   "access": "W",
   "states": "0= Disable, 1= Enable"
  },
  {
   "type": "BV",
   "instance": 50,
   "name": "Cfg_PressureModeSelect",
   "description": "To configure the VAV box as (0) pressure independent or (1) pressure",
   "units": "",
   "access": "W",
   "states": "0= Independent, 1= Dependent"
  },
  {
   "type": "BV",
   "instance": 51,
   "name": "PressureModeStatus",
   "description": "Actual pressure mode",
   "units": "",
   "access": "R",
   "states": "0= Independent, 1= Dependent"
  },
  {
   "type": "BV",
   "instance": 55,
   "name": "AL_HighCO2Level",
   "description": "Status which indicates that the CO2 concentration is above setpoint",
   "units": "",
   "access": "R",
   "states": "0= No, 1= Yes"
  },
  {
   "type": "BV",
   "instance": 56,
   "name": "AL_Override",
   "description": "Status to inform if an override is active",
   "units": "",
   "access": "R",
   "states": "0= No, 1= Yes"
  },
  {
   "type": "BV",
   "instance": 60,
   "name": "Cfg_DisplayRH",
   "description": "Determines if the digital room sensor displays the %RH value",
   "units": "",
   "access": "W",
   "states": "0= Off, 1= On"
  },
  {
   "type": "BV",
   "instance": 65,
   "name": "Cfg_DisplayCO2",
   "description": "Determines if the digital room sensor displays the CO2 value",
   "units": "",
   "access": "W",
   "states": "0= Off, 1= On"
  },
  {
   "type": "BV",
   "instance": 66,
   "name": "Cfg_CO2ControlSource",
   "description": "Determines the source of the CO2 reading",
   "units": "",
   "access": "W",
   "states": "0= Analog Input, 1= TRLG"
  },
  {
   "type": "BV",
   "instance": 70,
   "name": "Cfg_ActiveSchedule",
   "description": "Activate the schedule",
   "units": "",
   "access": "W",
   "states": "0= No, 1= Yes"
  },
  {
   "type": "BV",
   "instance": 90,
   "name": "CopyCfgExecute",
   "description": "When using copy config, this value is used to start the copy",
   "units": "",
   "access": "W",
   "states": "0= No, 1= Yes"
  },
  {
   "type": "BV",
   "instance": 91,
   "name": "Cfg_Pressure Calibration",
   "description": "To recalibrate the differential pressure transducer",
   "units": "",
   "access": "W",
   "states": "0= No, 1= Yes"
  },
  {
   "type": "BV",
   "instance": 92,
   "name": "Cfg_Pressure Calibration Lock",
   "description": "To unlock the calibration process of BV.91. (Not available on EVCB14NDT4X models)",
   "units": "",
   "access": "W",
   "states": "0 = Lock, 1 = Unlock"
  },
  {
   "type": "BV",
   "instance": 101,
   "name": "Cfg_CO2ControlMode",
   "description": "To select the control mode for the CO control output",
   "units": "",
   "access": "W",
   "states": "0 = Open, 1 = Control ramp loop"
  },
  {
   "type": "MV",
   "instance": 1,
   "name": "Cfg_UniversalInputAI1Type",
   "description": "Input",
   "units": "",
   "access": "W",
   "states": "Off Extern Sensor Changeover Sensor ChOvContactNormCool ChOvContactNormHeat Airflow Setpoint* CO2 Sensor Air Supply Temp Motor Position * not available with EVCB14NDT4X"
  },
  {
   "type": "MV",
   "instance": 2,
   "name": "Cfg_UniversalInputAI2Type",
   "description": "",
   "units": "",
   "access": "W",
   "states": "Off Extern Sensor Changeover Sensor ChOv Contact Norm Cool ChOv Contact Norm Heat Airflow Setpoint* CO2 Sensor Air Supply Temp Motor Position * not available with EVCB14NDT4X"
  },
  {
   "type": "MV",
   "instance": 3,
   "name": "Cfg_ChangeOverControlMode",
   "description": "Indicates where the changeover value is coming from",
   "units": "",
   "access": "W",
   "states": "Locally Cooling Heating"
  },
  {
   "type": "MV",
   "instance": 4,
   "name": "Cfg_TempControlSource",
   "description": "Control temperature to be used by the EVC. Intern Temp, the control",
   "units": "",
   "access": "W",
   "states": "Intern Sensor Extern Sensor Network Sensor AverageTemp MaximumTemp"
  },
  {
   "type": "MV",
   "instance": 10,
   "name": "Cfg_NsbOccContact",
   "description": "DI1 mode",
   "units": "",
   "access": "W",
   "states": "Off Occ Norm Open Occ Norm Close NSB Norm Open NSB Norm Close"
  },
  {
   "type": "MV",
   "instance": 11,
   "name": "NsbOccCommand",
   "description": "Set the occupancy or night setback mode",
   "units": "",
   "access": "W",
   "states": "OFF/Locally/Locally Occupancy/OFF/OFF No Occupancy/Occupancy/Day -- /No Occupancy/Night"
  },
  {
   "type": "MV",
   "instance": 12,
   "name": "OccupancyStatus",
   "description": "Status that indicates the actual occupancy when occupancy is used",
   "units": "",
   "access": "R",
   "states": "NoOccupancy Occupancy Override"
  },
  {
   "type": "MV",
   "instance": 13,
   "name": "NightSetBackStatus",
   "description": "Status that indicates the actual mode of the zone when night setback",
   "units": "",
   "access": "R",
   "states": "Day Night Override"
  },
  {
   "type": "MV",
   "instance": 14,
   "name": "Cfg_DigitalInput2Type",
   "description": "DI2 mode",
   "units": "",
   "access": "W",
   "states": "Off Override Over Heat1 Over Heat2 Over Heat All ChOv Contact Norm Cool ChOv Contact Norm Heat"
  },
  {
   "type": "MV",
   "instance": 15,
   "name": "OverHeatStatus",
   "description": "Status to inform if a heat override is active",
   "units": "",
   "access": "R",
   "states": "OverHeatNormal Over Heat1 Over Heat2 Over Heat All"
  },
  {
   "type": "MV",
   "instance": 16,
   "name": "UserSystemMode",
   "description": "Zone mode the user has set on the TRL/TDU. Not to be",
   "units": "",
   "access": "W",
   "states": "Auto Heating Cooling Off"
  },
  {
   "type": "MV",
   "instance": 17,
   "name": "UserSysModeSelect",
   "description": "Set the permissions or restrictions to change the zone mode by the",
   "units": "",
   "access": "W",
   "states": "Auto Heating Cooling Heating or Cooling Auto Lock"
  },
  {
   "type": "MV",
   "instance": 20,
   "name": "Cfg_AnalogOutput1Ramp",
   "description": "Ramp used to modulate AO1 based on demand",
   "units": "",
   "access": "W",
   "states": "Off Cooling Ramp1 Cooling Ramp2 Heating Ramp1 Heating Ramp2 AirFlow Read CO2 Alarm Airflow Setpoint* * not available with EVCB14NDT4X"
  },
  {
   "type": "MV",
   "instance": 22,
   "name": "Cfg_AnalogOutput2Ramp",
   "description": "",
   "units": "",
   "access": "W",
   "states": "Off Cooling Ramp1 Cooling Ramp2 Heating Ramp1 Heating Ramp2 AirFlow Read CO2 Alarm Airflow Setpoint* * not available with EVCB14NDT4X"
  },
  {
   "type": "MV",
   "instance": 25,
   "name": "Cfg_TO1Ramp",
   "description": "Ramp used to modulate (pulse or floating) or activate/deactivate (On/Off) TO1 based",
   "units": "",
   "access": "W",
   "states": "Off Cooling Ramp1 Cooling Ramp2 Heating Ramp1 Heating Ramp2 CO2 Alarm Air Flow Set Point Change Over Ramp Cooling Heating Ramp 1 Analog"
  },
  {
   "type": "MV",
   "instance": 26,
   "name": "Cfg_TO1SignalType",
   "description": "Output signal type",
   "units": "",
   "access": "W",
   "states": "Pulsing (If Hr1 or Hr2 is selected)  On_Off  Floating"
  },
  {
   "type": "MV",
   "instance": 27,
   "name": "Cfg_TO2Ramp",
   "description": "",
   "units": "",
   "access": "W",
   "states": "Off Cooling Ramp1 Cooling Ramp2 Heating Ramp1 Heating Ramp2 CO2 Alarm Air Flow Set Point Change Over Ramp Cooling Heating Ramp 1 Analog"
  },
  {
   "type": "MV",
   "instance": 28,
   "name": "Cfg_TO2SignalType",
   "description": "Output signal type",
   "units": "",
   "access": "W",
   "states": "Pulsing (If Hr1 or Hr2 is selected) 2On_Off 3Floating"
  },
  {
   "type": "MV",
   "instance": 29,
   "name": "Cfg_TO3Ramp",
   "description": "",
   "units": "",
   "access": "W",
   "states": "Off Cooling Ramp1 Cooling Ramp2 Heating Ramp1 Heating Ramp2 CO2 Alarm"
  },
  {
   "type": "MV",
   "instance": 30,
   "name": "Cfg_TO3SignalType",
   "description": "Output signal type",
   "units": "",
   "access": "W",
   "states": "Pulsing (If Hr1 or Hr2 is selected) On_Off Floating"
  },
  {
   "type": "MV",
   "instance": 31,
   "name": "Cfg_TO4Ramp",
   "description": "",
   "units": "",
   "access": "W",
   "states": "Off Cooling Ramp1 Cooling Ramp2 Heating Ramp1 Heating Ramp2 CO2 Alarm Air Flow Set Point Change Over Ramp Cooling Heating Ramp 1 Analog"
  },
  {
   "type": "MV",
   "instance": 32,
   "name": "Cfg_TO4SignalType",
   "description": "Output signal type",
   "units": "",
   "access": "W",
   "states": "Pulsing (If Hr1 or Hr2 is selected) On_Off Floating"
  },
  {
   "type": "MV",
   "instance": 35,
   "name": "Cfg_MotorRamp",
   "description": "Ramp used to modulate the damper actuator based on demand",
   "units": "",
   "access": "W",
   "states": "Cooling Ramp1 Cooling Ramp2 Heating Ramp1 Heating Ramp2 AirflowSetPoint* Changeover Ramp Cooling Heating Ramp 1 Analog * not available with EVCB14NDT4X | central unit (cool or heat) which is given by the changeover signal in order to match signal to the airflow setpoints (see analog and/or digital input settings for changeover). The slave controller must be set to pressure independent and will convert the 0-10Vdc from the master to match the airflow setpoint. If a changeover is required for the master, it will also be required for the slave controller. Maximum and minimum cooling/heating Airflow setpoints are also required to operate correctly. Changeover Ramp (Cor): This ramp is used when the central system does both heating and cooling. It requires a changeover sensor to operate. The ramp is configured with AV.56 Changeover Proportional Band and AV.57 Changeover Dead Band. When the zone is in cooling demand, the EVC will modulate the damper actuator between the minimum and maximum cooling airflow setpoints (AV.102 and AV.103). When the zone is heating demand, the EVC will modulate the damper actuator between the minimum and maximum heating airflow setpoints (AV.104 and AV.105). Cooling Heating Ramp 1 (CH1): This ramp is used when central system does cooling only and a reheat coil is present at the zone level. The ramp is configured with AV.21 Heating Proportional Band 1, AV.22 Heating Dead Band 1, AV.41 Cooling Proportional Band 1 and AV.42 Cooling Dead Band 1. When the zone is in cooling demand, the EVC will modulate the damper actuator between the minimum and maximum cooling airflow setpoints (AV.102 & AV.103). When the zone is heating demand and a heating output is active, the EVC will modulate the damper actuator between the minimum and maximum heating airflow setpoints (AV.104 & AV.105). Analog (0-10Vdc): This ramp is used to set the VAV box as a slave controller. The damper actuator follows the 0-10Vdc signal received by analog input 1 or 2 when MSV.1 or MSV.2 is set to motor position."
  },
  {
   "type": "MV",
   "instance": 36,
   "name": "Cfg_NSBMotorMode",
   "description": "Set the motor position while in night setback",
   "units": "",
   "access": "W",
   "states": "Auto Open"
  },
  {
   "type": "MV",
   "instance": 37,
   "name": "MotorPositionOverride",
   "description": "To override the motor position",
   "units": "",
   "access": "W",
   "states": "Auto Open Close Air Flow Min (heat/cool as per current mode) Air Flow Max (heat/cool as per current mode)"
  },
  {
   "type": "MV",
   "instance": 40,
   "name": "Cfg_PressureIndOutput",
   "description": "Determines the output used to control the VAV damper actuator",
   "units": "",
   "access": "W",
   "states": "Floating1 Floating2 Motor"
  },
  {
   "type": "MV",
   "instance": 41,
   "name": "Cfg_AirFlowScale",
   "description": "Airflow scale used to get a better resolution when small airflows are",
   "units": "",
   "access": "W",
   "states": "Scale1 | Scale10 | Scale100"
  },
  {
   "type": "MV",
   "instance": 42,
   "name": "AirFlowBal_Mode",
   "description": "Position the damper actuator to preset positions",
   "units": "",
   "access": "W",
   "states": "Closed | Min Flow | Max Flow | Full Open"
  },
  {
   "type": "MV",
   "instance": 45,
   "name": "Cfg_TempSensorCombo",
   "description": "Select the combination of sensors that will be used in the calculation",
   "units": "",
   "access": "W",
   "states": "TSTAT+AI1 | TSTAT+AI2 | TSTAT+AI1+AI2 | AI1+AI2"
  },
  {
   "type": "MV",
   "instance": 95,
   "name": "Cfg_DisplayInfo",
   "description": "Information displayed on the TRL/TDU. Display Temp Demand: the TRL/TDU will display",
   "units": "",
   "access": "W",
   "states": "Temp and Demand | Setpoint and Demand Temp only | Setpoint only | Off"
  }
 ],
 "page": "https://easybacnet.com/bacnet-points-lists/neptronic/evcb14nxt4x-vav-controller",
 "note": "Re-typed from the manufacturer's public documentation (see source). Point availability varies by firmware and options; verify against the live device."
}
