NEWS
[Frage] Xiaomi Vacuum cleaner
-
Die Hoffnung stirbt zuletzt.
@ gst666 kannst du mal schauen ob das der Token für die Nachricht ist….
Token: D14BD369DEAB115E7C4C872E9897C8D2
Nachricht: 213100600000000002f20d8f58b1c57b473a37bf4f99795bb471b4c2d52ec9852449cae7e1029ed72090ab523cb6758655368a399bdf20ec86bef10404ec41df7eb5dc825288b00b79fc4b3b2bb6d1a7183e5165cfe5e88529e00228d2e7302d
-
> @ gst666 kannst du mal schauen ob das der Token für die Nachricht ist….
Leider nein.
Ich denke, ich habe einen Mechanismus gefunden. Wenn das Gerät im reseteten Zustand sich befindet, so scheint es bei der HELO Nachricht den Key preiszugeben. Hast Du es geschafft, dass Skript zu installieren? Dann resete mal das Gerät. Das Gerät hat dann eine WLAN-SSID, die mit zhimi… beginnt. In dieses WLAN einloggen. dann das Skript ausführen:
xpn -info
Dann wird der token vermutlich angezeigt.
Wäre schön zu hören, dass es klappt.
-
Noch einen Zusatz:
Über Bluestack habe ich die Anmeldung auch nicht hinbekommen. Habe daher mit dem Raspi eine Art Emulator gebaut. Den Anmeldevorgang habe ich wahrscheinlich auch dekodiert. Muss noch einen Gegentest mit dem wahren Gerät machen.
-
So, jetzt habe ich den Anmeldevorgang identifiziert:
Sobald der Router resetet ist kann man die WLAN-Daten und die Verknüpfung zum Account herstellen
{"id":29,"method":"miIO.config_router","params":{"country_domain":"sg","ssid":"WLANKENNUNG","uid":123456789,"gmt_offset":3600,"passwd":"geheim"}}'
Dabei muss "WLANKENNUNG" durch die SSID und "geheim" durch das WLAN-Password ersetzt werden.
Des Weiteren muss die richtige uid eingetragen werden. Dies ist die Nummer, die unter Profil in der App gesehen werden kann. Hier bitte aufpassen, da sich sonst jemand über ein neues Gerät "freut".
{"id":36,"method":"miIO.stop_diag_mode","params":""}
Hiermit wird das Gerät neu gestartet. Wenn man sich zu viel Zeit lässt, geht das auch automatisch. Damit meldet sich das Device in der Cloud an und ist mittels der App auch wieder erreichbar.
-
Reicht es das device in der app abzumelden? Oder muss ich das über die Reset Taste machen?
Gesendet von meinem E5823 mit Tapatalk
-
Ist beides dasselbe.
-
So, jetzt habe ich den Anmeldevorgang identifiziert:
Sobald der Router resetet ist kann man die WLAN-Daten und die Verknüpfung zum Account herstellen
{"id":29,"method":"miIO.config_router","params":{"country_domain":"sg","ssid":"WLANKENNUNG","uid":123456789,"gmt_offset":3600,"passwd":"geheim"}}'
Dabei muss "WLANKENNUNG" durch die SSID und "geheim" durch das WLAN-Password ersetzt werden.
Des Weiteren muss die richtige uid eingetragen werden. Dies ist die Nummer, die unter Profil in der App gesehen werden kann. Hier bitte aufpassen, da sich sonst jemand über ein neues Gerät "freut".
{"id":36,"method":"miIO.stop_diag_mode","params":""}
Hiermit wird das Gerät neu gestartet. Wenn man sich zu viel Zeit lässt, geht das auch automatisch. Damit meldet sich das Device in der Cloud an und ist mittels der App auch wieder erreichbar. `
Was ist dieses Paket mit WLANKENNUNG. Der wird doch sicherlich nicht im KlarJSON übergeben, sondern mit dem Token verschlüsselt? Dann braucht man immer noch den Token? -
Was ist dieses Paket mit WLANKENNUNG. Der wird doch sicherlich nicht im KlarJSON übergeben, sondern mit dem Token verschlüsselt? Dann braucht man immer noch den Token? `
Es wird nicht im Klartext gesendet aber das ist egal, da beim Abgemeldeten Gerät der Token gesendet wird!!
Habe es gerade Ausprobiert, Robby abgemeldet und dann mit meinem Windows Rechner in das Wlan vom Roboter angemeldet. Die IP vom Robby ist bei mir 192.168.8.1 und dann habe ich im über Tacket Sender die HALO Nachrichnt gesendet und siehe da !!!!!!!! Der Tocken wird gesendet!!!
@gst666 das Programm habe ich noch nciht installiert, muss schauen ob ich es Heute noch schaffe, muss noch auf Familienfeier…..
-
@Bluefox
> Was ist dieses Paket mit WLANKENNUNG. Der wird doch sicherlich nicht im KlarJSON übergeben, sondern mit dem Token verschlüsselt? Dann braucht man immer noch den Token?
Einmal muss dem Gerät die Daten des WLANs mitgeteilt werden. Danach nie wieder. Die Daten werden natürlich mit dem Token verschlüsselt. Dafür das Progrämmchen.
Super, dann haben wir jetzt eine Möglichkeit den Token zu gewinnen. Trotzdem werde ich mal irgendwann beigehen und versuchen, die Kommunikation des Geräts mit dem Internet zu belauschen (hier wird die SSL Verschlüsselung spannend).
-
Guten Morgen, Meistertr und gst666
Ich verfolge hier mit bewundernder Aufmerksamkeit was ihr postet, obwohl ich nur sehr wenig davon verstehe, da mir das Hintergrundwissen fehlt.
Meine Frage an Euch: wie werden sich Euere Erkenntnisse auf den zugehörigen iobroker Adapter für den Staubsauger konkret auswirken?
Bzw.: könntet ihr mal für Dummies eine step by step Erklärung posten?
Also, wie sollte man vorgehen, um den Staubsauger in iobroker einzubinden? Oder sind wir noch nicht soweit? Letzte Frage zeugt davon, dass ich nur rudimentär verstehe, um was es hier geht. Verstanden habe ich, dass ihr einen Weg gefunden habt, den Token zu finden. …;-) Was macht man dann mit dem Token?
Danke jedenfalls für Euere Arbeit im voraus!
-
Ich verfolge hier mit bewundernder Aufmerksamkeit was ihr postet, obwohl ich nur sehr wenig davon verstehe, da mir das Hintergrundwissen fehlt.
Ich sehe das auch so; ist schon klasse was die Jungs hier aufstellen.
Bzw.: könntet ihr mal für Dummies eine step by step Erklärung posten?
Gibts sowas schon. Würde mich auch interessieren.
Der Robo ist zwar noch nicht da; wäre aber interessant zu wissen was man machen muss
Letzte Frage zeugt davon, dass ich nur rudimentär verstehe, um was es hier geht. Verstanden habe ich, dass ihr einen Weg gefunden habt, den Token zu finden. ...;-) Was macht man dann mit dem Token?
Auch das sehe ich genauso; wahrscheinlich sind wir aber noch in einem Stadium was einfach noch zu früh ist.
Was ich bisher mitgenommen habe ist:
-
wenn möglich kein update machen
-
den wlan verkehr von anfang mitschneiden
richtig soweit ?
mfg
Dieter
-
-
Theoretisch könntest Du über das Skript alles steuern. Aus Javascript müsstest Du per exec das Skript ausführen. Ist natürlich noch nicht die Endlösung. Wenn jemand Lust hat und in der Lage ist Adapter zu basteln, dann bin ich gerne bereit mich mit ihm mal ein Wochenende zusammenzusetzen um den Adapter zu basteln. Am Besten wäre es, wenn die Person auch einen Vakuum hätte.
Bezüglich Updates kannst Du die jetzt machen. Wenn man das Gerät in den Konfigurationsmodus setzt (Reset) erhält man den Token (wurde von Meistertr bestätigt).
Wenn Du das Gerät hast wäre es das Beste, dass bevor Du es konfigurierst Dich mit einem Computer in das WLAN des Geräts einloggst und ein HELO-Nachricht schickst (wie das geht wurde weiter oben beschrieben). Wenn du das Skript nimmst, dann geht das mit "xpn -info", die IP such das Programm dann selbständig. Token sicher notieren.
-
> Wenn jemand Lust hat und in der Lage ist Adapter zu basteln
Also, Lust hätte ich schon. Ich glaube nur, dass ich nicht in der Lage bin…Aber machen würde ich das gerne.
> Am Besten wäre es, wenn die Person auch einen Vakuum hätte.
Das sollte, so Gott will, demnächst der Fall sein. Ich könnte dann quasi mit einem "jungfräulichen" Gerät dienen…
> bevor Du es konfigurierst Dich mit einem Computer in das WLAN des Geräts einloggst und ein HELO-Nachricht schickst (wie das geht wurde weiter oben beschrieben)
Wo wurde das beschrieben? Ich finde es nicht. Sorry.
> Wenn du das Skript nimmst, dann geht das mit "xpn -info", die IP such das Programm dann selbständig.
Läuft das Skript auf einem "Computer"? Ich habe nur einen Raspi mit Python…
Sorry, Fragen über Fragen. Aber das hängt damit zusammen, dass es eben hier User mit unterschiedlichstem Kenntnisniveau gibt.
-
Ich schreibe nachher eine kleine Anleitung
Gesendet von meinem E5823 mit Tapatalk
-
Schon vorab: Danke
-
Von mir auch schon mal vorab Danke.
Ich benutze Win7 Rechner.
mfg
Dieter
-
Auch damit kann ich dienen, win 7
-
Um den Token zu ermitteln habe ich das Programm Packet Sender portable verwendet, es wird kein Wireshark oder bluestack benötigt.
Um den Token des Roboters zu bekommen, muss man ihn erstmal aus dem Wlan abmelden.
Dies geht entweder über die app unter den Einstellungen des Gerätes (genauer kann ich es nicht beschreiben weil ich kein Chinesisch kann). Da steht Remove Device, über diesen Punkt kann man das Gerät Entfernen, Alternativ kann man auch den Resetknopf am Gerät drücken.
Nun verbindet man sich mit seinem Windows Rechner mit dem Wlan des Roboters (Roboter sollte in der nähe des PCs sein) bei mir heißt das Wlan rockrobo… aber so viele nciht gesicherte Wlans sollten da auch nciht in der Liste stehen.
Als nächstes öffnet man das Programm Packet Sender. Bei HEX gibt man die folgende Nachricht ein:
21310020ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
Das ist die Anfrage an den Roboter den Token mitzuteilen (HALO Nachricht)
Adresse ist die IP des Roboters in meinem Fall 192.168.8.1 bei Port trägt man 54321 ein und wählt als Nachrichtentyp UDP aus
Nun kann das Packet gesendet werden. Unten Im Fenster Taucht nun die gesetet Nachricht auf und dadrüber die Antwort von dem Roboter, von dieser Nachricht sind die letzten 16 Byte der Token
1768_unbenannt.jpg -
Meistertr,
Tolle Arbeit. Und wenn man weiß, wie, klingt das ja alles auch ganz einfach.
Was uns, glaube ich, jetzt noch zu unserem vollkommenen Glück fehlt, ist die eine Beschreibung, wie mit dem Token dann die wesentlichen Befehle entschlüsselt und an den Sauger geschickt werden. Das habe ich jedenfalls aus dem bisherigen Threarverlauf noch nicht richtig verstanden.
Liebe Grüße am frühen Morgen,
Bernd
-
Soweit bin ich selber auch noch nicht.
Habe den Token ja erst seit gestern.
Mit dem Tocken und dem Phyton Script von gst666 sollten nun die Nachrichten Entschlüsselt werden können. Da muss man dann erst mal schauen was der Roboter alle erzählt und wie man diese Informationen weiter verarbeiten kann…