{
 "manufacturer": "Greystone Energy Systems",
 "manufacturer_slug": "greystone",
 "model": "HTX1 Series rough duty RH / temperature transmitter (BACnet MS/TP)",
 "model_slug": "htx1-rough-duty-rh-temperature-transmitter",
 "aliases": [
  "HTX1",
  "HTX1XXXBAC",
  "DP0011",
  "NPI-56",
  "Greystone rough duty sensor"
 ],
 "equipment_type": "Humidity / temperature sensor with condensation monitoring",
 "applies_to": "Greystone HTX1 series rough-duty RH/temperature transmitters (PICS model DP0011) with optional pipe-temperature condensation probe, digital input and relay, using BACnet MS/TP.",
 "summary": "The HTX1 is a Greystone rough-duty RH and temperature transmitter with native BACnet MS/TP. It reports temperature, RH, dewpoint, wet bulb, enthalpy, absolute humidity and pipe temperature as Analog Inputs; Analog Values handle offset or 2-point calibration, altitude and the relay setpoints and timers; Multi-State Values assign the relay source, and Multi-State Inputs give relay status and error codes.",
 "bacnet_transport": [
  "BACnet MS/TP"
 ],
 "firmware": "1.0 (PICS, 2025/7/8)",
 "default_device_instance": 381001,
 "access_inferred": false,
 "notes": [
  "Points from the object table on page 1 of the setup guide. The guide pages carry an SG-DWXXXBAC-002 footer, but the cover and table are for the HTX1.",
  "Relay setpoint and hysteresis ranges, units and defaults change with Relay Assignment (MV 2), e.g. RH low 20 %RH / high 70 %RH by default.",
  "With MV 2 = Condensation the relay turns on when pipe temperature minus dewpoint drops below the setpoint.",
  "Absolute humidity in lb/ft3 uses a Greystone-specific units code (257), not a standard BACnet unit.",
  "Multistate objects are MSV and MSI in the guide; listed here as MV and MI."
 ],
 "source": {
  "title": "Rough Duty Sensor (NPI-56) RH/T Transmitter - Setup Guide BACnet Communication (HTX1 Series)",
  "doc_number": "SG-HTX1XXXBAC-001",
  "revision_date": "2025-07-08 (PICS date)",
  "url": "https://downloads.greystoneenergy.com/SG/SG-HTX1XXXBAC-001.pdf"
 },
 "integration": {
  "summary": "Set the MS/TP MAC in the menu, then read temperature, RH and dewpoint. If the relay is to be switched by the BMS, set MV 2 to Free Control by BACnet and write BV 11.",
  "minimum_points": [
   {
    "ref": "BV 11",
    "name": "Relay Controlled by BACnet",
    "why": "Relay command from BMS (MV 2 must be 1)"
   },
   {
    "ref": "MV 2",
    "name": "Relay Assignment",
    "why": "Relay source; 1 = BACnet control"
   },
   {
    "ref": "MI 1",
    "name": "Relay Status",
    "why": "Relay state and trigger source"
   },
   {
    "ref": "AI 1",
    "name": "Temperature",
    "why": "Air temperature"
   },
   {
    "ref": "AI 2",
    "name": "Relative Humidity",
    "why": "Air RH"
   },
   {
    "ref": "AI 3",
    "name": "Dewpoint Temperature",
    "why": "Calculated dewpoint"
   },
   {
    "ref": "BI 2",
    "name": "Condensation Status",
    "why": "Condensation detected on the pipe probe"
   },
   {
    "ref": "MI 2",
    "name": "Generic Error Codes",
    "why": "Probe communication error"
   }
  ],
  "enable": "The relay follows BV 11 only when Relay Assignment (MV 2) is set to 1, Free Control by BACnet.",
  "heartbeat": null,
  "remote_sensors": null,
  "setup": [
   "Device instance defaults to 381000 + MAC; it stops following the MAC once written over BACnet.",
   "Choose metric or imperial units for all values with BV 1."
  ],
  "gotchas": [
   "Set MV 2 before writing relay setpoints; their units and limits depend on the assignment.",
   "Writing 1 to BV 9 restores factory settings.",
   "2-point calibration points must be at least 5 °C (temperature) or 20 %RH apart."
  ]
 },
 "points": [
  {
   "type": "AI",
   "instance": 1,
   "name": "Temperature",
   "description": "Temperature, -20 to 60 °C",
   "units": "°C / °F",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 2,
   "name": "Relative Humidity",
   "description": "Relative humidity, 0-100 %",
   "units": "%RH",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 3,
   "name": "Dewpoint Temperature",
   "description": "Dewpoint, -30 to 60 °C",
   "units": "°C / °F",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 4,
   "name": "Wet Bulb Temperature",
   "description": "Wet bulb temperature, -20 to 60 °C",
   "units": "°C / °F",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 5,
   "name": "Enthalpy",
   "description": "Enthalpy",
   "units": "kJ/kg / BTU/lb",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 6,
   "name": "Absolute Humidity",
   "description": "Absolute humidity, 0-130 g/m3",
   "units": "g/m3 / lb/ft3",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 7,
   "name": "Pipe Temperature",
   "description": "Pipe temperature from the condensation probe",
   "units": "°C / °F",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 1,
   "name": "Temperature Offset",
   "description": "Temperature offset, ±5 °C (default 0)",
   "units": "delta °C / °F",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 2,
   "name": "T Calibration Point1",
   "description": "Temperature 2-point calibration, point 1 (default 25 °C)",
   "units": "°C / °F",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 3,
   "name": "T Calibration Value on Point1",
   "description": "Correction at temperature point 1 (default 0)",
   "units": "delta °C / °F",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 4,
   "name": "T Calibration Point2",
   "description": "Temperature 2-point calibration, point 2 (default 30 °C)",
   "units": "°C / °F",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 5,
   "name": "T Calibration Value on Point2",
   "description": "Correction at temperature point 2 (default 0)",
   "units": "delta °C / °F",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 6,
   "name": "RH Offset",
   "description": "RH offset, ±20 %RH (default 0)",
   "units": "%RH",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 7,
   "name": "RH Calibration Point1",
   "description": "RH 2-point calibration, point 1 (default 40 %RH)",
   "units": "%RH",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 8,
   "name": "RH Calibration Value on Point1",
   "description": "Correction at RH point 1 (default 0)",
   "units": "%RH",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 9,
   "name": "RH Calibration Point2",
   "description": "RH 2-point calibration, point 2 (default 60 %RH)",
   "units": "%RH",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 10,
   "name": "RH Calibration Value on Point2",
   "description": "Correction at RH point 2 (default 0)",
   "units": "%RH",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 11,
   "name": "Altitude",
   "description": "Altitude, 0-3500 m or 0-11,500 ft (default 0)",
   "units": "m / ft",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 12,
   "name": "Relay Low Setpoint",
   "description": "Relay low setpoint; units and range follow MV 2",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 13,
   "name": "Relay High Setpoint",
   "description": "Relay high setpoint; units and range follow MV 2",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 14,
   "name": "Relay Hysteresis",
   "description": "Relay hysteresis; units and range follow MV 2",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 15,
   "name": "Relay On Time",
   "description": "Relay on delay, 0-3600 s",
   "units": "s",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 16,
   "name": "Relay Off Time",
   "description": "Relay off delay, 0-3600 s (default 0)",
   "units": "s",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 17,
   "name": "Relay Contact Time (for DI only)",
   "description": "Relay hold time when driven by the DI, 10-3600 s",
   "units": "s",
   "access": "W",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 1,
   "name": "Units Select",
   "description": "Unit system",
   "units": "",
   "access": "W",
   "states": "0=Metric, 1=Imperial"
  },
  {
   "type": "BV",
   "instance": 2,
   "name": "Temperature Display Enable",
   "description": "Show temperature on the LCD",
   "units": "",
   "access": "W",
   "states": "0=Invisible, 1=Visible"
  },
  {
   "type": "BV",
   "instance": 3,
   "name": "RH Display Enable",
   "description": "Show RH on the LCD",
   "units": "",
   "access": "W",
   "states": "0=Invisible, 1=Visible"
  },
  {
   "type": "BV",
   "instance": 4,
   "name": "DP Display Enable",
   "description": "Show dewpoint on the LCD",
   "units": "",
   "access": "W",
   "states": "0=Invisible, 1=Visible"
  },
  {
   "type": "BV",
   "instance": 5,
   "name": "WB Display Enable",
   "description": "Show wet bulb on the LCD",
   "units": "",
   "access": "W",
   "states": "0=Invisible, 1=Visible"
  },
  {
   "type": "BV",
   "instance": 6,
   "name": "EN Display Enable",
   "description": "Show enthalpy on the LCD",
   "units": "",
   "access": "W",
   "states": "0=Invisible, 1=Visible"
  },
  {
   "type": "BV",
   "instance": 7,
   "name": "AH Display Enable",
   "description": "Show absolute humidity on the LCD",
   "units": "",
   "access": "W",
   "states": "0=Invisible, 1=Visible"
  },
  {
   "type": "BV",
   "instance": 8,
   "name": "Pipe Temperature Display Enable",
   "description": "Show pipe temperature on the LCD",
   "units": "",
   "access": "W",
   "states": "0=Invisible, 1=Visible"
  },
  {
   "type": "BV",
   "instance": 9,
   "name": "Factory Restore",
   "description": "Write 1 to restore factory settings",
   "units": "",
   "access": "W",
   "states": "0=Normal, 1=Restore"
  },
  {
   "type": "BV",
   "instance": 10,
   "name": "Relay Direct",
   "description": "Relay action",
   "units": "",
   "access": "W",
   "states": "0=Direct, 1=Reverse"
  },
  {
   "type": "BV",
   "instance": 11,
   "name": "Relay Controlled by BACnet",
   "description": "Relay command when MV 2 = Free Control by BACnet",
   "units": "",
   "access": "W",
   "states": "0=Relay OFF, 1=Relay ON"
  },
  {
   "type": "BV",
   "instance": 12,
   "name": "Relay Test",
   "description": "Forces the relay on for testing",
   "units": "",
   "access": "W",
   "states": "0=OFF, 1=ON"
  },
  {
   "type": "BI",
   "instance": 1,
   "name": "DI Status",
   "description": "Digital input (active when pulled to common)",
   "units": "",
   "access": "R",
   "states": "0=Inactive, 1=Active"
  },
  {
   "type": "BI",
   "instance": 2,
   "name": "Condensation Status",
   "description": "Condensation detected",
   "units": "",
   "access": "R",
   "states": "0=Inactive, 1=Active"
  },
  {
   "type": "MV",
   "instance": 1,
   "name": "Backlight Select",
   "description": "LCD backlight mode (default Auto)",
   "units": "",
   "access": "W",
   "states": "0=Auto, 1=ON, 2=OFF"
  },
  {
   "type": "MV",
   "instance": 2,
   "name": "Relay Assignment",
   "description": "Source that drives the relay (default 0)",
   "units": "",
   "access": "W",
   "states": "0=No Assignment, 1=Free Control by BACnet, 2=DI, 3=Temperature, 4=RH, 5=Dew Point, 6=Wet Bulb, 7=Enthalpy, 8=Absolute Humidity, 9=Condensation"
  },
  {
   "type": "MV",
   "instance": 3,
   "name": "T(Probe) Adjust Method",
   "description": "Temperature calibration method (default None)",
   "units": "",
   "access": "W",
   "states": "0=None, 1=Offset, 2=2-point"
  },
  {
   "type": "MV",
   "instance": 4,
   "name": "RH(Probe) Adjust Method",
   "description": "RH calibration method (default None)",
   "units": "",
   "access": "W",
   "states": "0=None, 1=Offset, 2=2-point"
  },
  {
   "type": "MI",
   "instance": 1,
   "name": "Relay Status",
   "description": "Relay state and what turned it on",
   "units": "",
   "access": "R",
   "states": "0=OFF, 1=ON by BACnet, 2=ON by DI, 3=ON in test, 4=ON low setpoint alarm, 5=ON high setpoint alarm, 6=ON condensation alarm"
  },
  {
   "type": "MI",
   "instance": 2,
   "name": "Generic Error Codes",
   "description": "Probe communication error",
   "units": "",
   "access": "R",
   "states": "0=No Error, 1=Probe Comm Error"
  },
  {
   "type": "MI",
   "instance": 3,
   "name": "Communication Error Codes",
   "description": "Communication error code",
   "units": "",
   "access": "R",
   "states": "0=No Error, 1=Unknown"
  },
  {
   "type": "MI",
   "instance": 4,
   "name": "Condensation Error Codes",
   "description": "Condensation monitoring error",
   "units": "",
   "access": "R",
   "states": "0=No Error, 1=Pipe T Sensor not Connected, 2=Other"
  }
 ],
 "page": "https://easybacnet.com/bacnet-points-lists/greystone/htx1-rough-duty-rh-temperature-transmitter",
 "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"
}
