Version History - MiWiFi XiaoHack Edition


📡 Automatic releases from GitHub

The latest versions are synchronized automatically from GitHub.

Showing 11–15 of 57 releases

📦 v3.4.9 – XiaoHack Edition

Date: 2026-01-01 18:24:30
View original release on GitHub

📝 Changelog — MiWiFi Integration

📦 Version v3.4.9 – 2026-01-01


✅ Fixes & Stability

  • 🧩 Unsupported registry migrated to Home Assistant Storage

Replaced the legacy unsupported_user.py workflow with __HTML_PLACEHOLDER_1__ (Store-based persistence). This prevents write-permission issues inside custom_components and makes the behavior consistent across HA installs.

  • 🔁 No more repeated “unsupported” suggestions after restart

Compatibility checks now treat predefined unsupported features as N/A (None) instead of failures, so diagnostics will not re-trigger the same warning on every reboot.

  • 🛡️ Guest Wi-Fi compatibility noise removed

The previous Guest Wi-Fi compatibility probe could report false negatives due to mismatched client methods/endpoints. The check was removed/neutralized to avoid incorrect “unsupported” recommendations.


⚙️ Improvements

  • “Add to unsupported” is now functional from diagnostics

The diagnostics action now uses a dedicated endpoint (/api/miwifi/add_unsupported) that performs an authenticated service call to miwifi.add_unsupported.

  • 🧠 Automatic merge of base + user unsupported models

The integration now merges:

  • Base UNSUPPORTED registry (shipped with the integration)
  • User-defined entries stored in .storage/miwifi/unsupported_user.json
  • 🧼 Improved UX for the diagnostics action

The confirmation page auto-returns to Home Assistant after the service call, so users don’t need to manually close extra pages.


✅ Compatibility

  • ✅ Compatible with Home Assistant 2025.5.0+
  • ✅ No breaking changes to existing configurations

(Legacy unsupported_user.py remains supported via migration/merge logic if present.)


📘 How to Update

  1. Replace all files inside custom_components/miwifi/ with the contents of this release.
  2. Restart Home Assistant.
  3. (Optional) If you previously used unsupported_user.py, confirm that new entries are now stored in:

.storage/miwifi/unsupported_user.json

  1. If diagnostics suggest adding a feature to unsupported, click the action link and verify the model appears in the Storage JSON.

ℹ️ Información adicional

  • The supported “Add unsupported” workflow is now Storage-first (recommended for all users).
  • If you see entries like "new" in the Storage file, ensure the feature key matches the CompatibilityChecker feature name (e.g., wifi_config, mac_filter, etc.), otherwise it will be stored but not applied.

💖 Support & Donations

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


📌 Summary of changes (v3.4.8 → v3.4.9)

AreaChangeResult
Storageunsupported_user.py.storage/miwifi/unsupported_user.jsonReliable persistence
DiagnosticsWorking “Add unsupported” actionNo more 401 / dead buttons
CompatibilityUnsupported = N/A (None), not failureNo repeated warnings on restart
UXAuto-return after actionNo manual tab management

📦 v3.4.8 – XiaoHack Edition

Date: 2025-12-28 11:14:42
View original release on GitHub

📝 Changelog — MiWiFi XiaoHack Edition (Home Assistant Integration)

📦 Version v3.4.7 — 2025-12-28


✅ Fixes & Stability

  • 🐞 Fixed wrong mode detection in CompatibilityChecker: routers reporting numeric modes (e.g. mode=2) no longer fall back incorrectly to DEFAULT.
  • 🧩 Proper “SKIP” behavior for non-applicable checks: returning None from compatibility checks (e.g. AP / Repeater / Mesh) is now treated as *intentional skip* instead of triggering retries and false “unsupported” warnings.
  • 🛡️ Reduced false positives in logs such as:
  • Feature 'device_list' failed after 5 attempts...
  • Feature 'topo_graph' failed after 5 attempts...

when the router is running in Access Point / Repeater / Mesh modes where those endpoints can be unreliable or not applicable.


⚙️ Improvements

  • 🧠 Unified mode parsing using the existing Mode(IntEnum) as the single source of truth:
  • Numeric parsing first (Mode(int(...)))
  • Phrase/alias fallback ("ap", "router", etc.)
  • 🔍 More consistent debug output for Compatibility mode parsing and feature evaluation.

✅ Compatibility

  • ✅ Improved compatibility for RA82 and similar models reporting mode=2 (Access Point), avoiding incorrect mode classification and noisy “unsupported” suggestions.
  • ✅ Compatibility checks now behave correctly across:
  • DEFAULT (0) router mode
  • REPEATER (1)
  • ACCESS_POINT (2)
  • MESH_NODE (3)
  • MESH_LEAF (8)
  • MESH (9)

