Tuya “Tem&Hum Sensor mit Sonde” in Home Assistant mit individuellem Quirk einbinden
Einige Tuya Temperatur- und Feuchtigkeitssensoren mit externer Sonde liefern über die offizielle Tuya-Integration in Home Assistant nur die interne Temperatur.
Die externe Sonde funktioniert in der Tuya-App und taucht auf der Tuya IoT-Plattform als ext_temp (DP 101) auf, aber Home Assistant erstellt dafür keine eigene Entität.
Um das zu lösen, haben wir einen Custom-Tuya-Quirk mit der Bibliothek tuya-device-handlers gebaut, die Home Assistant intern zur Normalisierung von Tuya-Geräten verwendet.
Dieser Quirk bringt Home Assistant bei, welche zusätzlichen Datenpunkte das Gerät hat, sodass die externe Temperatur (und optional weitere Sonden-Parameter) als Entitäten verfügbar werden.
Warum dieser Quirk nötig war
Das konkrete Gerät ist ein Tuya „Tem&Hum Sensor with Probe“:
Auf der Tuya IoT-Plattform meldet das Gerät zusätzliche Datenpunkte für die Sonde:
-
ext_temp(DP 101) – Temperatur der externen Sonde -
ext_maxtemp(DP 102) – oberer Alarm-Grenzwert -
ext_mintemp(DP 103) – unterer Alarm-Grenzwert -
ext_temp_sensivitity(DP 104) – Empfindlichkeit für Temperaturänderungen -
ext_temp_alarm(DP 105) – Alarmmodus
In den Home-Assistant-Diagnosen und in der offiziellen Tuya-Integration erscheinen dagegen nur:
-
interne Temperatur (
va_temperature) -
Luftfeuchtigkeit (
va_humidity) -
Batteriestatus (
battery_state)
Die Temperatur der externen Sonde existiert in Home Assistant nicht, was den Sensor für die Überwachung von Kühlschränken, Gefriertruhen oder Tanks deutlich weniger nützlich macht.
Wie der Quirk aufgebaut wurde
Die Tuya-Integration in Home Assistant nutzt die Bibliothek tuya-device-handlers, die sogenannte Quirks definiert – kleine Python-Skripte, die rohe Tuya-Datenpunkte (DPs) in strukturierte Entitäten übersetzen.
Für diesen Sensor haben wir eine Quirk-Datei erstellt, die:
-
Gezielt dieses Produkt per Product ID anspricht
python.applies_to(product_id="m7kacaxrxbxeegfs")Damit gilt der Quirk nur für dieses spezifische Tuya-Produkt und nicht für alle
wsdcg-Geräte. -
Die externe Sonde als Integer-Temperatursensor hinzufügt
python.add_dpid_integer( dpid=101, # ext_temp dpcode="ext_temp", # oder ein anderer Temperatur-DP-Code dpmode=DPMode.READ, unit="℃", min=-200, max=1000, scale=1, step=1, )Bereich und Skalierung entsprechen der internen Temperatur (
va_temperature), sodass ein Rohwert245als24.5 °Cinterpretiert wird. -
Optional die Alarm- und Kalibrierungs-Datenpunkte abbildetWeitere
add_dpid_integer-Aufrufe könnenext_maxtemp,ext_mintemp,ext_temp_sensivitityundext_temp_calibrationabbilden, damit Home Assistant diese Werte lesen und, falls unterstützt, schreiben kann. -
Den Quirk im globalen Registry registriert
python.register(TUYA_QUIRKS_REGISTRY)Dadurch findet die Tuya-Integration den Quirk beim Start von Home Assistant.
Das Ergebnis ist eine kleine Python-Datei, die Home Assistant erklärt, wie DP 101–106 als Temperatur- und Konfigurationsentitäten der Sonde genutzt werden, statt ignoriert zu werden.
Installation des Quirks in Home Assistant (File Editor)
Sie müssen weder Home Assistant noch die Tuya-Integration patchen. Der Quirk wird als Custom-Tuya-Quirk im Verzeichnis /config abgelegt, ähnlich wie benutzerdefinierte ZHA-Quirks.
-
File-Editor-Add-on installieren
-
Ordner für Tuya-Quirks anlegen
-
Quirk-Code einfügen
-
Home Assistant neu starten
-
Ein kompletter Neustart stellt sicher, dass die Tuya-Integration den neuen Quirk lädt.
-
-
Tuya-Gerät neu laden oder neu hinzufügen
-
Einstellungen → Geräte & Dienste → Tuya → Neu laden oder das betreffende Gerät entfernen und erneut hinzufügen.
-
Nutzung der neuen Entität für die externe Temperatur
Nach Neustart und Reload sollte das Gerät eine zusätzliche Temperatur-Entität bereitstellen, z. B.:
-
sensor.tem_hum_sensor_with_probe_external_temperature
oder -
sensor.tem_hum_sensor_with_probe_ext_temp
Diese Entität können Sie:
-
in Dashboards einbinden,
-
in Automatisierungen verwenden (z. B. Alarm, wenn die Gefrierschrank-Temperatur steigt),
-
in Historie und Statistiken auswerten.
Beachten Sie, dass viele batteriebetriebene Tuya-Sensoren Messwerte nur bei größeren Änderungen oder in festen Intervallen senden, sodass Aktualisierungen verzögert auftreten können.




