Skip to content

v2.4.0

Choose a tag to compare

@ilia-ae ilia-ae released this 03 Mar 05:42
· 46 commits to main since this release

Standby-Aware Polling

Problem

When the soundbar was in standby (networkStandby), the integration polled all 20+ parameters — each timing out at 8 seconds. This caused:

  • Response time spikes up to 40,000 ms (visible in History graph)
  • Sensors (Active Input, Sound Mode) flickering as unavailable
  • Excessive network load on a sleeping device

Changes

API: Power-first polling (api.py)

  • Power state is now probed first — if standby, only 1 request instead of 20+
  • Cached values from last active session are preserved
  • Response time in standby drops from ~40s to ~100ms

Coordinator: Adaptive scan interval (coordinator.py)

  • Active: polls every 15s (configurable)
  • Standby: automatically slows to 60s
  • Player data, Dirac filters, eureka_info skipped in standby

Entities: Proper availability handling

  • Sensors (Input, Sound Mode, Response Time, Status) — stay available in standby with cached values
  • Select entities (Night Mode, Dialog, EQ, Dirac) — marked unavailable in standby (can't control sleeping device)
  • Number entities (Bass, Treble, Mid, surround channels, subs) — marked unavailable in standby

Tests

  • 4 new test cases covering standby lightweight poll, empty cache standby, power failure = offline

Documentation

  • Updated all 5 READMEs (en, ru, de, es, pt) with standby polling info
  • Entity count corrected: 18 → 20 (added Active Input + Active Sound Mode sensors)
  • Poll interval documented as 15s (60s in standby)

Full Changelog: v2.3.2...v2.4.0