OpenWrt 2.4.0 
Warning
Release Risk: High
This release contains significant changes to core features. Please verify integration behavior after updating.
Affected areas: ⚙️ Core (25 files · 51%) · 🗣️ Translations (2 files · 4%) · 🧪 Tests (16 files · 33%) · 🚀 CI/CD (5 files · 10%)
📋 What's Changed
✨ New Features
- tracking: Add optional reverse DNS fallback (#95) (9d805c4)
- Add reconfiguration flow support to OpenWrt config flow (#88) (4d4d176)
- Add banIP and Snort to config flow packages table and update rpcd ACL template for banIP and conntrack (db9286a)
- banip: BanIP status + packet-block counters (c703781) — thanks to @stijn Cleynhens for this contribution!
- sensors: Add connection-tracking (conntrack) sensor (741d697) — thanks to @stijn Cleynhens for this contribution!
- snort: Add Snort IDS sensor (de976b8) — thanks to @stijn Cleynhens for this contribution!
- api: Add read_file primitive (4ea3580) — thanks to @stijn Cleynhens for this contribution!
- Datetime values GPS timestamps & detailed tracking sensors (#78) (d12327e)
🐛 Bug Fixes
- release: Level=minor/major respected even when current version has pre-release suffix (e257d8b)
- firmware: Support release branch snapshots and prevent incorrect upgrades (#94) (554ec8e)
- wireguard: Move polling to medium interval and increase handshake threshold (#91) (f52e3e2)
- wireguard: Support 5-column interface line and enable sensors by default (#91) (e7a7e22)
- Return datetime for gps sensors #78 (af2a3e5)
- Fix firmware upgrade backup failure abort and profiles.json URL resolution (#90) (0428c86)
- Fix AdBlock entities by querying runtime JSON file and fallback to adb_enabled UCI key (#87) (e567a57)
- Fix duplicate Access Point entries by normalizing identifiers during registry cleanup (#63) (2971833)
- Fix WireGuard parsing, missing Snort package checks, and ensure new entities are disabled by default (f206f71)
- Fix unavailable wireless client Tx/Rx rate sensors for LuCI RPC and SSH (#62) (dc5f12d)
- wireguard: Parse the 'wg show all dump' interface layout (6d1e070) — thanks to @stijn Cleynhens for this contribution!
- Fix wireless client Tx/Rx rate sensors for nested hostapd rate data and fallback interfaces (#62) (eb6285e)
♻️ Code Improvements
- Bulletproof firmware update flow with file cleanup and execution locks (6e45d31)
- Clean up entities and devices of disabled features on options change (#89) (31f6837)
🔄 CI / CD
- Change default GPS poll to 60s and round coordinates to 6 decimal (#78) (71c71c6)
- Improved changelog builder (b79e75e)
📦 Other Changes
- Update actions/labeler action to v6.2.0 (#93) (196247c)
- Update github/codeql-action action to v4.37.0 (#92) (7586c2e)
- Update github/codeql-action action to v4.36.3 (#81) (7d1c18a)
- Check stty and timeout binaries in setup packages summary dialog (#78) (402715d)
28 significant changes from 43 total commits since v2.3.2.
📊 Release Details
| Version | 2.4.0 |
| Channel | stable |
| Released | 2026-07-10 16:09 UTC |
| Commits included | 43 — since last stable release (v2.3.2) |
| Downloads (this release) | |
| Downloads (total) |
📖 Documentation · 🐛 Report an Issue · 📦 All Releases