Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [Frage] Xiaomi Vacuum cleaner

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    [Frage] Xiaomi Vacuum cleaner

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      blacksn0w last edited by

      Meine Vorstellung konnte 1:1 umgesetzt werden, und müsste mit jedem Android Telefon ab 4.0 mit installierter und eingerichteter MiHome App funktionieren.

      ~~![](</s><URL url=)https://abload.de/img/tokenqnsel.png" />

      Kurz zum Ablauf:

      Die MiHome App wird auf den PC als Android Backup gesichert, dann extrahiert. Im Ordner apps/com.xiaomi.smarthome/db befindet sich die Datenbank aller verbundenen Geräte (miio2.db)

      Keine Verschlüsselung oder anderes kommt hier zum Einsatz.

      Die Geräte werden ausgelesen und mit dem Token zusammen ausgegeben.

      Vorraussetzung zur Nutzung des Tools ist wie gesagt nur Android 4+, ein Windows PC, aktuelles Java, aktiviertes Debugging auf dem Smartphone und 2 Minuten Zeit.

      Code gibts hier https://github.com/ultrara1n/MiToolkit

      Download hier https://github.com/ultrara1n/MiToolkit/releases~~

      1 Reply Last reply Reply Quote 0
      • T
        ThePhantom79 last edited by

        Klingt super, mit welchem Tool hast du das Backup gemacht?

        Gruß

        ThePhantom

        1 Reply Last reply Reply Quote 0
        • B
          blacksn0w last edited by

          @ThePhantom79:

          Klingt super, mit welchem Tool hast du das Backup gemacht?

          Gruß

          ThePhantom `
          Ganz einfach mit adb.exe und folgenden Paremetern: backup -f save/backup.ab -apk com.xiaomi.smarthome

          Ist eine Android eigene Funktion, nur eigentlich nicht für solche Aktionen gedacht :roll:

          1 Reply Last reply Reply Quote 0
          • Meistertr
            Meistertr Developer last edited by

            Muss ich den Backup machen oder holt sich das Programm den automatisch?

            Gesendet von meinem SM-G930F mit Tapatalk

            1 Reply Last reply Reply Quote 0
            • B
              blacksn0w last edited by

              @Meistertr:

              Muss ich den Backup machen oder holt sich das Programm den automatisch?

              Gesendet von meinem SM-G930F mit Tapatalk `
              Alles automatisch,

              MiToolkit.exe starten, Verbindung prüfen, Token auslesen drücken, Meldung bestätigen.

              Das Handy sollte schon entsperrt und Verbunden sein, auf dem Handy dann die Sicherungsmeldung bestätigen und ohne Passwort sichern, danach nur noch abwarten bis das Token Fenster kommt.

              1 Reply Last reply Reply Quote 0
              • T
                ThePhantom79 last edited by

                Ob das dann auch schon mit der neuen FW so geht, wenn man den Token vorher nie hatte?

                Gruß

                ThePhantom

                1 Reply Last reply Reply Quote 0
                • B
                  blacksn0w last edited by

                  @ThePhantom79:

                  Ob das dann auch schon mit der neuen FW so geht, wenn man den Token vorher nie hatte?

                  Gruß

                  ThePhantom `
                  Jop, dafür ist es ja gedacht.

                  MiHome brauch den Token ja zwingend zur Kommunikation, speichert ihn also.

                  Ich habe (leider) auch auf die neuste Firmware geupdatet, und es klappt, wie man sieht, einwandfrei.

                  1 Reply Last reply Reply Quote 0
                  • M
                    markus- 0 last edited by

                    iOS mit Jailbreak:

                    /var/mobile/Containers/Data/Application/514106F3-C854-45E9-A45C-119CB4FFC235/Documents/USERID_mihome.sqlite

                    Ohne Jailbreak klappt es über ein unverschlüsseltes iTunes Backup und z.B. mit der Free Version von http://www.imactools.com/iphonebackupviewer/ auch. DB unter RAW, com.xiaomi.home, USERID_mihome.sqlite

                    1 Reply Last reply Reply Quote 0
                    • S
                      skorpil last edited by

                      Männer, ihr seid Genies!

                      1 Reply Last reply Reply Quote 0
                      • S
                        skorpil last edited by

                        gerade getestet mit iphonebackupviewer! Klappt! ich habe die USERID_mihome.sqlite erst mit iphonebackupviewer gesichert und dann mit einem Texteditor geöffnet. Direkt hinter dem Gerätenamen, ohne Leerzeichen! (ich habe zwei Robbis) steht der Token (die folgenden 32 Zeichen). Sehr stark!

                        1 Reply Last reply Reply Quote 0
                        • bahnuhr
                          bahnuhr Forum Testing Most Active last edited by

                          Bei mir klappt das nicht so richtig mit dem Backup.

                          Bin wie folgt vorgegangen:

                          1. MiToolkit downgeloaded und installiert unter c:\programme

                          2. Programm als administrator ausgeführt

                          3. Verbindung geprüft (Daten werden eingetragen)

                          4. Java geprüft (gefunden)

                          5. Token auslesen

                          6. Bestätigung am Handy

                          7. Fehlermeldung:

                          … Fehler aufgetreten... Backup ist viel zu klein.

                          Wenn ich manuell das gleiche probieren mit cmd funktioniert dies auch nicht.

                          Was mach ich falsch ?

                          1 Reply Last reply Reply Quote 0
                          • B
                            blacksn0w last edited by

                            @bahnuhr:

                            Bei mir klappt das nicht so richtig mit dem Backup.

                            Bin wie folgt vorgegangen:

                            1. MiToolkit downgeloaded und installiert unter c:\programme

                            2. Programm als administrator ausgeführt

                            3. Verbindung geprüft (Daten werden eingetragen)

                            4. Java geprüft (gefunden)

                            5. Token auslesen

                            6. Bestätigung am Handy

                            7. Fehlermeldung:

                            … Fehler aufgetreten... Backup ist viel zu klein.

                            Wenn ich manuell das gleiche probieren mit cmd funktioniert dies auch nicht.

                            Was mach ich falsch ? `
                            Wie lange macht er das Backup? Sprich, schließt sich das Fenster auf dem Handy direkt nach dem Tipp auf Backup, oder dauert es ein paar Sekunden?

                            Ist die MiHome App vorher auf, bevor sich das Backup Fenster öffnet?

                            1 Reply Last reply Reply Quote 0
                            • bahnuhr
                              bahnuhr Forum Testing Most Active last edited by

                              ja, mihome app geht auf.

                              Das speichern geht sehr schnell, 1 Sekunde.

                              1 Reply Last reply Reply Quote 0
                              • G
                                gst666 last edited by

                                @markus-:

                                @gst666:

                                {"id":29,"method":"miIO.config_router","params":{"country_domain":"sg","ssid":"WLANKENNUNG","uid":123456789,"gmt_offset":3600,"passwd":"geheim"}}

                                Wichtige Parameter:

                                ssid, passwd und uid. Die uid findest Du z.B. in der App. `
                                Was sing gültige Werte für "country_domain" und welche machen Sinn?

                                "uid" - ist das "d" aus der Flole App Config oder die Xiaomi User ID?

                                Wird der Sauger danach ganz normal in der Xiaomi App sichtbar? `

                                Als country domain sind mir cn für China und sg für Singapore als zulässig bekannt. Andere gehen möglicherweise auch. Bedeutsam könnten sie für die Zeitzone sein (wobei es hier ja noch gut_offset gibt). uid ist die User ID von Xiaomi. Wenn der Vorgang geklappt hat, wird das Gerät in der App sichtbar. Das ist der Mechanismus aufgrund dessen man auch mehrere Apps nutzen kann.

                                Spannend ist, ob jemand den Login-Vorgang auf den Xiaomi-Servern belauschen kann, der https verschlüsselt ist. Hier hat die App wohl eine eigene ID. Würden wir diesen Vorgang verstehen, so könnten wir die Daten auch aus der Cloud holen. Vielleicht haben wir ja einen Spezialisten hierfür unter uns.

                                1 Reply Last reply Reply Quote 0
                                • M
                                  markus- 0 last edited by

                                  @gst666:

                                  Spannend ist, ob jemand den Login-Vorgang auf den Xiaomi-Servern belauschen kann, der https verschlüsselt ist. Hier hat die App wohl eine eigene ID. Würden wir diesen Vorgang verstehen, so könnten wir die Daten auch aus der Cloud holen. Vielleicht haben wir ja einen Spezialisten hierfür unter uns. `

                                  SSL? Haha, schön wärs…

                                  Das einzige was man da noch sieht ist der Login Call und die Keys die zurück kommen, danach war's das.

                                  Sowohl die Requests als auch die Responses sind bei Xiaomi verschlüsselt, gehasht und signiert.

                                  Ohne den App Code zu verstehen kommen wir da leider nicht weiter -> javadecompilers.com/apk

                                  Mir fehlt die Zeit dafür.

                                  Etwas größere Chancen sehe ich beim Download der Maps.

                                  Die liegen in der Xiaomi Cloud analog AWS S3, für deren Signatur es eventuell auch Doku gibt.

                                  Da gilt es dann nur noch rauszufinden, mit welchem Key der Request signiert werden muss.

                                  Naja, und anschließend noch das File Format der Maps...

                                  1 Reply Last reply Reply Quote 0
                                  • G
                                    gst666 last edited by

                                    Ist mir grundsätzlich klar. Soweit ich weiß kommt es auf die Implementierung an, ob man ein falsches ssl-Zertifikat seitens eines Fake-Servers unterschieben kann. Wenn die App das Zertifikat nicht prüft so könnte man eventuell die Kommunikation entziffern.

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      markus- 0 last edited by

                                      @gst666:

                                      Soweit ich weiß kommt es auf die Implementierung an, ob man ein falsches ssl-Zertifikat seitens eines Fake-Servers unterschieben kann. Wenn die App das Zertifikat nicht prüft so könnte man eventuell die Kommunikation entziffern. `

                                      Das ist nicht das Problem, soweit bin ich.

                                      Was sie über HTTPS schicken wird durch die App selbst aber nochmal verschlüsselt, auch alles was zurückkommt ist verschlüsselt!

                                      P.S.: https://github.com/ac-pm/SSLUnpinning_Cydia sollte helfen wenn du Android hast. Einfach mal nach SSL Unpinning suchen 🙂

                                      1 Reply Last reply Reply Quote 0
                                      • Meistertr
                                        Meistertr Developer last edited by

                                        @blacksn0w:

                                        @ThePhantom79:

                                        Ob das dann auch schon mit der neuen FW so geht, wenn man den Token vorher nie hatte?

                                        Gruß

                                        ThePhantom `
                                        Jop, dafür ist es ja gedacht.

                                        MiHome brauch den Token ja zwingend zur Kommunikation, speichert ihn also.

                                        Ich habe (leider) auch auf die neuste Firmware geupdatet, und es klappt, wie man sieht, einwandfrei. `

                                        So einmal tausend dank an blacksn0w, ich bin wieder online, waren knapp 10 sekunden Zeitaufwand. Tausend dank

                                        1 Reply Last reply Reply Quote 0
                                        • T
                                          ThePhantom79 last edited by

                                          Auch von mir echt ein fettes Danke Schön - jetzt kann es losgehen!

                                          1 Reply Last reply Reply Quote 0
                                          • MathiasJ
                                            MathiasJ last edited by

                                            Komisch…...... Ich wollte gerade ein Update machen. Ich bekomme angezeigt, dass meine 3.36 die aktuelle ist.

                                            Wurde die 3.39 wieder zurückgezogen?

                                            Gesendet von meinem SM-N915FY mit Tapatalk

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            896
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            204
                                            2196
                                            798003
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo