NEWS
[Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.
-
Siehe auch https://github.com/Pittini/iobroker-nodemihome
Da habe ich auch den Fehler gemeldet, da ich das Problem auch habe.
Leider wurde der Fehler von @Pittini abgelehnt.Leider hilft auch kein neustart vom JS-Adapter.
Da wurde nichts abgelehnt.
Das möchte ich hier klarstellen. Keine Ahnung wie Du darauf kommst.
@Pittini hat es in seinem letzten Beitrag erklärt:„Ja, es scheint dass da etwas an der Login Prozedur geändert wurde. Das ist sehr schade, denn der Entwickler der node-mihome reagiert schon seit Jahren nicht mehr, somit ist das Skript leider tot.“
-
Da wurde nichts abgelehnt.
Das möchte ich hier klarstellen. Keine Ahnung wie Du darauf kommst.
@Pittini hat es in seinem letzten Beitrag erklärt:„Ja, es scheint dass da etwas an der Login Prozedur geändert wurde. Das ist sehr schade, denn der Entwickler der node-mihome reagiert schon seit Jahren nicht mehr, somit ist das Skript leider tot.“
@haselchen ganz entspannt. Es wurde nur darauf hingewiesen, dass ich den JS neustarten soll und dann sei das Problem behoeben. Das hatte ich getan und konnte den Fehler so nicht korrigieren.
Nach eigener Recherche am HA-Adapter konnte ich zeigen, dass die Anmeldung auf OAuth umgestellt wurde. Im Repo von Pittini hatte ich das aufgezeigt. https://github.com/Pittini/iobroker-nodemihome/issues/77
Und auch dort schrieb ich, dass es toll wäre, wenn sich man finden würde, der die Anmeldung umstellen würde. Da ich hierbei nicht helfen kann, wäre die Idee vom node-mihome Paket wegzugehen und es, wie HA selbst zu implementieren.
Leider fehlen mir dazu aber die Kenntnisse.
-
@haselchen ganz entspannt. Es wurde nur darauf hingewiesen, dass ich den JS neustarten soll und dann sei das Problem behoeben. Das hatte ich getan und konnte den Fehler so nicht korrigieren.
Nach eigener Recherche am HA-Adapter konnte ich zeigen, dass die Anmeldung auf OAuth umgestellt wurde. Im Repo von Pittini hatte ich das aufgezeigt. https://github.com/Pittini/iobroker-nodemihome/issues/77
Und auch dort schrieb ich, dass es toll wäre, wenn sich man finden würde, der die Anmeldung umstellen würde. Da ich hierbei nicht helfen kann, wäre die Idee vom node-mihome Paket wegzugehen und es, wie HA selbst zu implementieren.
Leider fehlen mir dazu aber die Kenntnisse.
Ich bin (bei dem Wetter) sehr entspannt ☺️
Nur die Wortwahl „abgelehnt“ hatte einen negativen Touch.
Habs , wie gesagt , jetzt über HA geregelt und bring mir den DP in Iobroker. -
Ich bin (bei dem Wetter) sehr entspannt ☺️
Nur die Wortwahl „abgelehnt“ hatte einen negativen Touch.
Habs , wie gesagt , jetzt über HA geregelt und bring mir den DP in Iobroker.@haselchen alles gut, so war das sicher nicht gemeint.
Gibt es Entwickler, denen man das Thema Mihome vorschlagen kann?
Denn scheinbar sind ja alle MiHome-Adapter ohne Funktion.Siehe auch dem Mihome-Vacuum, der auch das gleiche Problem hat.
Ich möchte dafür ungern ein HA aufsetzen, was gefühlt viel zu groß ist
und eigentlich eher eine Lösung für die Mihome-Geräte gefunden werden könnte. -
@haselchen alles gut, so war das sicher nicht gemeint.
Gibt es Entwickler, denen man das Thema Mihome vorschlagen kann?
Denn scheinbar sind ja alle MiHome-Adapter ohne Funktion.Siehe auch dem Mihome-Vacuum, der auch das gleiche Problem hat.
Ich möchte dafür ungern ein HA aufsetzen, was gefühlt viel zu groß ist
und eigentlich eher eine Lösung für die Mihome-Geräte gefunden werden könnte.Sehr,sehr gute Frage.
Man kann nur versuchen ein paar Entwickler/Tester (die mit dem Thema MI-Home schon zu tun hatten) hier zu pinnen, ob die weiter wissen. -
@haselchen für den mihome-vacuum muss ich mir das anschauen, aber das ist nichts,was mal eben in ener halben stunde erledigt ist. Wen das dann mal implementiert ist,könnte man darüber nachdenken, die kommunikation in einer lib zu kapselni(ist es teilweise schon) und diese lib zu sharen
-
@haselchen für den mihome-vacuum muss ich mir das anschauen, aber das ist nichts,was mal eben in ener halben stunde erledigt ist. Wen das dann mal implementiert ist,könnte man darüber nachdenken, die kommunikation in einer lib zu kapselni(ist es teilweise schon) und diese lib zu sharen
Ist ja nicht für mich 😉
Bei mir funktioniert alles , zwar über HA, aber es geht .
Dem Fragesteller @Siggi0904 geht es vielmehr um die Aktualisierung des Skriptes.
Ich hab euch angepinnt, weil ihr mit Xiaomi bzw. Mihome zu tun habt. -
Ist ja nicht für mich 😉
Bei mir funktioniert alles , zwar über HA, aber es geht .
Dem Fragesteller @Siggi0904 geht es vielmehr um die Aktualisierung des Skriptes.
Ich hab euch angepinnt, weil ihr mit Xiaomi bzw. Mihome zu tun habt.@haselchen @dirkhe ja, generell geht es um eine Bibliothek die die jeweiligen Adapter oder Scripte nutzen können. Denn die Verbindung über HA ist ja nur ein Umweg.
Ganz verrückt wäre ja, wenn alle MiHome-Geräte (Staubsauger, Ventilator, Sensoren etc.) in einem Adapter verwaltet werden könnten. Dann könnte man auch die Arbeiten zusammenführen und alle Entwickler können zusammenarbeiten.
Ist denn der Code des node-mihome Moduls für den JS-Adpater frei zugänglich und könnte geforked werden?
Danke.
-
Ich habe das im mihome-vacuum adapter überarbeitet. Es funktioniert jetzt erst mal wieder. Vlt könnt ihr das script direkt bei euch mit einbinden
https://github.com/iobroker-community-adapters/ioBroker.mihome-vacuum/blob/master/lib/XiaomiCloudConnector.js -
Ich habe das im mihome-vacuum adapter überarbeitet. Es funktioniert jetzt erst mal wieder. Vlt könnt ihr das script direkt bei euch mit einbinden
https://github.com/iobroker-community-adapters/ioBroker.mihome-vacuum/blob/master/lib/XiaomiCloudConnector.js -
@beowolf Die überarbeitung hatte nur kurz funktioniert, das scheint nicht mehr zu gehen.
Als ich das oben geschrieben habe, funktionierte es noch und ich dachte, ihr könntest das in das für den allgemeinen mihome adapter einbinden. Aber hat sich ja eredigt -
Hallo Zusammen,
ich habe mal mit Hilfe der KI das Script von Pittini so umgebaut das es Lokal lauffähig ist.
Genutzt wird jetzt IP und Token. Aktuell bin ich noch am testen. Musste auch das ein oder andere Gerät in der Xiaomi App nochmal koppeln. Aber scheint sich inzwischen gefangen zu haben. Wollte glaub zuerst zu schnell übers Ziel hinaus. Weniger ist manchmal eben doch mehr.
Aber vielleicht will ja jemand auch nur mit einzelnen Geräten testen.
Token hab ich aus meiner angepassten MIHome App geht aber auch mit etwas mühe über den Extractor.
Freu mich immer über ein Feedback.
-
Hallo Zusammen,
ich habe mal mit Hilfe der KI das Script von Pittini so umgebaut das es Lokal lauffähig ist.
Genutzt wird jetzt IP und Token. Aktuell bin ich noch am testen. Musste auch das ein oder andere Gerät in der Xiaomi App nochmal koppeln. Aber scheint sich inzwischen gefangen zu haben. Wollte glaub zuerst zu schnell übers Ziel hinaus. Weniger ist manchmal eben doch mehr.
Aber vielleicht will ja jemand auch nur mit einzelnen Geräten testen.
Token hab ich aus meiner angepassten MIHome App geht aber auch mit etwas mühe über den Extractor.
Freu mich immer über ein Feedback.
Moin,
erstmal cool , dass sich jemand gefunden hat, der sich dem Thema annimmt!!Jetzt kommt der Fallstrick.
Der Token.
Ich habs mit allen Mitteln versucht.
Keine Chance.
Man muss dazu sagen, ein älteres Android Handy/Tablet wird benötigt.
Mein 3 Jahre altes Tablet hat die alte Mihome App nicht geöffnet.
Die anderen Anleitungen Linux/Docker endeten in Fehlermeldungen trotz aktuellem OS.Also für den Otto-Normal-User ist das schon ne Nuss, die es zu knacken gilt :nerd_face:
Trotzdem Danke, dass Du da (hoffentlich) am Ball bleibst.Edit:
Hat mir keine Ruhe gelassen.
Jetzt habe ich mit dem Windows Tool alle Xiaomi Daten.
Allerdings legt das Skript einen Ordner an, mit genau nur den Daten.
Name, Token....
Keine Geräte Daten.
Dazu noch ne Warnung.
javascript.0 2025-11-13 09:47:23.685 info State value to set for "javascript.0.MiHomeAll.357158741.info.rssi" has to be type "number" but received type "object" javascript.0 2025-11-13 09:47:23.622 warn Read-only state "javascript.0.MiHomeAll.357158741.info.rssi" has been written without ack-flag with value "null" javascript.0 2025-11-13 09:47:23.487 info script.js.MiHome: registered 1 subscription, 0 schedules, 0 messages, 0 logs and 0 file subscriptions javascript.0 2025-11-13 09:47:23.486 info script.js.MiHome: Preparing device Mi Luftreiniger Pro Schlafzimmer javascript.0 2025-11-13 09:47:23.486 info script.js.MiHome: Found 1 local devices. -
Ich bin auch stark daran interessiert, dass ich meine drei Xiaomi-Geräte auch wieder auslesen und steuern könnte.
Vielleicht bekommt es @tobasium ja, hin die gemeldeten Themen anzugehen.
@haselchen könntest du vielleicht mal beschreiben, wie das mit dem Windows-Tool funktioniert?
Danke im Voraus.
-
hab mich mal auch auf die schnelle daran versucht, Datenpunkte werden angelegt, sollte funktionieren, hab hier nur mal meinen 3H eingetragen
Edit:
hab das Script jetzt nochmal angepasst, vom einfachen miIO-Protocol wieder auf die Original MIoT-Struktur
Steuerung funktioniert wieder, Sensordaten werden allerdings nicht ausgelesen -
hab mich mal auch auf die schnelle daran versucht, Datenpunkte werden angelegt, sollte funktionieren, hab hier nur mal meinen 3H eingetragen
Edit:
hab das Script jetzt nochmal angepasst, vom einfachen miIO-Protocol wieder auf die Original MIoT-Struktur
Steuerung funktioniert wieder, Sensordaten werden allerdings nicht ausgelesen -
@haselchen was meinst du mit nur dem Datenpunkt.
Habe das ursprüngliche Script hergekommen und so wie @tobasium mittels perplexity ein neues erstellen lassenProbleme waren
-
Xiaomi hat ihre APIs mehrfach geändert
-
Authentifizierungsmethoden sind nicht mehr aktuell
-
2FA könnte blockierend sein
Problem Lösung Session ungültig ✅await mihome.miCloudProtocol.logout()vor Login Fehler wird ignoriert ✅ Proper Exception Handling mitloginSuccessFlag Keine Fehlerbehandlung ✅ Aussagekräftige Error-Messages Script läuft weiter ✅returnnach Login-Fehler Was der neue Code macht:
✅ Zeigt genau, wo der Login fehlschlägt✅ Gibt die Credentials an (für Debugging)
✅ Zeigt ob node-mihome korrekt geladen ist
✅ Listet eine Fehlerbeseitungs-Checkliste auf
✅ Gibt komplette Error-Details aus
⚠️ Wichtig - Häufige Fehler:
❌ Token zu kurz/lang → Muss exakt 32 Zeichen sein
❌ IP falsch → Muss die lokale IP sein (z.B. 192.168.x.x), nicht die Cloud-ID
❌ Model falsch → Aus Extractor kopieren, exakt!
❌ Gerät offline → Device muss erreichbar sein -
-
@haselchen was meinst du mit nur dem Datenpunkt.
Habe das ursprüngliche Script hergekommen und so wie @tobasium mittels perplexity ein neues erstellen lassenProbleme waren
-
Xiaomi hat ihre APIs mehrfach geändert
-
Authentifizierungsmethoden sind nicht mehr aktuell
-
2FA könnte blockierend sein
Problem Lösung Session ungültig ✅await mihome.miCloudProtocol.logout()vor Login Fehler wird ignoriert ✅ Proper Exception Handling mitloginSuccessFlag Keine Fehlerbehandlung ✅ Aussagekräftige Error-Messages Script läuft weiter ✅returnnach Login-Fehler Was der neue Code macht:
✅ Zeigt genau, wo der Login fehlschlägt✅ Gibt die Credentials an (für Debugging)
✅ Zeigt ob node-mihome korrekt geladen ist
✅ Listet eine Fehlerbeseitungs-Checkliste auf
✅ Gibt komplette Error-Details aus
⚠️ Wichtig - Häufige Fehler:
❌ Token zu kurz/lang → Muss exakt 32 Zeichen sein
❌ IP falsch → Muss die lokale IP sein (z.B. 192.168.x.x), nicht die Cloud-ID
❌ Model falsch → Aus Extractor kopieren, exakt!
❌ Gerät offline → Device muss erreichbar sein -