Problembeschreibung
Nach dem Upgrade auf HA OS 16.2 startet das "Bluetti to MQTT"-Add-on zwar, verbindet sich auch per Bluetooth mit meiner AC200M (Adresse 04:7F:0E:A4:0D:BC), aber stürzt unmittelbar ab mit folgender Fehlermeldung:
2025-09-09 09:24:05 INFO Connected to device: 04:7F:0E:A4:0D:BC
2025-09-09 09:24:05 INFO Device 04:7F:0E:A4:0D:BC has name: AC200M2022002008344
2025-09-09 09:24:05 ERROR Crashing with uncaught exception:
…
if match[1] == ‘AC200M’:
TypeError: ‘NoneType’ object is not subscriptable
Fehleranalyse
Das Regex-Mapping im Code (z. B. DEVICE_NAME_RE = re.compile(r'^(AC180|AC200M|...)(\d+)$')) stimmt nicht mit meinem Gerätenamen überein (AC200M2022002008344).
Deshalb ist match None, und das Skript kollabiert beim Zugriff auf match[1].
Vorschlag zur Behebung
Bitte das Regex anpassen, damit neue Namensformate erkannt werden. Z. B.:
- DEVICE_NAME_RE = re.compile(r'^(AC180|AC200M|AC300|...)(\d+)$')
+ DEVICE_NAME_RE = re.compile(r'^(AC180|AC200M|AC200M2022|AC300|...)(\d+)$')
Of:
- DEVICE_NAME_RE = re.compile(r'^(AC180|AC200M|AC300|...)(\d+)$')
+ DEVICE_NAME_RE = re.compile(r'^(AC180|AC200M\d+|AC300|...)(\d+)$')
Gerätedetails
• Gerätetyp: Bluetti AC200M
• Bluetooth-Adresse: 04:7F:0E:A4:0D:BC
• Anzeigename: AC200M2022002008344
• Add-on-Version: 1.4.1
• HA OS: 16.2 (aarch64 / green)
• HA Core: 2025.8.3
• Supervisor: 2025.09.0
Vielen Dank für eure Unterstützung!
Problembeschreibung
Nach dem Upgrade auf HA OS 16.2 startet das "Bluetti to MQTT"-Add-on zwar, verbindet sich auch per Bluetooth mit meiner AC200M (Adresse 04:7F:0E:A4:0D:BC), aber stürzt unmittelbar ab mit folgender Fehlermeldung:
2025-09-09 09:24:05 INFO Connected to device: 04:7F:0E:A4:0D:BC
2025-09-09 09:24:05 INFO Device 04:7F:0E:A4:0D:BC has name: AC200M2022002008344
2025-09-09 09:24:05 ERROR Crashing with uncaught exception:
…
if match[1] == ‘AC200M’:
TypeError: ‘NoneType’ object is not subscriptable
Fehleranalyse
Das Regex-Mapping im Code (z. B.
DEVICE_NAME_RE = re.compile(r'^(AC180|AC200M|...)(\d+)$')) stimmt nicht mit meinem Gerätenamen überein (AC200M2022002008344).Deshalb ist
matchNone, und das Skript kollabiert beim Zugriff aufmatch[1].Vorschlag zur Behebung
Bitte das Regex anpassen, damit neue Namensformate erkannt werden. Z. B.: