Best smart radon and CO detectors for Home Assistant
Radon and carbon monoxide detectors that integrate with Home Assistant, with the protocol and local-control story for each.
On this page
Radon and carbon monoxide are two very different hazards, and the devices that detect them are different too — so this guide treats them separately. Both are life-safety sensors, which makes local control especially important: a CO alarm has to work whether or not your internet is up. Below are detectors that integrate with Home Assistant, with an honest note on the radio and local-control story for each. (One important reality check up front: most air-quality monitors do not measure radon. Radon needs a dedicated radon sensor.)
Radon detectors that work with Home Assistant
Radon is a colorless, odorless gas. There’s no Zigbee or Z-Wave consumer radon detector worth recommending — the established options are Bluetooth (BLE) monitors that you bring into Home Assistant locally.
Airthings (Wave radon models, and the View Plus)
Airthings makes the most popular consumer radon monitors. Which Home Assistant path you get depends heavily on the model, so don’t assume “Airthings” means “local”:
- The local Airthings BLE integration reads the device directly over Bluetooth (a Bluetooth adapter or an ESPHome Bluetooth proxy within range), with no cloud account. But it only supports the Wave family — Wave, Wave Plus, and Wave Mini. The Wave Plus measures radon plus CO₂, VOC, temperature, humidity, and pressure.
- The View Plus (and the other View-series displays) is not supported by the Airthings BLE integration. Its radon reading comes through the Airthings cloud integration (which uses Airthings’ servers and an account), or via a community add-on that polls the device over Bluetooth and republishes to your local MQTT broker. So if you want a View Plus to be fully local in HA, the community MQTT bridge is currently the route — there is no first-party local option.
Note that radon updates are slow by nature (hourly-ish), which is normal for the measurement.
Ecosense RadonEye (RD200)
The Ecosense RadonEye RD200 is a dedicated radon monitor with a fast first reading and BLE output. It doesn’t integrate out of the box, but two solid local paths exist: the ESPHome radon_eye_ble / radon_eye_rd200 sensor component (read it via an ESP32 BLE proxy), or a community custom integration. Either way it’s local over Bluetooth. Heads-up: if the Ecosense phone app is actively connected it holds an exclusive BLE connection, which can block Home Assistant from reading it.
What does NOT measure radon
This trips a lot of people up:
- AirGradient One / Open Air are excellent local air-quality monitors (PM, CO₂, VOC, NOₓ, temp/humidity) with an official Works-with-Home-Assistant integration — but they do not measure radon.
- Apollo AIR-1 and Apollo MSR-2 are ESPHome Wi-Fi/PoE sensors (air quality and mmWave presence respectively). Neither measures radon, and neither is Z-Wave or Zigbee — they’re local ESPHome devices.
If you want radon, you need an Airthings or RadonEye-class dedicated radon monitor. The air-quality sensors above are great companions, just not radon detectors.
CO detectors with smart integration
For smoke specifically (rather than carbon monoxide), see our companion guide to the best smart smoke detectors with local alerts.
For carbon monoxide, the standout for a local-first home is Zigbee.
Heiman Zigbee CO detector
The Heiman carbon monoxide sensor (model COSensor-EF-3.0 / HS1CA-E and similar) is a Zigbee alarm, not Z-Wave. It pairs to a local Zigbee coordinator and is fully supported in Zigbee2MQTT — exposing a carbon_monoxide binary state plus battery — and partially supported in ZHA. Heiman also joined the Works with Home Assistant program in February 2026, bringing certified devices into the program. This is the most straightforward way to get CO status into HA locally so you can trigger lights, sirens, or shut off a gas appliance, all without the cloud.
First Alert / Kidde Z-Wave smoke + CO combos
If you’re on Z-Wave, First Alert’s Z-Wave Plus combination smoke and CO alarm (the ZCOMBO line, and its newer SMCO410 replacement) is a listed, self-sirening alarm that also reports to a Z-Wave controller. It joins Z-Wave JS in Home Assistant and exposes smoke and CO states, though some of the extra entities take a little interpretation. Because it’s a certified standalone alarm with its own 85 dB siren, it doubles as the primary life-safety device — a nice property a bare Zigbee sensor doesn’t have. (Note: First Alert and Kidde are separate brands; the widely used Z-Wave combo here is First Alert’s.)
A note on hubs/coordinators
To use a Zigbee CO detector you need a Zigbee coordinator (a USB stick like Home Assistant Connect ZBT-2, Sonoff/SMLIGHT dongles, or a ConBee III — which is a Zigbee coordinator, with Thread firmware available, not a Z-Wave hub). For Z-Wave devices you’d use a Z-Wave controller (e.g. a Z-Wave stick with Z-Wave JS, or a RAZberry board). Don’t mix these up: match the coordinator to the device’s radio.
Safety caveat
Treat networked CO sensors as a supplement to, not a replacement for, certified standalone CO alarms with their own local siren. Many jurisdictions require listed CO alarms, and you never want your only CO warning to depend on Home Assistant being up.
Tradeoffs and recommendations
- Radon is its own thing. Budget for a dedicated radon monitor (Airthings or RadonEye); don’t expect an air-quality sensor to cover it.
- BLE range matters for radon. Place the monitor within Bluetooth range of your HA host or an ESPHome BLE proxy, or readings won’t come through.
- CO should be local and loud. A Zigbee Heiman detector gives you HA integration; keep a listed standalone CO alarm as the primary life-safety device.
Quick verdict
- Radon, fully local: an Airthings Wave / Wave Plus via the local Airthings BLE integration, or an Ecosense RadonEye RD200 via ESPHome / a community BLE integration.
- Radon, most features (but not fully local): the Airthings View Plus — radon plus CO₂/PM2.5/VOC — reached through the Airthings cloud integration, or a community MQTT bridge if you want it local.
- Carbon monoxide, Zigbee: Heiman Zigbee CO detector on a local Zigbee coordinator.
- Carbon monoxide, Z-Wave: First Alert Z-Wave combo — a listed, self-sirening alarm that also reports to Z-Wave JS.
- Air quality (not radon) for automations: AirGradient ONE or Apollo AIR-1, both fully local.
Be realistic: the set of radon and CO devices with genuine local HA support is small. Keep certified, self-sirening alarms as the primary life-safety layer, and use Home Assistant for the smart layer on top.