@riddix/hamh 2.0.42 → 2.0.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -37,7 +37,7 @@ of port forwarding etc.
37
37
 
38
38
  | Channel | Branch | Current Version | Description |
39
39
  |---------|--------|-----------------|-------------|
40
- | **Stable** | `main` | v2.0.42 | Production-ready, recommended for most users |
40
+ | **Stable** | `main` | v2.0.43 | Production-ready, recommended for most users |
41
41
  | **Alpha** | `alpha` | v2.1.0-alpha.x | Pre-release with new features, for early adopters |
42
42
  | **Testing** | `testing` | v4.1.0-testing.x | ⚠️ **Highly unstable!** Experimental features, may break |
43
43
 
@@ -52,13 +52,27 @@ of port forwarding etc.
52
52
  ## 🎉 What's New
53
53
 
54
54
  <details>
55
- <summary><strong>📦 Stable Features (v2.0.42)</strong> - Click to expand</summary>
55
+ <summary><strong>📦 Stable Features (v2.0.43)</strong> - Click to expand</summary>
56
56
 
57
- **New in v2.0.42 (hotfix release):**
57
+ **New in v2.0.43:**
58
58
 
59
- - 🇯🇵 Aqara bridge registration no longer stalls root `softwareVersionString` now matches the numeric `softwareVersion` ([#316](https://github.com/RiDDiX/home-assistant-matter-hub/issues/316))
59
+ - 🤖 Vacuum `currentArea` updates when cleaning is started outside HAMH ([#281](https://github.com/RiDDiX/home-assistant-matter-hub/issues/281))
60
+ - 📡 Sensor reactors mark themselves offline when HA disconnects, so updates reach controllers on reconnect ([#327](https://github.com/RiDDiX/home-assistant-matter-hub/issues/327))
61
+ - 🪟 Lift+tilt window coverings pick a valid Matter Type ([#323](https://github.com/RiDDiX/home-assistant-matter-hub/issues/323))
62
+ - 🪟 Cover `device_class=window` maps to Rollershade ([#312](https://github.com/RiDDiX/home-assistant-matter-hub/issues/312))
63
+ - 🧹 UWANT and Xiaomi sweep/mop labels recognised, mop usage routed via `mode.vacuum_mop` ([#322](https://github.com/RiDDiX/home-assistant-matter-hub/issues/322))
64
+ - 🤖 Vacuum identify falls back to a sibling identify button when `vacuum.locate` is unsupported ([#320](https://github.com/RiDDiX/home-assistant-matter-hub/issues/320))
65
+ - ❄️ HA-auto AC `systemMode` stays put when `hvac_action` is idle, ha-auto-only ACs no longer expose Matter Auto ([#309](https://github.com/RiDDiX/home-assistant-matter-hub/issues/309))
66
+ - 🌡️ Climate setpoints snap to the entity `target_temp_step` ([#321](https://github.com/RiDDiX/home-assistant-matter-hub/issues/321))
67
+ - 🛰️ matter.js controller traffic captured in `/api/logs`
68
+ - 🇯🇵 Japanese translation by [@kimera257](https://github.com/kimera257) ([#325](https://github.com/RiDDiX/home-assistant-matter-hub/pull/325))
69
+ - 📝 Docs note for the iPhone-only stuck-on-updating vacuum workaround ([#287](https://github.com/RiDDiX/home-assistant-matter-hub/issues/287))
70
+
71
+ **Previously in v2.0.42 (hotfix release):**
72
+
73
+ - 🇯🇵 Aqara bridge registration no longer stalls, root `softwareVersionString` now matches the numeric `softwareVersion` ([#316](https://github.com/RiDDiX/home-assistant-matter-hub/issues/316))
60
74
  - ❄️ Climate `auto` mode is clamped to `heat`/`cool` on devices without an `AutoMode` base ([#319](https://github.com/RiDDiX/home-assistant-matter-hub/issues/319))
61
- - 🌀 Per-entity `disableClimateFanControl` mapping flag falls back to `ThermostatDevice` when controllers like Aqara don't recognise `RoomAirConditioner` (`0x0072`) ([#318](https://github.com/RiDDiX/home-assistant-matter-hub/issues/318))
75
+ - 🌀 Per-entity `disableClimateFanControl` mapping flag, falls back to `ThermostatDevice` when controllers like Aqara don't recognise `RoomAirConditioner` (`0x0072`) ([#318](https://github.com/RiDDiX/home-assistant-matter-hub/issues/318))
62
76
  - 🗺️ Vacuum service area `selectedAreas` is kept after dispatch instead of being cleared
63
77
 
64
78
  **Previously in v2.0.41:**
@@ -68,13 +82,13 @@ of port forwarding etc.
68
82
  | 🌡️ Google Home AC offline fix | `DeadFrontBehavior` on climate OnOff cluster so RoomAirConditioner stops showing offline on Google Home ([#302](https://github.com/RiDDiX/home-assistant-matter-hub/issues/302)) |
69
83
  | 🪟 Cover device_class mapping | Map HA `garage`/`gate`/`window`/`awning`/etc. to the matching Matter WindowCovering type so voice commands hit the right device type ([#304](https://github.com/RiDDiX/home-assistant-matter-hub/issues/304)) |
70
84
  | 📺 LG TV commissioning patch | Local patch on matter.js 0.16.11 to accept long NOC operational cert serials ([#305](https://github.com/RiDDiX/home-assistant-matter-hub/issues/305)) |
71
- | 💡 Alexa brightness-reset behind flag | Old Alexa brightness-reset heuristic moved behind `alexaPreserveBrightnessOnTurnOn`, default off Apple Home "set room to 100%" works again ([#306](https://github.com/RiDDiX/home-assistant-matter-hub/issues/306)) |
85
+ | 💡 Alexa brightness-reset behind flag | Old Alexa brightness-reset heuristic moved behind `alexaPreserveBrightnessOnTurnOn`, default off, Apple Home "set room to 100%" works again ([#306](https://github.com/RiDDiX/home-assistant-matter-hub/issues/306)) |
72
86
  | 🌀 Google Home fan speed | Uses `fan.set_percentage` so already-on fans pick up speed changes from Google Home ([#308](https://github.com/RiDDiX/home-assistant-matter-hub/issues/308)) |
73
87
  | ❄️ Climate auto mode | Expose Matter Auto mode when HA reports `auto` in `hvac_modes` ([#309](https://github.com/RiDDiX/home-assistant-matter-hub/issues/309)) |
74
88
  | 🆔 Server-mode root identity | Root identity now applies as a single transaction, so controllers don't drop devices mid-swap ([#311](https://github.com/RiDDiX/home-assistant-matter-hub/issues/311)) |
75
- | 🪟 Lift-only blinds | No more `TiltBlindTiltOnly` on covers without tilt fixes Alexa routines for roller blinds ([#312](https://github.com/RiDDiX/home-assistant-matter-hub/issues/312)) |
89
+ | 🪟 Lift-only blinds | No more `TiltBlindTiltOnly` on covers without tilt, fixes Alexa routines for roller blinds ([#312](https://github.com/RiDDiX/home-assistant-matter-hub/issues/312)) |
76
90
  | 🏷️ Per-entity `disableClimateOnOff` | Turn off the OnOff cluster on climate endpoints per entity for controllers that prefer mode-only control |
77
- | 🔢 `serialNumberSuffix` per bridge | Append a suffix to every entity serial useful if controllers like Aqara cache stale device data |
91
+ | 🔢 `serialNumberSuffix` per bridge | Append a suffix to every entity serial, useful if controllers like Aqara cache stale device data |
78
92
  | 📝 `protocolLogLevel` option | Quiet matter.js logs independently from the app log level |
79
93
  | 🖥️ Bridge HW/SW version strings | HA device-registry `hw_version`/`sw_version` now show up in Matter BasicInformation on server-mode endpoints |
80
94
  | 🎨 Extended color light: XY + enhancedColorMode | XY feature added as mandatory, `enhancedColorMode` mirrors `colorMode` |
@@ -87,7 +101,7 @@ of port forwarding etc.
87
101
  **Reliability & resilience:** parallel bridge stop in `stopAll`/`restartAll`, parallel HA registry fetches, serialized bridge start/stop lifecycle, serialized `updateStates` with plugin listener detach, HA reconnect retry on transient network errors, 30s timeout on `sendMessagePromise`, port-conflict reject on web-api start, graceful shutdown on `/api/backup/restart`, `AppEnvironment` disposal on SIGINT, stale optimistic state sweep, pending debouncer clear, healthcheck 401 fix under basic auth, deep-equal entity attribute comparison, overlap guard for auto-refresh, safer mireds conversion, aligned `colorMode` publishing, surfaced bridge import errors, corrected thermostat running state for unknown modes + drying, unified Node version across Dockerfiles, sourcemaps excluded from npm tarball, unused deps dropped (rxjs, strip-color, lodash), unused `config-validator` utility removed.
88
102
 
89
103
  **Previously in v2.0.39 & v2.0.40 (hotfix releases):**
90
- - Fixed crash loop on startup caused by Node 22 native WebSocket dropping connections ([#297](https://github.com/RiDDiX/home-assistant-matter-hub/issues/297), [#299](https://github.com/RiDDiX/home-assistant-matter-hub/issues/299)) affects both aarch64 (RPi) and amd64
104
+ - Fixed crash loop on startup caused by Node 22 native WebSocket dropping connections ([#297](https://github.com/RiDDiX/home-assistant-matter-hub/issues/297), [#299](https://github.com/RiDDiX/home-assistant-matter-hub/issues/299)), affects both aarch64 (RPi) and amd64
91
105
  - Fixed service initialization errors being silently swallowed, causing the process to hang instead of exiting
92
106
  - Registry fetch now waits for WebSocket reconnect between retries and has increased retry tolerance
93
107
  - Fixed `select`, `input_select`, `siren` domains showing as unsupported in filter preview ([#298](https://github.com/RiDDiX/home-assistant-matter-hub/issues/298))
@@ -134,7 +148,7 @@ of port forwarding etc.
134
148
  <details>
135
149
  <summary><strong>🧪 Alpha Features (v2.1.0-alpha.x)</strong> - Click to expand</summary>
136
150
 
137
- **Alpha is currently level with Stable (v2.0.42).** All alpha work through `v2.1.0-alpha.633` has been promoted into v2.0.42. New alpha work continues from `v2.1.0-alpha.634` onward and will appear here as development progresses.
151
+ **Alpha is currently level with Stable (v2.0.43).** All alpha work up to the latest pre-release has been promoted into v2.0.43. New alpha work continues from the next pre-release tag onward and will appear here as development progresses.
138
152
 
139
153
  </details>
140
154
 
@@ -161,7 +175,7 @@ of port forwarding etc.
161
175
  <summary><strong>📜 Previous Stable Versions</strong> - Click to expand</summary>
162
176
 
163
177
  ### v2.0.40
164
- Filter preview domain fix `select`, `input_select`, `siren` now show as supported ([#298](https://github.com/RiDDiX/home-assistant-matter-hub/issues/298))
178
+ Filter preview domain fix, `select`, `input_select`, `siren` now show as supported ([#298](https://github.com/RiDDiX/home-assistant-matter-hub/issues/298))
165
179
 
166
180
  ### v2.0.39
167
181
  Node 22 WebSocket crash loop fix ([#297](https://github.com/RiDDiX/home-assistant-matter-hub/issues/297), [#299](https://github.com/RiDDiX/home-assistant-matter-hub/issues/299)), service init error surfacing, registry retry hardening, support link added
@@ -205,7 +219,7 @@ Vacuum mop intensity, vacuum auto-detection, Roborock room auto-detect, live ent
205
219
  ### v2.0.24
206
220
  Dashboard landing page, composed devices, bridge wizard feature flags, entity autocomplete, light transitions, live diagnostics, vacuum suction level, thermostat auto-resume, vacuum docked state, memory leak fix
207
221
 
208
- ### v2.0.19v2.0.23
222
+ ### v2.0.19-v2.0.23
209
223
  Bridge templates, live filter preview, entity diagnostics, multi-bridge bulk operations, entity health indicators, diagnostic export, EntityLabel/DeviceLabel filters, Power & Energy Measurement, Event domain (GenericSwitch)
210
224
 
211
225
  ### v2.0.17 / v2.0.18
@@ -347,26 +361,26 @@ configuration options, known issues, limitations and guides.
347
361
  ## 🔧 Network Troubleshooting
348
362
 
349
363
  <details>
350
- <summary><strong>⚠️ "No Response" / Connection Drops Common Network Causes</strong> (click to expand)</summary>
364
+ <summary><strong>⚠️ "No Response" / Connection Drops, Common Network Causes</strong> (click to expand)</summary>
351
365
 
352
366
  ### The Problem
353
367
 
354
- Your Matter devices suddenly show **"No Response"** (Apple Home), **"Unavailable"** (Google Home), or become **unresponsive** after some time even though the bridge is still running and other controllers (e.g., Alexa) continue to work fine.
368
+ Your Matter devices suddenly show **"No Response"** (Apple Home), **"Unavailable"** (Google Home), or become **unresponsive** after some time, even though the bridge is still running and other controllers (e.g., Alexa) continue to work fine.
355
369
 
356
370
  ### Root Cause: Network Equipment Blocking mDNS/Multicast
357
371
 
358
- Matter relies heavily on **mDNS (multicast DNS)** for device discovery and reachability. Many routers, access points, and managed switches have features that **filter, throttle, or block multicast traffic** which breaks Matter communication silently.
372
+ Matter relies heavily on **mDNS (multicast DNS)** for device discovery and reachability. Many routers, access points, and managed switches have features that **filter, throttle, or block multicast traffic**, which breaks Matter communication silently.
359
373
 
360
- > **💡 This was confirmed and documented thanks to the excellent systematic testing by [@omerfaruk-aran](https://github.com/omerfaruk-aran) in [#129](https://github.com/RiDDiX/home-assistant-matter-hub/issues/129).** The issue was traced to a TP-Link Archer AX50 (in AP mode) sitting between the Apple TV and the network its default settings were blocking/limiting mDNS/Bonjour traffic over time.
374
+ > **💡 This was confirmed and documented thanks to the excellent systematic testing by [@omerfaruk-aran](https://github.com/omerfaruk-aran) in [#129](https://github.com/RiDDiX/home-assistant-matter-hub/issues/129).** The issue was traced to a TP-Link Archer AX50 (in AP mode) sitting between the Apple TV and the network, its default settings were blocking/limiting mDNS/Bonjour traffic over time.
361
375
 
362
376
  ### What to Check on Your Network Equipment
363
377
 
364
- 1. **IGMP Snooping** Disable or configure it to allow mDNS (`224.0.0.251` / `ff02::fb`)
365
- 2. **Multicast Optimization / Multicast Enhancement** Disable (often called "Airtime Fairness" or "Multicast to Unicast")
366
- 3. **AP Isolation / Client Isolation** Must be **disabled** so devices on the same network can communicate
367
- 4. **mDNS / Bonjour Forwarding** Enable if available (some enterprise APs have this)
368
- 5. **DHCP Server on secondary devices** Disable DHCP on access points / switches that are NOT your main router (multiple DHCP servers cause IP conflicts)
369
- 6. **Firmware Updates** Update your router/AP firmware, as multicast handling is frequently improved
378
+ 1. **IGMP Snooping**, Disable or configure it to allow mDNS (`224.0.0.251` / `ff02::fb`)
379
+ 2. **Multicast Optimization / Multicast Enhancement**, Disable (often called "Airtime Fairness" or "Multicast to Unicast")
380
+ 3. **AP Isolation / Client Isolation**, Must be **disabled** so devices on the same network can communicate
381
+ 4. **mDNS / Bonjour Forwarding**, Enable if available (some enterprise APs have this)
382
+ 5. **DHCP Server on secondary devices**, Disable DHCP on access points / switches that are NOT your main router (multiple DHCP servers cause IP conflicts)
383
+ 6. **Firmware Updates**, Update your router/AP firmware, as multicast handling is frequently improved
370
384
 
371
385
  ### Affected Equipment (Known Cases)
372
386
 
@@ -390,14 +404,14 @@ Matter relies heavily on **mDNS (multicast DNS)** for device discovery and reach
390
404
  ```
391
405
  --mdns-network-interface eth0
392
406
  ```
393
- (or `end0`, `enp0s18`, etc. check your system)
407
+ (or `end0`, `enp0s18`, etc., check your system)
394
408
 
395
409
  ### Network Topology Tips
396
410
 
397
411
  - **Keep the path simple**: Avoid placing access points or managed switches between your Matter bridge (Home Assistant) and your Home Hub (HomePod/Apple TV)
398
412
  - **Use wired connections** where possible for Home Hubs and the Home Assistant host
399
413
  - **Same subnet**: All Matter devices, controllers, and the bridge must be on the same Layer 2 network / subnet
400
- - **IPv6**: Matter requires IPv6 do not disable it. For VLAN setups, configure **ULA addresses** (`fd00::/8`), not just link-local (`fe80::`). See [Troubleshooting](https://home-assistant-matter-hub.riddix.dev/guides/connectivity-issues#ipv6) and [Discussion #39](https://github.com/RiDDiX/home-assistant-matter-hub/discussions/39)
414
+ - **IPv6**: Matter requires IPv6, do not disable it. For VLAN setups, configure **ULA addresses** (`fd00::/8`), not just link-local (`fe80::`). See [Troubleshooting](https://home-assistant-matter-hub.riddix.dev/guides/connectivity-issues#ipv6) and [Discussion #39](https://github.com/RiDDiX/home-assistant-matter-hub/discussions/39)
401
415
 
402
416
  </details>
403
417
 
@@ -405,7 +419,7 @@ Matter relies heavily on **mDNS (multicast DNS)** for device discovery and reach
405
419
 
406
420
  ## Migration from t0bst4r
407
421
 
408
- Migrating from the original `t0bst4r/home-assistant-matter-hub` is straightforward. **Your Matter fabric connections and paired devices will be preserved!**
422
+ Migrating from the original `t0bst4r/home-assistant-matter-hub` is easy. **Your Matter fabric connections and paired devices will be preserved!**
409
423
 
410
424
  ### Home Assistant Add-on
411
425
 
@@ -457,22 +471,29 @@ Your volume mounts stay the same - no data migration needed.
457
471
 
458
472
  This project thrives thanks to the amazing community! Special thanks to everyone who contributes by reporting bugs, suggesting features, and helping others.
459
473
 
474
+ > Note: GitHub doesn't surface contributors on this repo because it's still a fork of the original. The list below is maintained by hand.
475
+
460
476
  ### 🏆 Top Contributors
461
477
 
478
+ Newest first.
479
+
462
480
  | Contributor | Contributions |
463
481
  |-------------|---------------|
464
- | [@codyc1515](https://github.com/codyc1515) | 🥇 **Top Reporter** - Climate/thermostat bugs (#52, #24, #21, #20), extensive testing feedback |
482
+ | [@Yllelder](https://github.com/Yllelder) | 🌐 **Translator** - Spanish translation ([#314](https://github.com/RiDDiX/home-assistant-matter-hub/pull/314)) |
483
+ | [@MStankiewiczOfficial](https://github.com/MStankiewiczOfficial) | 🌐 **Translator** - Polish translation ([#288](https://github.com/RiDDiX/home-assistant-matter-hub/pull/288)) |
484
+ | [@aetasoul](https://github.com/aetasoul) | 🤖 **Code Contributor** - Immediate force sync on startup to beat stale Alexa queues ([#282](https://github.com/RiDDiX/home-assistant-matter-hub/pull/282)) |
485
+ | [@omerfaruk-aran](https://github.com/omerfaruk-aran) | 🌐 Turkish translation ([#260](https://github.com/RiDDiX/home-assistant-matter-hub/pull/260)) + 🔧 Network debugging for "No Response" issues ([#129](https://github.com/RiDDiX/home-assistant-matter-hub/issues/129)) |
486
+ | [@gustavakerstrom](https://github.com/gustavakerstrom) | 🤖 **Code Contributor** - Custom fan speed mapping ([#226](https://github.com/RiDDiX/home-assistant-matter-hub/pull/226)), template description fix ([#215](https://github.com/RiDDiX/home-assistant-matter-hub/pull/215)) |
487
+ | [@AmineDjeghri](https://github.com/AmineDjeghri) | 📝 Migration instructions for the addon data folder ([#171](https://github.com/RiDDiX/home-assistant-matter-hub/pull/171)) |
488
+ | [@markgaze](https://github.com/markgaze) | 🤖 **Code Contributor** - Ecovacs Deebot room support ([#118](https://github.com/RiDDiX/home-assistant-matter-hub/pull/118)) |
489
+ | [@codyc1515](https://github.com/codyc1515) | 🥇 **Top Reporter** - Climate/thermostat bugs (#52, #24, #21, #20), README badge & install steps ([#285](https://github.com/RiDDiX/home-assistant-matter-hub/pull/285)), binary sensor classes ([#66](https://github.com/RiDDiX/home-assistant-matter-hub/pull/66)), fan control init ([#10](https://github.com/RiDDiX/home-assistant-matter-hub/pull/10)) |
490
+ | [@AymericLeFeyer](https://github.com/AymericLeFeyer) | 📝 README YouTube video link |
491
+ | [@depahk](https://github.com/depahk) | 📝 Migration docs ([#32](https://github.com/RiDDiX/home-assistant-matter-hub/pull/32)) |
465
492
  | [@Hatton920](https://github.com/Hatton920) | 🤖 **Vacuum Expert** - Intensive testing of Robot Vacuum Server Mode, Apple Home & Siri validation |
466
- | [@Chrulf](https://github.com/Chrulf) | 🔍 Google Home brightness debugging (#41), detailed logs & testing |
493
+ | [@razzietheman](https://github.com/razzietheman) | 🥈 **Active Tester** - Bridge icons (#101), sorting (#80), feature requests (#31, #30), extensive UI/UX feedback |
467
494
  | [@SH1FT-W](https://github.com/SH1FT-W) | 💎 **Sponsor** + Vacuum room selection feature request (#49) |
468
- | [@depahk](https://github.com/depahk) | 📝 Migration documentation fix ([#32](https://github.com/RiDDiX/home-assistant-matter-hub/pull/32)) |
495
+ | [@Chrulf](https://github.com/Chrulf) | 🔍 Google Home brightness debugging (#41), detailed logs & testing |
469
496
  | [@Fettkeewl](https://github.com/Fettkeewl) | 🐛 Script import bug (#26), Alias feature request (#25) |
470
- | [@razzietheman](https://github.com/razzietheman) | 🥈 **Active Tester** - Bridge icons (#101), sorting (#80), feature requests (#31, #30), extensive UI/UX feedback |
471
- | [@markgaze](https://github.com/markgaze) | 🤖 **Code Contributor** - Ecovacs Deebot room support ([#118](https://github.com/RiDDiX/home-assistant-matter-hub/pull/118)) |
472
- | [@omerfaruk-aran](https://github.com/omerfaruk-aran) | 🔧 **Network Debugging Expert** - Systematic mDNS/multicast root cause analysis for "No Response" issues ([#129](https://github.com/RiDDiX/home-assistant-matter-hub/issues/129)) |
473
- | [@gustavakerstrom](https://github.com/gustavakerstrom) | 🤖 **Code Contributor** - Template description display fix ([#215](https://github.com/RiDDiX/home-assistant-matter-hub/pull/215)) |
474
- | [@aetasoul](https://github.com/aetasoul) | 🤖 **Code Contributor** - Immediate force sync on startup to beat stale Alexa queues ([#282](https://github.com/RiDDiX/home-assistant-matter-hub/pull/282)) |
475
- | [@Yllelder](https://github.com/Yllelder) | 🌐 **Translator** - Spanish translation ([#314](https://github.com/RiDDiX/home-assistant-matter-hub/pull/314)) |
476
497
 
477
498
  <details>
478
499
  <summary><strong>📋 Issue Tracker - All Contributors</strong> (click to expand)</summary>
@@ -516,7 +537,7 @@ Thank you to everyone who helps improve this project by reporting issues!
516
537
 
517
538
  ### 💖 Sponsors
518
539
 
519
- > **Donations are completely voluntary!** This project exists because of passion for open source, not money. Thank you to everyone who has supported it it truly means a lot! ❤️
540
+ > **Donations are completely voluntary!** This project exists because of passion for open source, not money. Thank you to everyone who has supported it, it truly means a lot! ❤️
520
541
 
521
542
  🥇 **First Sponsor:** [@thorsten-gehrig](https://github.com/thorsten-gehrig)
522
543
 
@@ -568,3 +589,4 @@ Your support helps cover hosting costs and motivates continued development. Than
568
589
  </div>
569
590
 
570
591
  ---
592
+