Version History - MiWiFi XiaoHack Edition
📡 Automatic releases from GitHub
The latest versions are synchronized automatically from GitHub.
Showing 1–5 of 58 releases
📦 v3.6.0 – XiaoHack Edition
Date: 2026-05-01 19:47:23
View original release on GitHub
📝 Changelog — MiWiFi Integration
📦 Version v3.6.0 – 2026-05-01
✅ Fixes & Stability
- 📶 Fixed wrong connection detection on routers with dedicated IoT WiFi
- Devices are now correctly separated between 5G Game and IoT on supported routers.
- Prevents IoT clients from being incorrectly grouped as 5G Game.
- 🧩 Fixed device classification for dedicated IoT firmwares
- Added proper handling for routers where the firmware reports IoT and Gaming as separate connection types.
- Improves connection accuracy on supported models such as RC01 / BE10000 and RC06 / BE7000.
- 📊 Fixed missing IoT counters in backend sensors
- Added support for the dedicated
devices_iotsensor. - Improves consistency between device trackers, router counters and frontend summaries.
- 🌐 Fixed Mesh/IP propagation stability for devices connected through leaf nodes
- Preserves device data more reliably when clients are associated through Mesh nodes.
- Helps avoid missing or inconsistent information during parent/leaf refresh cycles.
⚙️ Improvements
- 🧠 Added dedicated IoT connection handling
- The backend now supports IoT as a first-class connection type.
- Keeps compatibility with existing LAN, 2.4G, 5G, Guest, and 5G Game handling.
- 📦 Extended compatibility logic for newer Xiaomi firmwares
- Added safer handling for routers exposing dedicated IoT WiFi capabilities.
- Keeps legacy router behavior unchanged where IoT-specific data is not available.
- 🔄 Improved Mesh-aware device counting
- Router counters now align better with devices associated through main and Mesh nodes.
- Reduces incorrect grouping when the backend already knows the real parent node.
✅ Compatibility
- ✅ Compatible with standard Xiaomi router setups.
- ✅ Added dedicated IoT WiFi handling for supported routers.
- ✅ Compatible with RC01 / BE10000 and RC06 / BE7000 when the firmware exposes separate IoT data.
- ✅ Older routers continue working normally without requiring IoT-specific support.
📘 How to Update
- Replace your
custom_components/miwifi/folder with the contents of this release. - Restart Home Assistant.
- Check that devices connected through IoT now appear correctly in the integration.
ℹ️ Additional Information
- Added backend support for IoT as a dedicated connection type.
- Added support for the
devices_iotsensor. - Improved grouping and counting logic for routers with dedicated IoT WiFi.
💖 Support & Donations
If you find this integration useful and want to support continued development:
📦 v3.5.9 – XiaoHack Edition
Date: 2026-03-25 18:40:19
View original release on GitHub
📝 Changelog — MiWiFi Integration
📦 Version v3.5.9 – 2026-03-25
🆕 Compatibility Model
- ✅ Added support for new router model RD03V2 #305
✅ Fixes & Stability
- ⏱️ Added timeout to panel version check #303
- Prevents panel version checks from hanging indefinitely when the remote source is slow or temporarily unavailable.
- Improves overall responsiveness and avoids blocking related update/version validation flows.
⚙️ Improvements
- 📦 Extended model compatibility
- Added detection/support for RD03V2 to improve compatibility with newer Xiaomi router variants.
✅ Compatibility
- ✅ Compatible with standard Xiaomi router setups.
- ✅ Added support for RD03V2 router variants.
📘 How to Update
- Replace your
custom_components/miwifi/folder with the contents of this release. - Restart Home Assistant.
ℹ️ Additional Information
- Merged PR: #303 (
feat: add timeout to panel version check) - Merged PR: #305 (add support for router model RD03V2)
💖 Support & Donations
If you find this integration useful and want to support continued development:
📦 v3.5.8 – XiaoHack Edition
Date: 2026-02-22 10:52:09
View original release on GitHub
📝 Changelog — MiWiFi Integration
📦 Version v3.5.8 – 2026-02-22
🆕 Compatibility Model
- ✅ Added support for new router model RP04 #301
✅ Fixes & Stability
- 🧩 Fixed “mode” detection on firmware variants that return __HTML_PLACEHOLDER_0__
- When the primary endpoint
qnetwork/get_netmodefails, the integration falls back tonetmode(). - Some firmwares return the field as
netmode(and omitmode), which can break downstream logic expectingmode. - We now normalize the fallback payload: if
netmodeexists andmodeis missing, we mirror it (mode = netmode) to keep a consistent response shape.
⚙️ Improvements
- No other changes in this release.
✅ Compatibility
- ✅ Improved compatibility with provider / customized firmwares that expose __HTML_PLACEHOLDER_0__ instead of __HTML_PLACEHOLDER_1__ in the fallback API.
📘 How to Update
- Replace your
custom_components/miwifi/folder with the contents of this release. - Restart Home Assistant.
ℹ️ Additional Information
- Merged PR: #300 (“convert netmode field to mode field for compatibility”)
- Thanks to @Mythologyli for the contribution.
📦 v3.5.7 – XiaoHack Edition
Date: 2026-02-11 20:48:36
View original release on GitHub
📝 Changelog — MiWiFi Integration
📦 Version v3.5.7 – 2026-02-11
✅ Fixes & Stability
- 🧱 Fixed CB0401V2 crashes caused by __HTML_PLACEHOLDER_0__ / invalid topology payloads
- Some provider firmwares may return unexpected structures (including
null) in topology-related calls. - Topology handling is now strictly normalized to avoid
NoneTypeerrors during first refresh.
- 🧮 Fixed __HTML_PLACEHOLDER_0__ / empty-string parsing crashes during refresh
- Hardened parsing for WAN / speed metrics when routers temporarily report empty strings (
"") while links are negotiating or idle. - Device
downspeed/upspeedare now parsed safely and default to0.0if invalid.
- 🧯 Fixed CB0401V2 setup crash when restricted endpoints return non-JSON
- Provider firmwares can return HTML/empty responses for certain endpoints (e.g., LED control).
- These calls are now skipped or treated as non-fatal so the integration always loads.
- 🧹 Reduced log spam on provider firmwares
- Added timeouts + safe fallbacks to prevent retry storms and repeated 404/invalid responses.
- 🚦 Fixed Block Device service becoming unavailable when __HTML_PLACEHOLDER_0__ times out
- Some firmwares can timeout on
wifi_macfilter_info(read endpoint) even thoughset_mac_filter(write endpoint) works. - The Block/Unblock service no longer relies on
macfilter_infoavailability to decide support, preventing false “does not support” errors. - After applying a block/unblock, the integration updates the cached MAC filter map so
internet_blockedstate stays consistent even during cooldown/timeout windows.
- 🔄 Fixed __HTML_PLACEHOLDER_0__ state not persisting after refresh / navigation (Device Cards WAN toggle)
- Some firmwares report WAN access control via
/api/misystem/devicelistusingauthority.wan(0=blocked,1=allowed). - The integration now maps __HTML_PLACEHOLDER_0__ → __HTML_PLACEHOLDER_1__ consistently during device list preparation, so the UI keeps the correct block/unblock status after refresh or changing screens.
- Added a resilient fallback in device building so WAN access state never resets to “allowed” by default when the value is present in router payloads.
⚙️ Improvements
- 📡 CB0401V2 (Xiaomi 5G CPE Pro v2) support (Magenta/Telekom firmware)
- New CPE profile detection (
cpe_profile: CB0401V2) to avoid “unsupported model” failures. - Added dedicated CPE endpoints:
xqdtcustom/get_mobile_net_info(signal + usage + IPv4 in one call)xqdtcustom/cpe_detect(SIM status + retries)xqdtcustom/newstatus(hardware/MAC fallback)xqmobile/get_msgbox_count(SMS counter)
- 🌐 Mobile WAN fallback on CB0401V2
- If classic WAN endpoints are unavailable, WAN can fallback to mobile IPv4 data from CPE calls.
- 📊 Normalized mobile metrics for clean sensors
- Data usage/limit normalized to
*_gb(float) - 5G RSRP/SNR normalized to floats where possible
- 🧾 CB0401V2-only diagnostic sensors
- Mobile link type, operator, mobile IPv4
- 5G RSRP / 5G SNR
- Data usage (GB) / Data limit (GB)
- SIM status + PIN/PUK retries
- SMS count (when available)
Note: Data usage on CB0401V2 only populates when flowstatEnable=1 is enabled in the router UI.
✅ Compatibility
- ✅ No behavior changes for standard Xiaomi routers
- CPE endpoints and skips apply only when CB0401V2 is detected.
- Normal models keep the same refresh flow and entities.
- 🧩 Improved Home Assistant import compatibility
- Avoids device-class values not available on some HA builds (prevents import-time crashes).
📘 How to Update
- Download / pull the latest
MiWiFi XiaoHack Editionpre-release v3.5.7rc3. - Replace your
custom_components/miwifi/folder with the new version. - Restart Home Assistant.
- (Optional) Enable debug logs temporarily to validate:
- No
NoneType/float('')crashes during the first refresh. - CB0401V2 endpoints do not spam 404/non-JSON errors.
- Block/Unblock service keeps working even if
macfilter_infois timing out.
ℹ️ Additional Information
- This is an RC build focused on CB0401V2 (provider firmware variants) and defensive parsing.
- If you test on CB0401V2, please share sanitized payloads for:
xqdtcustom/get_mobile_net_infoxqdtcustom/cpe_detect- Any logs showing timeouts / restricted endpoints
- Any logs related to
macfilter_infotimeouts during blocking/unblocking
💖 Support & Donations
If you find this integration useful and want to support continued development:
🔎 Summary of changes (Lasted Release)
| Area | Change |
|---|---|
| CB0401V2 | Added dedicated CPE profile + provider-firmware safe handling |
| Mobile API | Added get_mobile_net_info + normalized GB metrics |
| SIM Diagnostics | Added cpe_detect (SIM status + retries) |
| SMS | Added get_msgbox_count support + sms_count flattening |
| WAN | Mobile IPv4 fallback when classic WAN is restricted |
| Stability | Safe parsing for None and empty-string numeric metrics |
| Endpoints | Skipped restricted endpoints on CB0401V2 (LED/ROM/mode) |
| Services | Block/Unblock no longer depends on macfilter_info availability; cache updated after apply |
| Sensors | Added CB0401V2-only mobile/SIM/SMS diagnostic sensors |
| WAN Access | Persist internet_blocked from devicelist authority.wan so block status survives refresh/navigation |
📦 v3.5.6 – XiaoHack Edition
Date: 2026-02-04 19:55:57
View original release on GitHub
📝 Changelog — MiWiFi Integration
📦 Version v3.5.6 – 2026-02-04
✅ Fixes & Stability
- 🧭 Fixed Integration Discovery not finding routers in non-default LAN subnets
- Discovery now detects routers correctly even when the LAN is not
192.168.31.0/24(e.g.192.168.1.1), and also discovers mesh leaf nodes from topology. - Uses a “raw”
topo_graphfetch path (without relying on internal URL/protocol building), improving compatibility across firmware variants.
- 🔁 Handled __HTML_PLACEHOLDER_0__ redirect / non-LAN responses during discovery
- Discovery requests now follow redirects and no longer fail hard when
miwifi.comresolves outside the LAN (e.g.,www.miwifi.comreturning 404).
- 🌐 Improved protocol resilience (HTTP/HTTPS)
- Discovery probes both
http://andhttps://fortopo_graph, increasing success rate across different router setups.
- 🧩 Reduced repeated discovery/flow spam
- Added an “already configured” guard so existing entries won’t keep re-triggering config flows on every discovery interval.
- 🧾 Better discovery debug visibility
- Added explicit logs for each discovery attempt and a guarded exception handler so failures don’t silently disappear.
- 🔒 Sanitized WAN debug logs to avoid leaking sensitive credentials
- WAN debug output now masks sensitive fields (e.g., PPPoE
password, tokens/keys) before logging, preventing accidental exposure in logs.
- ⏱️ Fixed false “unsupported” warnings caused by transient timeouts in compatibility checks
- Timeouts (and other non-conclusive failures) no longer mark features as *unsupported* automatically.
- Prevents “Model not compatible detected” notifications when the endpoint actually works but responds slowly.
- 🧠 Fixed incorrect auto-detection of MAIN router in Mesh setups
- Prevented mesh leaf nodes (e.g.,
show=0, mode=3, assoc=1) from being incorrectly flagged asis_main. - Auto-main detection now prioritizes the root topology node (presence of
leafs/nodes) andshow=1signals, ensuring only the real main router is selected automatically.
- 🚫🌐 Fixed WAN block/unblock service semantics and router compatibility
- Aligns WAN control behavior with Xiaomi router API expectations:
wan=1→ Internet allowedwan=0→ Internet blocked- Prevents situations where the toggle visually changes but the router does not apply the expected rule.
- 🧩 Improved MAC filter capability checks robustness
- Avoids false negatives on some firmwares where
macfilter_infomay intermittently fail/timeout even though the feature works. - Reduces “unsupported” mis-detection for MAC filter features on slow/busy routers.
⚙️ Improvements
- 🧠 Cleaner discovery task scheduling
- Discovery is launched via Home Assistant’s task loop (
hass.async_create_task) instead of a bareasyncio.create_task, improving integration safety during startup.
- 🧹 Cleaner auto-main reasoning output
auto_reasonnow reflects topology-root signals (leafs/nodes) as part of the decision, making troubleshooting easier.
✅ Compatibility
- ✅ Tested behavior aligns with Xiaomi topology responses:
- Main node discovered (e.g.,
192.168.1.1) - Mesh leaf nodes discovered (e.g.,
192.168.1.73) - Works even when
miwifi.comresponds with redirects or resolves outside LAN.
- ✅ Mesh auto-main logic validated:
- Only the root/main router is flagged as
is_mainautomatically. - Leaf mesh nodes remain non-main unless manually selected.
📘 How to Update
- Download / pull the latest
MiWiFi XiaoHack Editionpre-release v3.5.6rc1. - Replace your
custom_components/miwifi/folder with the new version. - Restart Home Assistant.
- (Optional) Enable debug logs temporarily to validate discovery:
- Check logs for:
Discovery trying topo_graph...andDiscovery found devices: [...].
ℹ️ Additional Information
- This is an RC build: we’ll keep monitoring edge cases and firmware variants before tagging as stable.
💖 Support & Donations
If you find this integration useful and want to support continued development:
🔎 Summary of changes (vs previous RC)
| Area | Change |
|---|---|
| Discovery | Raw topo_graph fetch + HTTP/HTTPS probing + redirect handling |
| Security | Mask sensitive WAN fields (e.g., PPPoE password) in debug logs |
| Stability | Safer task scheduling + clearer debug logs |
| Compatibility | Timeouts no longer trigger “unsupported” warnings/notifications |
| Topology | Fixed auto-main selection so mesh leaf nodes aren’t marked as main |
| WAN Control | Correct WAN allow/block semantics (wan=1 allow, wan=0 block) + more robust MAC filter capability checks |
| UX | Avoid repeated config-flow triggers for already configured routers |
Asistente XiaoHack
Xiaohack V 3.3 | © Copyright 2024 | Users Online: 0 | Estado: Offline