📘 How to Update

  1. Download v3.4.8 from the GitHub Releases page.
  2. Replace the integration folder:
  • custom_components/miwifi/
  1. Restart Home Assistant.
  2. (Optional) Clear browser cache if you are also using the MiWiFi Panel.

ℹ️ Additional Information

  • This release focuses on CompatibilityChecker reliability and does not change router control logic.
  • No breaking changes expected.

💖 Support & Donations

If this project is useful to you and you want to support future development:

  • ⭐ Star the repository on GitHub.
  • 🐛 Report issues and share logs/topology captures to improve compatibility with more routers.
  • 💬 Share screenshots and feedback from your setup so we can keep polishing the experience.
  • 💸 Wise
  • 💸 PayPal

Every bit of feedback helps to keep MiWiFi XiaoHack Edition healthy and evolving. 🙌


📊 Summary of changes

AreaChangeImpact
CompatibilityMode parsing via Mode(IntEnum)Correct AP/Repetidor/Mesh detection
Compatibility_safe_call() treats None as SKIPNo more false “failed after 5 attempts”
LogsReduced unsupported warnings on AP/repeaterCleaner setup and diagnostics
DevicesBetter behavior on RA82 mode=2Prevents incorrect DEFAULT fallback

📦 v3.4.7 – XiaoHack Edition

Date: 2025-12-19 16:19:56
View original release on GitHub

📝 Changelog — MiWiFi Integration

📦 Version v3.4.7 — 2025-12-19

🆕 Compatibility Model

  • ✅ Added support for new router model RC02 #194

📘 How to Update

  1. HACS: Open HACS → *Integrations* → MiWiFi → Update → Restart Home Assistant.
  2. Manual: Replace the folder custom_components/miwifi/ with the new release → Restart Home Assistant.
  3. After restarting, verify:
  • NAT rules list correctly under your main router.
  • Adding/removing rules works as expected.
  • (Optional) Check logs for the selected NAT path (default or fallback).

ℹ️ Additional Information

  • If you previously patched endpoints per model, the new centralized map will take precedence.
  • For diagnostics, enable debug logging for custom_components.miwifi and look for messages about autodiscovered NAT paths.

💖 Support & Donations

If this project is useful to you and you want to support future development:

  • ⭐ Star the repository on GitHub.
  • 🐛 Report issues and share logs/topology captures to improve compatibility with more routers.
  • 💬 Share screenshots and feedback from your setup so we can keep polishing the experience.
  • 💸 Wise
  • 💸 PayPal

Every bit of feedback helps to keep MiWiFi XiaoHack Edition healthy and evolving. 🙌


📦 v3.4.6 – XiaoHack Edition

Date: 2025-12-06 10:17:22
View original release on GitHub

📝 Changelog — MiWiFi Integration

📦 Version v3.4.6 — 2025-12-06

🆕 Compatibility Model

  • ✅ Added support for new router model R4ACv2 #183

✅ Fixes & Stability

-

⚙️ Improvements

-

🧩 Compatibility

-

📘 How to Update

  1. HACS: Open HACS → *Integrations* → MiWiFi → Update → Restart Home Assistant.
  2. Manual: Replace the folder custom_components/miwifi/ with the new release → Restart Home Assistant.
  3. After restarting, verify:
  • NAT rules list correctly under your main router.
  • Adding/removing rules works as expected.
  • (Optional) Check logs for the selected NAT path (default or fallback).

ℹ️ Additional Information

  • If you previously patched endpoints per model, the new centralized map will take precedence.
  • For diagnostics, enable debug logging for custom_components.miwifi and look for messages about autodiscovered NAT paths.

💖 Support & Donations

If this project is useful to you and you want to support future development:

  • ⭐ Star the repository on GitHub.
  • 🐛 Report issues and share logs/topology captures to improve compatibility with more routers.
  • 💬 Share screenshots and feedback from your setup so we can keep polishing the experience.
  • 💸 Wise
  • 💸 PayPal

Every bit of feedback helps to keep MiWiFi XiaoHack Edition healthy and evolving. 🙌


📦 v3.4.5 – XiaoHack Edition

Date: 2025-11-27 19:32:14
View original release on GitHub

📝 Changelog — MiWiFi Integration 📦 Version v3.4.5 – 2025-11-27


