{
 "manufacturer": "Dwyer",
 "manufacturer_slug": "dwyer",
 "model": "Series MSX-Comms Magnesense Pressure Transmitter",
 "model_slug": "msx-comms-magnesense-pressure-transmitter",
 "short_model": "MSX-Comms",
 "aliases": [
  "MSX",
  "MSX-Comms",
  "Magnesense MSX",
  "DwyerOmega MSX",
  "MSX BACnet"
 ],
 "equipment_type": "Differential pressure sensor / transmitter",
 "applies_to": "Dwyer Series MSX-Comms Magnesense differential pressure transmitters with BACnet MS/TP or Modbus RTU output.",
 "summary": "The MSX-Comms is a differential pressure transmitter for building air systems that can also calculate velocity or duct flow. Over BACnet MS/TP it reports the pressure in four units, velocity and flow, high and low alarm states, and exposes the process mode, K factor, duct area, alarm limits, damping and a zero calibration command.",
 "bacnet_transport": [
  "BACnet MS/TP"
 ],
 "firmware": null,
 "default_device_instance": "607XXX (XXX = DIP switch address)",
 "access_inferred": false,
 "notes": [
  "Device instance and name are 607XXX / \"MSX 607XXX\", where XXX is the address set on the DIP switches. Object instances (AI 1, AV 1 ...) are fixed.",
  "Names follow the Object_Name defaults on the object pages; the summary table prints slightly different labels (for example \"Pressure in w.c\", \"Flow Area sq ft\").",
  "Access is from the \"Is (User) Writable\" column. That column marks AV 5, AV 6 and BV 2 as not writable, but the text says AV 5/AV 6 are set over BACnet and BV 2 is written to zero the sensor, so they are shown as W. The alarm enables BV 5/BV 7 are printed not writable and kept as R.",
  "AV 7, BV 1, BV 3 and BV 4 are not in the list. AV 9/AV 10 use the unit of the selected process mode."
 ],
 "source": {
  "title": "Series MSX-Comms Magnesense Pressure Transmitter, Installation and Operating Instructions",
  "doc_number": "Bulletin P-MSX-C",
  "revision_date": null,
  "url": "https://assets.dwyeromega.com/manuals-do/MSX_Instruction_Manual_(BACnet_Modbus).pdf"
 },
 "integration": {
  "summary": "Read the pressure AI in the unit you want, or the velocity/flow AV if the process mode is set to velocity or flow, and map the two alarm status BVs. Set MSV 1 Process Mode, the K factor and duct area once at commissioning.",
  "minimum_points": [
   {
    "ref": "AI 1",
    "name": "Pressure inWC",
    "why": "Differential pressure, inWC"
   },
   {
    "ref": "AV 1",
    "name": "Velocity FPM",
    "why": "Velocity, fpm (velocity mode)"
   },
   {
    "ref": "AV 3",
    "name": "Flow CFM",
    "why": "Duct flow, cfm (flow mode)"
   },
   {
    "ref": "BV 6",
    "name": "Alarm High Limit Status",
    "why": "High limit alarm active"
   },
   {
    "ref": "BV 8",
    "name": "Alarm Low Limit Status",
    "why": "Low limit alarm active"
   }
  ],
  "enable": null,
  "heartbeat": null,
  "remote_sensors": null,
  "setup": [
   "BACnet MS/TP or Modbus RTU on RS485; baud, parity and stop bits are detected automatically from bus traffic.",
   "MAC address (0-127 for BACnet) is set on the DIP switches and also forms the device instance 607XXX.",
   "DeviceCommunicationControl and ReinitializeDevice need the password given in the manual."
  ],
  "gotchas": [
   "Write BV 2 Zero only with atmospheric pressure on both ports.",
   "Velocity and flow need the K factor (AV 5) and duct area (AV 6) set correctly."
  ]
 },
 "points": [
  {
   "type": "AI",
   "instance": 1,
   "name": "Pressure inWC",
   "description": "Differential pressure",
   "units": "inWC",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 2,
   "name": "Pressure Pascals",
   "description": "Differential pressure",
   "units": "Pa",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 3,
   "name": "Pressure Kilo-Pascals",
   "description": "Differential pressure",
   "units": "kPa",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 4,
   "name": "Pressure mmWC",
   "description": "Differential pressure",
   "units": "mmWC",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 1,
   "name": "Velocity FPM",
   "description": "Calculated velocity",
   "units": "fpm",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 2,
   "name": "Velocity MPS",
   "description": "Calculated velocity",
   "units": "m/s",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 3,
   "name": "Flow CFM",
   "description": "Calculated flow",
   "units": "cfm",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 4,
   "name": "Flow CMH",
   "description": "Calculated flow",
   "units": "m³/h",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 5,
   "name": "Velocity K Value",
   "description": "Velocity K factor, 0.001-9.999",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 6,
   "name": "Flow Area SqFt",
   "description": "Duct area for flow, 0.125-25 ft²",
   "units": "ft²",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 8,
   "name": "Flow Area SqM",
   "description": "Duct area in m²",
   "units": "m²",
   "access": "R",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 9,
   "name": "Alarm High Limit",
   "description": "High alarm limit, unit of selected mode",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 10,
   "name": "Alarm Low Limit",
   "description": "Low alarm limit, unit of selected mode",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "BV",
   "instance": 2,
   "name": "Zero",
   "description": "Set Active (1) to run a zero calibration",
   "units": "",
   "access": "W",
   "states": "0=Inactive, 1=Active"
  },
  {
   "type": "BV",
   "instance": 5,
   "name": "Alarm High Limit Enable",
   "description": "",
   "units": "",
   "access": "R",
   "states": "0=Inactive, 1=Active"
  },
  {
   "type": "BV",
   "instance": 6,
   "name": "Alarm High Limit Status",
   "description": "",
   "units": "",
   "access": "R",
   "states": "0=Inactive, 1=Active"
  },
  {
   "type": "BV",
   "instance": 7,
   "name": "Alarm Low Limit Enable",
   "description": "",
   "units": "",
   "access": "R",
   "states": "0=Inactive, 1=Active"
  },
  {
   "type": "BV",
   "instance": 8,
   "name": "Alarm Low Limit Status",
   "description": "",
   "units": "",
   "access": "R",
   "states": "0=Inactive, 1=Active"
  },
  {
   "type": "MV",
   "instance": 1,
   "name": "Process Mode",
   "description": "What the transmitter calculates",
   "units": "",
   "access": "W",
   "states": "1=Pressure, 2=Velocity, 3=Flow"
  },
  {
   "type": "PIV",
   "instance": 1,
   "name": "Damping Time",
   "description": "Output damping",
   "units": "s",
   "access": "W",
   "states": ""
  }
 ],
 "page": "https://easybacnet.com/bacnet-points-lists/dwyer/msx-comms-magnesense-pressure-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"
}
