Skip to content

Releases: DonTranQuiL/HA-Radmon

Release list

v2.0.0

Choose a tag to compare

@github-actions github-actions released this 07 Oct 15:32

Radmon

☢️ Radmon 2.0.0: rebuilt from scratch

Radmon brings live background radiation from any radmon.org Geiger counter station into Home Assistant. Version 2.0 is a complete rewrite: the old 1.x code scraped the radmon.org website from a folder whose name didn't match its domain, and it stopped working reliably. 2.0 uses radmon.org's own endpoints, a modern config flow and a full test suite.

Open in HACS

✨ Highlights

  • Two modes, picked automatically
    • 🔑 Owner mode: for your own station. Enter its data-sending password and Radmon uses radmon.org's official last-reading API (which needs that password since May 2026), including your station's own µSv/h. Every 5 minutes by default, down to 1.
    • 🌍 Public mode: for any station, just the name. Reads the small public station page every 30 minutes by default (minimum 15, to go easy on the volunteer-run service) and calculates µSv/h from CPM.
  • Setup that checks itself: the station and password are validated against radmon.org before saving. Re-authentication and Reconfigure (switch modes any time) included.
  • Options: update interval, CPM→µSv/h conversion factor (default 0.0057, SBM-20), alert threshold (default 100 CPM) and offline-after (default 30 min).
  • Keeps working: a failed poll keeps the last good reading. Diagnostics download with the password redacted.
  • English and Dutch translations, new icon, docs site: https://dontranquil.github.io/HA-Radmon/

📊 Entities (one device per station)

Entity Example ID
CPM sensor.radmon_<station>_cpm (location, coordinates and counter model as attributes)
Dose rate (µSv/h) sensor.radmon_<station>_dose_rate
Last reading sensor.radmon_<station>_last_reading
Online binary_sensor.radmon_<station>_online
Radiation alert binary_sensor.radmon_<station>_radiation_alert
Consecutive update errors, last update status, last update time diagnostic, disabled by default

⬆️ Upgrading from 1.x

  1. Update through HACS and restart Home Assistant.
  2. Delete the old custom_components/ha-radmon folder. The new code lives in custom_components/radmon_scrape, and both use the same domain, so if the old folder stays Home Assistant may load the old code.
  3. Restart again. Your existing entry is migrated automatically to public mode (30-minute interval).

Unique IDs and the cpm unit are unchanged, so your CPM and dose rate entities keep their IDs, history and dashboards. The device is now called Radmon <station>. For owner mode: entry → ⋮ → Reconfigure → enter the data-sending password.

🛠️ Under the hood

  • DataUpdateCoordinator, typed runtime data, config entry migration v1 → v2
  • 41 tests (99% coverage), hassfest, HACS validation, CodeQL and ruff in CI
  • A daily watcher checks that the radmon.org endpoints still behave as documented and opens an issue if they change
  • Identifying User-Agent; never downloads the full station list or graphs

Warning

Radmon is not a safety device. Readings come from volunteers' hardware over the internet and can be late, missing or wrong.

🙏 Credits

  • Data from radmon.org, run by volunteers (thanks to Simomax and mw0uzo) and fed by its station owners. It's free; consider supporting it if you use it a lot.
  • Original 1.x integration by TranQuiL (@Malosaaa)
  • Built and maintained by DonTranQuiL. Questions? Join the Discord.

Full changelog: CHANGELOG.md