✅ Fixes & Stability

  • Improved internal handling of router traffic counters:
  • If the router does not expose the misystem traffic endpoint (or returns unexpected data), the integration now fails gracefully without breaking device updates.
  • Extra safety checks when parsing download / upload values per device to avoid type/parse errors on some firmwares.
  • Small internal refactors in the updater flow so that Wi-Fi and LAN devices always keep their attributes updated even if traffic totals are not available.
  • Auto-purge reliability improvements:
  • The purge_inactive_devices service now correctly handles device_trackers without MAC or last_activity (for example, old _2 entries stuck as unavailable) when include_orphans_without_age is enabled, so they can be removed cleanly from the entity/device registry.
  • The global auto-purge scheduler has been aligned with the new service schema and now calls it with consistent parameters (only_randomized: false, include_orphans: true, include_orphans_without_age: true), ensuring that inactive, duplicated and orphaned trackers older than N days are actually purged.

⚙️ Improvements

Per-device total usage (download + upload)

  • New attribute: total_usage for each tracked device, now backed by router counters:
  • The integration reads the global misystem information (dev list) and, for each MAC, sums:
  • download + uploadtotal bytes used by that device.
  • These totals are applied to all known devices (Wi-Fi and LAN) whenever the updater refreshes.
  • The device tracker attribute total_usage now uses a more readable format:
  • If usage is below 1 GB, it is shown in MB (with 2 decimals), e.g. 257.34 MB.
  • If usage is 1 GB or higher, it is shown in GB (with 2 decimals), e.g. 3.50 GB.
  • Behaviour is fully automatic:
  • If the router exposes the misystem endpoint with per-device counters, the attribute is populated.
  • If not, the attribute falls back to 0 MB without errors.

✅ Compatibility

  • No breaking changes for existing installations:
  • Routers without a compatible misystem endpoint will simply not expose per-device totals (attribute stays at 0 MB).
  • Routers that already expose download / upload counters (like RA70/RA81 class) will automatically benefit from the new total_usage attribute.
  • The new logic works with both:
  • Main routers and
  • Mesh/LAN devices connected to them, as long as the router reports their MAC and traffic in misystem.
  • The improved purge logic affects only MiWiFi entities/devices and is safe for mixed setups:
  • It will only delete MiWiFi device_trackers and their associated devices that match the inactivity rules and are not shared with other config entries.

📘 How to Update

  1. From HACS (recommended):
  • Open HACS → Integrations.
  • Locate MiWiFi XiaoHack Edition.
  • Click “Update” (if available) and restart Home Assistant.
  1. Manual update:
  • Download the custom_components/miwifi folder for version v3.4.4 from the repository.
  • Replace your existing custom_components/miwifi folder.
  • Restart Home Assistant.
  1. After restart:
  • Check Settings → Devices & Services → MiWiFi to ensure the integration is loaded without errors.
  • Open any MiWiFi device tracker and verify the new total_usage attribute (it may take one refresh cycle to appear).
  • Optionally run the __HTML_PLACEHOLDER_0__ service (with apply: false) to see what would be removed, and then with apply: true to actually clean up old trackers.

ℹ️ Información adicional

  • The total_usage value is calculated from router-side counters:
  • It represents total traffic since the router’s counters started (usually since last reboot or reset), not per day/hour.
  • Values may reset if:
  • The router reboots, or
  • The firmware resets those counters internally.
  • Display unit details:
  • The Home Assistant attribute is already formatted as string (XXX.XX MB / XXX.XX GB) for human readability.
  • If you want to build sensors/graphs in pure MB/GB, you can:
  • Create a Template Sensor that parses the numeric part and unit, or
  • Read the raw attribute from custom_components in a custom integration/automation.
  • Auto-purge notes:
  • The global scheduler stores in auto_purge.json the last run, next due, parameters and a small history of executions.
  • Inactivity threshold = every_days → this is the value automatically passed as days to purge_inactive_devices.

💖 Support & Donations

If this project is useful to you and you want to support future development:

  • ⭐ Star the repository on GitHub.
  • 🐛 Report issues and share logs/topology captures to improve compatibility with more routers.
  • 💬 Share screenshots and feedback from your setup so we can keep polishing the experience.
  • 💸 Wise
  • 💸 PayPal

Every bit of feedback helps to keep MiWiFi XiaoHack Edition healthy and evolving. 🙌


Summary of changes (v3.4.3 → v3.4.5)

AreaDescription
Device trackingAdded per-device traffic totals (download + upload) using misystem counters where available.
UI / Attributestotal_usage now shown in human-friendly MB/GB with automatic unit selection.
Maintenancepurge_inactive_devices + auto-purge scheduler now effectively remove old/duplicate trackers, including entries without MAC/age.
StabilitySafer handling of routers without misystem support or with incomplete traffic data.
Xiaohack Chatbot Asistente XiaoHack

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