v2.9.4: Fix Device Type Detection Bug
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:
- Lokale Discovery erkennt Gerät per
device_idPattern →hermes_style_hood - API-Enrichment läuft →
_detect_device_typegibtdefault_hoodzurück (weil "hermes" nicht im Gerätenamen) - Korrekter
device_typewird überschrieben → falsche Entity-Konfiguration
Fixed
Smart Discovery (smart_discovery.py):
- API-Enrichment überschreibt
device_typenur noch wenn:- Aktueller Typ ist
"auto" - ODER aktueller Typ ist nicht in
KNOWN_DEVICES
- Aktueller Typ ist
- 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.