- Home
- BACnet points lists
- A. O. Smith
- Xi / MXi gas water heaters (ETH-1000 / Mirius gateway)
Commercial gas water heater · BACnet points list
A. O. Smith Xi / MXi gas water heaters (ETH-1000 / Mirius gateway) BACnet points list
Updated 28 October 2026
A. O. Smith's Xi and MXi gas water heater controls talk to BACnet through an ICC gateway: the Mirius gives BACnet MS/TP and the ETH-1000 gives BACnet IP. Each heater appears as a virtual BACnet device with tank temperatures, setpoint and differential, run-time and fault counters, safety-switch inputs, relay states and state/fault/alert codes. The BMS can write the setpoint and use an EMS control word to enable or disable heating.
This page lists 66 BACnet objects for the A. O. Smith Xi / MXi gas water heaters (ETH-1000 / Mirius gateway) — 5 of them writable — with each object’s type, instance number, name, engineering units and access. It is re-typed from A. O. Smith’s own free documentation, linked below.
- Manufacturer
- A. O. Smith
- Model
- Xi / MXi gas water heaters (ETH-1000 / Mirius gateway)
- Equipment
- Commercial gas water heater
- Equipment type
- Boilers & water heaters
- BACnet objects
- 66 (5 writable)
- Transport
- BACnet MS/TP, BACnet IP
- Firmware
- Mirius V3.300, ETH-1000 V4.002 (device object values in the manual)
- Default device instance
- 520081
- Also known as
- Cyclone Xi, Xi 1.0, MXi, ETH-1000, Mirius, 100316044, 100316045, ICC gateway, iCOMM
BMS integration notes: A. O. Smith Xi / MXi gas water heaters (ETH-1000 / Mirius gateway)
Install the ICC gateway (Mirius for BACnet MS/TP, ETH-1000 for BACnet IP) on the heater and set its address and device instance with ICC Configuration Studio. The BMS writes the tank setpoint (AV 201) and, if it should switch heating, takes EMS control through AV 263, which then has to be refreshed at least every 30 s. Read the tank temperature, CCB state and fault/alert codes.
Minimum points to map
The short list most integrators start with — enough to run the unit from a BMS. Map more as the job needs.
| Object | Name | Why | Access |
|---|---|---|---|
| AV 263 | EMS Mode-Status | EMS control word: enable/disable heating | Write |
| AV 201 | Temper Setpoint | Tank setpoint, 32.2-82.2 °C | Write |
| AV 207 | Mxi Mod% Cmd | MXi firing-rate limit, 0-100 % | Write |
| MV 801 | System State | CCB state: standby, purge, heating, fault | Read |
| AI 5 | Tank Temperature | Controlling tank temperature, °C | Read |
| AI 3 | Upper Temperature | Upper tank probe temperature, °C | Read |
| BV 504 | System In Fault | Heater in fault | Read |
| MV 802 | Fault Code | Active fault code | Read |
| MV 803 | Alert Code | Active alert code | Read |
Enable & remote start
Heating on/off from the BMS goes through AV 263 EMS Mode-Status. Xi 1.0: write 3841 to enter EMS mode, then 1 to enable or 0 to disable heating; write 3840 to leave EMS mode. MXi: write 32769 to enter EMS mode with heating enabled, 32768 for EMS mode with heating disabled, 0 for no EMS control. Heating still also depends on tank temperature falling below setpoint minus differential and on the external thermostat if that option is on.
Heartbeat & communication loss
Xi 1.0: write 3584 (EMS Mode Refresh) within 30 s, 15 s or less recommended, or EMS mode ends and the heater resumes normal operation. MXi: the enable-heating command must be resent at least every 30 s or heating is disabled. On MXi software below 3.16 EMS mode cannot be cleared over BACnet; only a power cycle clears it.
Network setup
- Gateway settings (address, baud, device instance, device name, IP) are changed with the ICC Configuration Studio software over USB.
- Mirius defaults: Modbus address 1, BACnet MS/TP MAC 81, device instance 520081 for gas models.
- MS/TP baud rates listed: 4800-115200; the ETH-1000 uses DHCP by default and supports foreign-device registration.
- Device object defaults: name Water Heater-01, vendor ICC, Inc. (242).
Watch out for
- The EMS word reads back with bit 14 set (0xC000/0xC001); a brief 0x8000 reading is normal between refreshes.
- After leaving EMS mode with 3840 on Xi 1.0, write 0 and 3584 to clear leftover bits 1 and 14.
- Some objects are Xi 1.0 only or MXi only; check which control the heater has.
- Temperatures are in °C even where the setpoint range is quoted in °F.
A. O. Smith Xi / MXi gas water heaters (ETH-1000 / Mirius gateway) BACnet objects
Type: AI, AO, AV, BI, BO, BV, MI/MO/MV (multi-state) · Access: Read read-only, Write writable, Command writable with a priority array.
| Description | States | |||||
|---|---|---|---|---|---|---|
| AI | 1 | Firmware Ver-Rev1 | Firmware version; major in upper byte, minor in lower | Read | ||
| AI | 2 | Configuration | Configuration word | Read | ||
| AImin | 3 | Upper Temperature | Upper or Primary Temperature | °C | Read | |
| AI | 4 | Lower Temperature | Lower or Secondary Temperature | °C | Read | |
| AImin | 5 | Tank Temperature | Controlling tank temperature, calculated | °C | Read | |
| AVmin | 201 | Temper Setpoint | Tank temperature setpoint; 32.2-82.2 °C (90-180 °F) | °C | Write | |
| AV | 202 | SetPoint Differ | Setpoint differential; 1.1-11.1 °C (2-20 °F) | °C | Write | |
| AVmin | 207 | Mxi Mod% Cmd | MXi modulation limit, 0 = minimum to 100 = rated input | % | Write | |
| AV | 208 | MxiLowTempAlrmSP2 | MXi low tank temperature alarm setpoint; 32.2-82.2 °C | °C | Write | |
| AV | 209 | Number of Cycles | Number of heating cycles | Read | ||
| AV | 210 | Elapsed Time | Powered-up time, hours with two decimals | h | Read | |
| AV | 211 | Elapsed Days | Powered-up time, days part | days | Read | |
| AV | 212 | Elapsed Hours | Powered-up time, hours part (use with Elapsed Days) | h | Read | |
| AV | 213 | Heating Time | Time spent heating, hours with two decimals | h | Read | |
| AV | 214 | Heating Days | Time spent heating, days part | days | Read | |
| AV | 215 | Heating Hours | Time spent heating, hours part (use with Heating Days) | h | Read | |
| AV | 216 | IgniterCurrent | Hot Surface Igniter current in amps | A | Read | |
| AV | 217 | #CCB HW Faults | CCB Hardware Fault Counter | Read | ||
| AV | 218 | #Model Faults | Model Fault Counter | Read | ||
| AV | 219 | #Upper Temp Faults | Upper Temperature Probe Fault Counter | Read | ||
| AV | 220 | #Lower Temp Faults | Lower Temperature Probe Fault Counter | Read | ||
| AV | 221 | #Flame Probe Flt | Flame Probe Fault Counter | Read | ||
| AV | 222 | #Flame Status Flt | Flame status fault counter | Read | ||
| AV | 223 | #CCB Comm Faults | Communication Fault Counter | Read | ||
| AV | 224 | #ECO Faults | High-temperature ECO trip counter | Read | ||
| AV | 225 | #LowGasPress Flt | Low Gas Pressure switch Fault Counter | Read | ||
| AV | 226 | #Blocked In Flts | Blocked Inlet pressure switch Fault Counter | Read | ||
| AV | 227 | #Blocked Exhst Flt | Blocked exhaust / condensate switch fault counter | Read | ||
| AV | 228 | #Ext Vent Faults | External Vent Fault Counter | Read | ||
| AV | 229 | #Blower Prv Flts | Blower Prove Pressure Switch Fault Counter | Read | ||
| AV | 230 | #Igniter Faults | Igniter Fault Counter | Read | ||
| AV | 231 | #Ignition Failure | Ignition Failure Fault Counter | Read | ||
| AV | 232 | #Powr Supply Flt | Power Supply Fault Counter | Read | ||
| AV | 233 | #Powr Anode Flts | Powered Anode Alert Counter | Read | ||
| AVmin | 263 | EMS Mode-Status | EMS control word (BMS enable/disable of heating); see notes | Write | ||
| BI | 301 | Upper Temp Open | Upper temperature Probe open status | Read | 0=Okay, 1=Open | |
| BI | 302 | Upper Temp Short | Upper temperature Probe shorted status | Read | 0=Okay, 1=Shorted | |
| BI | 303 | MXi Call For Heat | MXi call for heat | Read | 0=No, 1=Yes | |
| BI | 304 | Lower Temp Open | Lower temperature probe open | Read | 0=Okay, 1=Open | |
| BI | 305 | Lower Temp Short | Lower temperature probe shorted | Read | 0=Okay, 1=Shorted | |
| BI | 306 | Igntr Current OK | Igniter Current Sensed | Read | 0=No Current, 1=Current Sensed | |
| BI | 307 | Flame Sensed | Flame sensed | Read | 0=No Flame, 1=Flame Sensed | |
| BI | 308 | Blower Prove PS | Blower Prove pressure switch | Read | 0=Open Switch, 1=Closed Switch | |
| BI | 309 | Ext Vent PS | External vent pressure switch (if enabled by DIP switch) | Read | 0=Open Switch, 1=Closed Switch | |
| BI | 310 | Blocked Exhaust PS | Blocked exhaust pressure switch | Read | 0=Open Switch, 1=Closed Switch | |
| BI | 311 | Blocked Inlet PS | Blocked air intake pressure switch | Read | 0=Open Switch, 1=Closed Switch | |
| BI | 312 | Low Gas PS | Low Gas supply pressure switch | Read | 0=Open Switch, 1=Closed Switch | |
| BI | 313 | Upper Temp ECO | Upper probe high-temperature energy cut-out (ECO) status | Read | 0=Open Switch, 1=Closed Switch | |
| BI | 314 | External T’stat | External thermostat input (if enabled by DIP switch) | Read | 0=No, 1=Yes | |
| BI | 315 | Xi 1.0 Call For Heat | Xi 1.0 conditions allow heating | Read | 0=Okay, 1=Alarm | |
| BI | 316 | MXi LowTemp Alrm | MXi tank below low-temperature alarm setpoint | Read | 0=Okay, 1=Alarm | |
| BI | 317 | MXi LeakDetected | Optional leak detector tripped | Read | 0=No Leak, 1=Leak Detected | |
| BI | 318 | Mxi HeaterEnab’d | MXi front heater-enable switch | Read | 0=Disabled, 1=Enabled | |
| BI | 319 | MXi External Enab | MXi optional external enable input | Read | 0=Disabled, 1=Enabled | |
| BI | 320 | Xi 1.0 Ign Tries | Xi 1.0 ignition tries set by DIP switch | Read | 0=3 tries, 1=1 try | |
| BO | 401 | Ext Vent Relay | External Vent Relay output commanded status | Read | 0=Off, 1=On | |
| BO | 402 | Blower Relay | Blower Relay output commanded status | Read | 0=Off, 1=On | |
| BO | 403 | Ignition Relay | Ignition Relay output commanded status | Read | 0=Off, 1=On | |
| BO | 404 | Gas Valve Relay | Gas valve Relay output commanded status | Read | 0=Off, 1=On | |
| BV | 501 | MXi Ign Tries | MXi ignition tries (set at the UIM) | Read | 0=3 tries, 1=1 try | |
| BV | 502 | MXi Use Ext Enab | MXi use the optional external enable input | Read | 0=No, 1=Yes | |
| BV | 503 | MXi Modulation | MXi modulation enable (CCB software 3.15+) | Read | 0=Disabled, 1=Enabled | |
| BVmin | 504 | System In Fault | Heater in fault | Read | 0=Okay, 1=Alarm | |
| MVmin | 801 | System State | CCB control state | Read | Xi 1.0: 1=Off (Standby), 2=Pre-Purge, 3=Igniter Warmup, 4=Ignition Activation, 5=Ignition Verification, 6=Inter-Purge, 7=Heating, 8=Post-Purge, 9=Fault; MXi: 1=Off (Standby), 2=Pre-Purge, 3=Igniting, 4=Gas Valve On, 5=Inter-Purge, 6=Heating, 7=Post-Purge, 8=In Fault | |
| MVmin | 802 | Fault Code | Active fault code | Read | Numeric code; see the fault codes and warnings table in the manual | |
| MVmin | 803 | Alert Code | Active alert code | Read | Numeric code; see the fault codes and warnings table in the manual |
No points match these filters.
Integration notes
- The manual says not all models support all objects and some names differ by model; a column marks which points apply to Xi 1.0 and which to MXi controls.
- Temperatures are in °C on the bus; the setpoint limits are also given in °F.
- The manual's R/W column is blank for BI 312-320, the BO relay states (described as commanded relay status), the BVs and the multistate values; access for those rows is not given, and they are listed here as read-only.
- AV 263 EMS Mode-Status uses coded values: Xi 1.0 writes 3841 to enter EMS mode, 1/0 to enable/disable heating, 3584 to refresh and 3840 to leave; MXi writes 32769 (enable heating), 32768 (disable) or 0 (no EMS control).
- The table refers to state and fault tables by numbers that do not match the printed tables; the states here come from the CCB state table (Table 11) and the fault table (Table 14).
- The gas table prints no objects at AV 203-206 (the electric table uses them for bank differentials).
Check it against the live device. A points list tells you what the controller can expose; the unit in front of you may differ by firmware or installed options. Easy BACnet scans a network for BACnet IP devices from an Android phone, reads every object on the Xi / MXi gas water heaters (ETH-1000 / Mirius gateway) and exports what it actually has to Excel — free. New to BACnet? Start with what a BACnet points list is and what the object types mean.
Questions about the A. O. Smith Xi / MXi gas water heaters (ETH-1000 / Mirius gateway)
How many BACnet points does the A. O. Smith Xi / MXi gas water heaters (ETH-1000 / Mirius gateway) have?
This list has 66 BACnet objects: 5 analog inputs, 30 analog values, 20 binary inputs, 4 binary outputs, 4 binary values, 3 multi-state values. The exact set on a given unit depends on its firmware, installed options and configuration.
Which A. O. Smith Xi / MXi gas water heaters (ETH-1000 / Mirius gateway) BACnet points are writable?
5 of the 66 objects accept a write. Points marked Command have a priority array: a write holds until it is released, so release it back to automatic when you are done.
Where is the official A. O. Smith Xi / MXi gas water heaters (ETH-1000 / Mirius gateway) BACnet documentation?
The source is Installation Manual: Inter-Appliance Communications, Communication Node for EMS/BMS Control (ETH-1000 / Mirius) (100329879_2000571701 Rev. C), revision 2020-02, published free by A. O. Smith at https://assets.hotwater.com/damroot/Original/10004/100329879.pdf.
What are the minimum BACnet points to integrate the A. O. Smith Xi / MXi gas water heaters (ETH-1000 / Mirius gateway)?
Start with AV 263 EMS Mode-Status (EMS control word: enable/disable heating); AV 201 Temper Setpoint (Tank setpoint, 32.2-82.2 °C); AV 207 Mxi Mod% Cmd (MXi firing-rate limit, 0-100 %); MV 801 System State (CCB state: standby, purge, heating, fault); AI 5 Tank Temperature (Controlling tank temperature, °C); AI 3 Upper Temperature (Upper tank probe temperature, °C); BV 504 System In Fault (Heater in fault); MV 802 Fault Code (Active fault code); MV 803 Alert Code (Active alert code).
How do I enable BMS control of the A. O. Smith Xi / MXi gas water heaters (ETH-1000 / Mirius gateway)?
Heating on/off from the BMS goes through AV 263 EMS Mode-Status. Xi 1.0: write 3841 to enter EMS mode, then 1 to enable or 0 to disable heating; write 3840 to leave EMS mode. MXi: write 32769 to enter EMS mode with heating enabled, 32768 for EMS mode with heating disabled, 0 for no EMS control. Heating still also depends on tank temperature falling below setpoint minus differential and on the external thermostat if that option is on.
Does the A. O. Smith Xi / MXi gas water heaters (ETH-1000 / Mirius gateway) need a BACnet heartbeat or have a communication timeout?
Xi 1.0: write 3584 (EMS Mode Refresh) within 30 s, 15 s or less recommended, or EMS mode ends and the heater resumes normal operation. MXi: the enable-heating command must be resent at least every 30 s or heating is disabled. On MXi software below 3.16 EMS mode cannot be cleared over BACnet; only a power cycle clears it.
How do I check these points on the real Xi / MXi gas water heaters (ETH-1000 / Mirius gateway)?
Scan the network with a BACnet IP browser such as Easy BACnet, open the device and compare its object list with this table. Anything missing is usually an option that isn't installed or a point that is disabled in the controller's configuration.
More A. O. Smith BACnet points lists
Source: Installation Manual: Inter-Appliance Communications, Communication Node for EMS/BMS Control (ETH-1000 / Mirius) · 100329879_2000571701 Rev. C · rev. 2020-02. Object names, instances and units are reproduced as published; descriptions are our own.