Bewertung: 5 / 5

 

Raus aus der Cloud! Lokale Steuerung von Xiaomi Geräten

Haben Sie gerne auch Ihre Smart-Home-Geräte unter Kontrolle? Ohne Cloud, ohne Internet?
Dann kommt hier eine Demonstration, wie Sie Xiaomi-Geräte ohne Cloud und App fernsteuern und abfragen können.

Voraussetzungen

Als Schnittstelle dient hier das Programm python-milo.
Die Node-Red-Nodes aus node-red-contrib-miio-localdevices werden ebenfalls benötigt.

Beides für sich alleine funktioniert für das folgende Beispiel nicht. Darum auch diese Anleitung.

Beispiel anhand eines Smart Air Purifiers 4 Compact

Das Gerät wird von python-milo nicht direkt unterstützt und eignet sich somit sehr gut als Beispiel für alle anderen Arten von Geräten.

Parameter zur Kommunikation

Dafür wird die Geräte-IP und das Geräte-Token benötigt.
Mit folgendem Befehl schalten Sie das Gerät z. B. ein:

miiocli airpurifiermiot \
--ip 192.168.178.100 \
--token 5bbd2c8a9ae1f4e4cfcea8db20c9a69c \
raw_command \
set_properties '[{"siid":2,"piid":1,"value": True}]'

IP-Adresse

Die IP-Adresse finden Sie nach der Netzwerkanmeldung des Gerätes, z. B. in Ihrem WLAN-Router. Dieser muss so konfiguriert sein, dass das zu steuernde Gerät immer die gleiche IP-Adresse bekommt.

Geräte-Token und Model

Die Tokens und das Model können über Node-Red abgefragt werden:

Thorsten H Willert   Xiaomi Smart Air Purifier 4 Compact 02a

Thorsten H Willert   Xiaomi Smart Air Purifier 4 Compact 02

Das Model wird zur Abfrage der Parameterlisten gebraucht.
Einfach an folgende URL anhängen:
https://home.miot-spec.com/spec/
z. B.:
https://home.miot-spec.com/spec/zhimi.airp.cpa4

Kommando und Eigenschaften

Mit raw_command set_properties wird ein Befehl gesendet. z. B. '[{"siid":2,"piid":1,"value": True}]'

Die nötigen Parameter (Nummern) für SIID und PIID können Sie z. B. für den Smart Air Purifier 4 Compact aus folgender Liste entnehmen: zhimi.airp.cpa4

Thorsten H Willert   Xiaomi Smart Air Purifier 4 Compact 01
Ausschnitt Parameter-Liste
Die booleschen Werte sind Case-sensitiv! D. h. True und False sind richtig.

Beispiel-Flow für Node-Red

Folgt noch …

Air Purfier 4 Compact: Automatik-Betrieb

Die Automatik der Geräte ist weit von dem entfernt (Ausgezeichnet: 0-20 µg/m³), was die WHO an Feinstaubwerten (5 µg/m³) für sinnvoll erachtet.

Für bessere Werte lagern wir die Regelung einfach aus.
D. h. wir nehmen den gemessenen Feinstaubwert und regeln danach mit Node-RED die Geschwindigkeit des Gerätes.

Im einfachsten Fall sieht das folgendermaßen aus:
Der Messwert wird alle 15 min. abgefragt und die Geschwindigkeit entsprechend angepasst.

Thorsten H Willert   Xiaomi Smart Air Purifier 4 Compact Regler 01
Beispiel-Flow für Regler

Der Messwert wird mithilfe der Node Range auf den Stellwert skaliert:

Thorsten H Willert   Xiaomi Smart Air Purifier 4 Compact Regler 02
Einstellungen Range-Node

Dazu muss sich das Gerät im Hand- (Favorite-) Mode befinden.

Mehr zum Thema

Software

Weiterführende Informationen