# \[APP\]\[Pro\] RadonEye - Real-time radon detection

**URL:** <https://community.homey.app/t/app-pro-radoneye-real-time-radon-detection/142645>\
**Category:** Apps\
**Tags:** app, bluetooth-le-ble, homey-pro\
**Created:** [September 5, 2025, 8:24pm UTC](https://community.homey.app/t/app-pro-radoneye-real-time-radon-detection/142645 "2025-09-05T20:24:30Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![petero-dk](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/petero-dk/32/81190_2.png) [@petero-dk](https://community.homey.app/u/petero-dk)\
**Post date:** [September 5, 2025, 8:24pm UTC](https://community.homey.app/t/app-pro-radoneye-real-time-radon-detection/142645/1 "2025-09-05T20:24:30Z")

</div>

Placeholder for information regarding the RadonEye app.

Source can be found here: [GitHub - petero-dk/org.radoneye](https://github.com/petero-dk/org.radoneye)

The test version can be installed from here: [RadonEye | Homey](https://homey.app/a/org.radoneye/test/)

---

<div class="post-metadata">

**Author:** ![petero-dk](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/petero-dk/32/81190_2.png) [@petero-dk](https://community.homey.app/u/petero-dk)\
**Post date:** [December 1, 2025, 8:04pm UTC](https://community.homey.app/t/app-pro-radoneye-real-time-radon-detection/142645/2 "2025-12-01T20:04:28Z")

</div>

I know there is an issue with version 3 (and maybe version 2) firmware, but I don’t have that version so I am not able to directly test it.

If anyone has experience in Homey apps development and have a Radon Eye version 2 or 3 I would be happy to guide and co-develop

---

<div class="post-metadata">

**Author:** ![LowKnee](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lowknee/32/146848_2.png) [@LowKnee](https://community.homey.app/u/LowKnee)\
**Post date:** [December 4, 2025, 4:26pm UTC](https://community.homey.app/t/app-pro-radoneye-real-time-radon-detection/142645/3 "2025-12-04T16:26:47Z")

</div>

I have two v3.0.1, I could send one to you 🙈😂 really

or you tell me what to do…

Cheers

Marc

Supportfile

6803425f-d06e-41bf-9178-35dd3e27bdba

---

<div class="post-metadata">

**Author:** ![LowKnee](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lowknee/32/146848_2.png) [@LowKnee](https://community.homey.app/u/LowKnee)\
**Post date:** [December 9, 2025, 9:53am UTC](https://community.homey.app/t/app-pro-radoneye-real-time-radon-detection/142645/4 "2025-12-09T09:53:10Z")

</div>

Does this help?

## RD200 Overview

The RadonEye RD200 is a smart radon detector using a pulsed ionization chamber for real-time monitoring, with Bluetooth LE (BLE) connectivity for data access via apps or custom Python scripts. It provides radon levels in Bq/m³ or pCi/L, updated every 10 minutes (60-minute moving average), with high sensitivity (30 cph per pCi/L) and accuracy \<±10% at 10 pCi/L. Data logging stores up to 1 year of hourly readings; power via 12V DC adapter, operating range 0-40°C, RH\<80%.

## Version Differences

Versions (V1, V2, V3.0.1) differ mainly in BLE packet structure and data fields, identified by serial number prefix (e.g., FR:R2 for V1, FR:RU/RE/GI for V2). All share core radon metrics but V2/V3 add pulse counters and detailed uptime for better validation in Python integrations like rd200v2 GitHub repo. V3.0.1 is a firmware update improving stability without new fields.

## Common BLE Data Fields

All versions transmit via packets like 0x40 (status) and 0x51 (details), parsed as Little-Endian in Python (e.g., struct.unpack). Core fields are available across versions; extended ones only in V2+.

## Detailed Data Fields Table

| Field Name | Type/Format | Unit | Value Range/Notes | Field Size (Bytes) | Versions | Remarks |
| --- | --- | --- | --- | --- | --- | --- |
| Radon Current | uint16 | Bq/m³ | 1-3700 (10-min update) | 2 | V1/V2/V3 ​ | Real-time, offset-corrected |
| Radon 24h Average | uint16 | Bq/m³ | Hourly rolling average | 2 | V1/V2/V3 ​ | Short-term trend |
| Radon 1-Month Average | uint16 | Bq/m³ | Long-term (up to 1 year storage) | 2 | V1/V2/V3 ​ | Compliance monitoring |
| Peak Radon | uint16 | Bq/m³ | Maximum since start/reset | 2 | V1/V2/V3 ​ | App-resettable |
| Uptime Hours | uint16 | Hours | Total runtime​ | 2 | V1/V2/V3 ​ | Basic longevity |
| Pulse Counter Current | uint32 | Counts | Current pulses for validation | 4 | V2/V3 ​ | Accuracy check (missing in V1) |
| Pulse 10min Interval | uint32 | Counts/10min | Interval pulses | 4 | V2/V3 | Real-time integrity |
| Uptime Minutes | uint8 | Minutes | Detailed time | 1 | V2/V3 ​ | Supplements hours |
| Uptime Seconds | uint8 | Seconds | Precise runtime | 1 | V2/V3 ​ | Full uptime precision |
| Firmware Version | uint16/String | - | e.g., V3.0.1 (major/minor) | 2-4 | V2/V3 | Device identification |
| Battery Level | uint8 | % | 0-100 (if applicable) | 1 | All?​ | Not always in BLE |
| Packet Type | uint8 | - | 0x40/0x51 headers | 1 | All ​ | Parsing key |
| MAC Address | uint48 | - | Device ID for scanning | 6 | All | Static, required for Python |

## Python Integration Notes

Use libraries like bleak for BLE scanning; rd200v2 repo handles parsing (V1 partial, V2/V3 full support). Recommend ESP32 proxy for stability on Raspberry Pi; poll every 10 min, validate via pulses \> threshold. Packets: V1 ~20 bytes, V2/V3 ~30+ bytes. Compatible with Home Assistant/ESPHOME.

---

<div class="post-metadata">

**Author:** ![LowKnee](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lowknee/32/146848_2.png) [@LowKnee](https://community.homey.app/u/LowKnee)\
**Post date:** [December 9, 2025, 10:00am UTC](https://community.homey.app/t/app-pro-radoneye-real-time-radon-detection/142645/5 "2025-12-09T10:00:53Z")

</div>

maybe this also…

## BLE Connection Overview

All Radoneye RD200 versions (V1, V2, V3.0.1) use standard Bluetooth Low Energy (BLE) with no fundamental differences in connection setup, such as advertising, scanning, or GATT services. Devices advertise continuously with a static MAC address (e.g., identifiable as “FR:R2:SNxxxx” for V1), scanned via tools like bleak in Python or ESPHome; connection is connectionless for notifications after pairing (no complex handshake beyond standard BLE pairing). Data is pushed via notifications on characteristics (e.g., 0x40/0x51 packet types), polled every 10 minutes; no authentication or bonding required for community tools.

## Differences in BLE Structure

No significant variations in BLE connection type (all BLE 4.2+), advertising interval (~1s), or MTU (default 20-23 bytes). Differences lie in payload content and size: V1 packets shorter (~20 bytes, basic fields), V2/V3 extended (~30+ bytes with pulse/uptime details); parsing uses same Little-Endian struct.unpack but offsets shift for V2+. V3.0.1 adds minor protocol stability (e.g., fewer dropped packets at high radon), but identical service/characteristic UUIDs across versions.

## Handshake and Stability

- **Handshake** : Identical—scan \> connect \> enable notifications on data characteristic; no custom handshake or keys; ESP32 proxy recommended for all to avoid Raspberry Pi BLE hangs.

- **V1** : Prone to timeouts on long polls due to simpler firmware; partial rd200v2 support.

- **V2** : Improved reliability, full notifications; handles concurrent app connections better.​

- **V3.0.1** : Firmware optimizations reduce reconnects (e.g., bugfixes in high-load), but same procedure.

## Comparison Table: BLE Aspects

| Aspect | V1 | V2 | V3.0.1 |
| --- | --- | --- | --- |
| Advertising Name | FR:R2:SNxxxx ​ | FR:RU/RE/GI:SNxxxx ​ | Same as V2 ​ |
| Packet Size | ~20 bytes ​ | ~30+ bytes ​ | ~30+ bytes ​ |
| Connection Type | BLE Notifications ​ | BLE Notifications ​ | BLE Notifications ​ |
| Handshake | Standard (no auth) ​ | Standard ​ | Standard ​ |
| Stability/Proxy Need | High (ESP32 req.) ​ | Medium ​ | Medium (optimized) ​ |
| Python Parsing Offsets | Basic (shifted) ​ | Full ​ | Full ​ |

---

<div class="post-metadata">

**Author:** ![petero-dk](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/petero-dk/32/81190_2.png) [@petero-dk](https://community.homey.app/u/petero-dk)\
**Post date:** [June 24, 2026, 4:54am UTC](https://community.homey.app/t/app-pro-radoneye-real-time-radon-detection/142645/6 "2026-06-24T04:54:21Z")

</div>

There is a new test version, I finally got a version 3 myself, so it was an easy fix. Please let me know of any problems, otherwise I will upgrade to release soon.

> **[RadonEye | Homey](https://homey.app/en-ca/app/org.radoneye/RadonEye/test/)**
>
> Real-time radon detection
