Skip to content

v2.9.4: Fix Device Type Detection Bug

Choose a tag to compare

@moag1000 moag1000 released this 25 Dec 12:38

Fix - Device Type Overwrite Bug bei Smart Discovery und Zeroconf

Problem: Geräte wurden als "HERMES & STYLE Hood" erkannt und angezeigt, aber die falschen DPs (Data Points) wurden verwendet, z.B. DP 3 statt DP 10 für die Lüftersteuerung.

Ursache: Bei der API-Anreicherung wurde der bereits korrekt erkannte device_type überschrieben:

  1. Lokale Discovery erkennt Gerät per device_id Pattern → hermes_style_hood
  2. API-Enrichment läuft → _detect_device_type gibt default_hood zurück (weil "hermes" nicht im Gerätenamen)
  3. Korrekter device_type wird überschrieben → falsche Entity-Konfiguration

Fixed

Smart Discovery (smart_discovery.py):

  • API-Enrichment überschreibt device_type nur noch wenn:
    • Aktueller Typ ist "auto"
    • ODER aktueller Typ ist nicht in KNOWN_DEVICES
  • Korrekt erkannte Gerätetypen aus device_id Pattern bleiben erhalten

Zeroconf Flow (config_flow.py):

  • Device_id Pattern-Erkennung VOR API-Enrichment hinzugefügt
  • Gleiche Logik: API überschreibt nur wenn aktueller Typ "auto" ist
  • Besseres Logging für Debugging

Ergebnis

  • HERMES & STYLE Hood verwendet jetzt korrekt DP 10 (fan_speed_enum)
  • Alle erkannten Geräte behalten ihre korrekte Entity-Konfiguration
  • Robustere Geräteerkennung auch bei nicht-standardmäßigen Gerätenamen

Hinweis: Bereits konfigurierte Geräte müssen entfernt und neu hinzugefügt werden, um die korrekten DPs zu verwenden.