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_iot sensor.
  • 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

  1. Replace your custom_components/miwifi/ folder with the contents of this release.
  2. Restart Home Assistant.
  3. 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_iot sensor.
  • 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

  1. Replace your custom_components/miwifi/ folder with the contents of this release.
  2. 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_netmode fails, the integration falls back to netmode().
  • Some firmwares return the field as netmode (and omit mode), which can break downstream logic expecting mode.
  • We now normalize the fallback payload: if netmode exists and mode is 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

  1. Replace your custom_components/miwifi/ folder with the contents of this release.
  2. 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 NoneType errors 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/upspeed are now parsed safely and default to 0.0 if 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 though set_mac_filter (write endpoint) works.
  • The Block/Unblock service no longer relies on macfilter_info availability to decide support, preventing false “does not support” errors.
  • After applying a block/unblock, the integration updates the cached MAC filter map so internet_blocked state 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/devicelist using authority.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

  1. Download / pull the latest MiWiFi XiaoHack Edition pre-release v3.5.7rc3.
  2. Replace your custom_components/miwifi/ folder with the new version.
  3. Restart Home Assistant.
  4. (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_info is 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_info
  • xqdtcustom/cpe_detect
  • Any logs showing timeouts / restricted endpoints
  • Any logs related to macfilter_info timeouts during blocking/unblocking

💖 Support & Donations

If you find this integration useful and want to support continued development:


🔎 Summary of changes (Lasted Release)

AreaChange
CB0401V2Added dedicated CPE profile + provider-firmware safe handling
Mobile APIAdded get_mobile_net_info + normalized GB metrics
SIM DiagnosticsAdded cpe_detect (SIM status + retries)
SMSAdded get_msgbox_count support + sms_count flattening
WANMobile IPv4 fallback when classic WAN is restricted
StabilitySafe parsing for None and empty-string numeric metrics
EndpointsSkipped restricted endpoints on CB0401V2 (LED/ROM/mode)
ServicesBlock/Unblock no longer depends on macfilter_info availability; cache updated after apply
SensorsAdded CB0401V2-only mobile/SIM/SMS diagnostic sensors
WAN AccessPersist 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_graph fetch 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.com resolves outside the LAN (e.g., www.miwifi.com returning 404).
  • 🌐 Improved protocol resilience (HTTP/HTTPS)
  • Discovery probes both http:// and https:// for topo_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 as is_main.
  • Auto-main detection now prioritizes the root topology node (presence of leafs/nodes) and show=1 signals, 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 allowed
  • wan=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_info may 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 bare asyncio.create_task, improving integration safety during startup.
  • 🧹 Cleaner auto-main reasoning output
  • auto_reason now 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.com responds with redirects or resolves outside LAN.
  • ✅ Mesh auto-main logic validated:
  • Only the root/main router is flagged as is_main automatically.
  • Leaf mesh nodes remain non-main unless manually selected.

📘 How to Update

  1. Download / pull the latest MiWiFi XiaoHack Edition pre-release v3.5.6rc1.
  2. Replace your custom_components/miwifi/ folder with the new version.
  3. Restart Home Assistant.
  4. (Optional) Enable debug logs temporarily to validate discovery:
  • Check logs for: Discovery trying topo_graph... and Discovery 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)

AreaChange
DiscoveryRaw topo_graph fetch + HTTP/HTTPS probing + redirect handling
SecurityMask sensitive WAN fields (e.g., PPPoE password) in debug logs
StabilitySafer task scheduling + clearer debug logs
CompatibilityTimeouts no longer trigger “unsupported” warnings/notifications
TopologyFixed auto-main selection so mesh leaf nodes aren’t marked as main
WAN ControlCorrect WAN allow/block semantics (wan=1 allow, wan=0 block) + more robust MAC filter capability checks
UXAvoid repeated config-flow triggers for already configured routers
Xiaohack Chatbot Asistente XiaoHack

Xiaohack V 3.3 | © Copyright 2024 | Users Online: 0 | Estado: Offline