Plugin: MiRobot2Lox / Xiaomi Vacuum Robot mit MiniServer steuern

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • hismastersvoice
    Supermoderator
    • 25.08.2015
    • 7319

    #91
    In der Log Datei siehst du ob ein UDP von MiniServer angekommen ist.
    Wenn nein Poste mal einen Screenshot von einem Virtuellen Ausgang und Ausgangsbefehl damit ich schauen kann ob da ein Fehler ist.
    Kein Support per PN!

    Kommentar

    • webstar
      Dumb Home'r
      • 04.06.2016
      • 10

      #92
      So schaut es aktuell aus im Log-File (nach einem Neustart von mirobo2lox).

      ----------------------------- Jan 05 17:57:44 Service mirobo2lox wurde durch Config-Watchdog neu gestartet Jan 05 17:57:47 Service mirobo2lox wird beendet Jan 05 17:57:47 Service udp_receiver wird beendet Jan 05 17:57:48 Service mirobo2lox gestartet Jan 05 17:57:48 Service udp_receiver gestartet ROBOT 1
      ----------------------------- Jan 05 17:57:48 Robot reachable Jan 05 17:57:48 GSD Robot 1 wird ausgeführt Jan 05 17:57:48 GET DATA STATUS: Sending cmd get_status with params [] [{'dnd_enabled': 0, 'clean_area': 25962500, 'battery': 100, 'error_code': 0, 'in_cleaning': 0, 'clean_time': 1365, 'map_present': 1, 'state': 8, 'msg_seq': 2367, 'fan_power': 77, 'msg_ver': 6}] Jan 05 17:57:48 SEND ERROR (VTI:2): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VTI2/Keine Fehler" value="Keine Fehler" Code="200"/> Jan 05 17:57:48 SEND ERROR_CODE (VI:80): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI80/0" value="0.000" Code="200"/> Jan 05 17:57:48 SEND STATUS (VTI:1): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VTI1/Akku voll geladen" value="Akku voll geladen" Code="200"/> Jan 05 17:57:48 SEND STATUS_CODE (VI:57): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI57/15" value="15.000" Code="200"/> Jan 05 17:57:48 SEND BATTERY (VI:72): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI72/100" value="100.000" Code="200"/> Jan 05 17:57:48 SEND FANSPEED (VI:56): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI56/77" value="77.000" Code="200"/> Jan 05 17:57:48 SEND TIME (VI:63): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI63/22" value="22.000" Code="200"/> Jan 05 17:57:48 SEND AREA (VI:60): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI60/25" value="25.000" Code="200"/> Jan 05 17:57:48 SEND DND (VI:50): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI50/0" value="0.000" Code="200"/> Jan 05 17:57:48 Robot reachable Jan 05 17:57:48 GET DATA CONSUMABLES: Sending cmd get_consumable with params [] [{'side_brush_work_time': 38468, 'main_brush_work_time': 38468, 'sensor_dirty_time': 37648, 'filter_work_time': 38468}] Jan 05 17:57:48 SEND MAINBRUSH (VI:59): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI59/10" value="10.000" Code="200"/> Jan 05 17:57:48 SEND SIDEBRUSH (VI:76): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI76/10" value="10.000" Code="200"/> Jan 05 17:57:48 SEND FILTER (VI:75): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI75/10" value="10.000" Code="200"/> Jan 05 17:57:48 SEND SENSOR (VI:74): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI74/10" value="10.000" Code="200"/> Jan 05 17:57:48 Robot reachable Jan 05 17:57:48 GET DATA CLEANING HISTORY: Sending cmd get_clean_summary with params [] [37648, 644547500, 38, [1515135600, 1515049200, 1514962800, 1514876400, 1514790000, 1514703600, 1514617200]] Jan 05 17:57:48 SEND CH_COUNT (VI:79): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI79/38" value="38.000" Code="200"/> Jan 05 17:57:48 SEND CH_TIME (VI:78): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI78/627" value="627.000" Code="200"/> Jan 05 17:57:48 SEND CH_AREA (VI:77): <?xml version="1.0" encoding="utf-8"?> <LL control="dev/sps/io/VI77/644" value="644.000" Code="200"/>
      ----------------------------- ROBOT 1 ----------------------------- Jan 05 17:57:58 Robot reachable Jan 05 17:57:58 GSD Robot 1 wird ausgeführt Jan 05 17:57:58 GET DATA STATUS: Sending cmd get_status with params [] [{'dnd_enabled': 0, 'fan_power': 77, 'battery': 100, 'error_code': 0, 'msg_ver': 6, 'msg_seq': 2368, 'clean_area': 25962500, 'map_present': 1, 'in_cleaning': 0, 'state': 8, 'clean_time': 1365}] Jan 05 17:57:58 Robot reachable Jan 05 17:57:58 GET DATA CONSUMABLES: Sending cmd get_consumable with params [] [{'filter_work_time': 38468, 'main_brush_work_time': 38468, 'side_brush_work_time': 38468, 'sensor_dirty_time': 37648}] Jan 05 17:57:58 Robot reachable Jan 05 17:57:58 GET DATA CLEANING HISTORY: Sending cmd get_clean_summary with params [] [37648, 644547500, 38, [1515135600, 1515049200, 1514962800, 1514876400, 1514790000, 1514703600, 1514617200]]

      Kommentar

      • webstar
        Dumb Home'r
        • 04.06.2016
        • 10

        #93
        Zitat von hismastersvoice
        In der Log Datei siehst du ob ein UDP von MiniServer angekommen ist.
        Wenn nein Poste mal einen Screenshot von einem Virtuellen Ausgang und Ausgangsbefehl damit ich schauen kann ob da ein Fehler ist.
        Anbei die aktuellen Einstellungen - passend zum Log-File

        Kommentar


        • hismastersvoice
          hismastersvoice kommentierte
          Kommentar bearbeiten
          Du hast bei Befehl EIN MI_START\n stehn, muss aber R1_MI_START\n heißen.

          Ließ mal das Loxwiki!

        • webstar
          webstar kommentierte
          Kommentar bearbeiten
          hismastersvoice : Danke, genau das war der Fehler.

          Wiki offensichtlich gelesen, aber nicht genau genug...

          DANKE!
      • seppe
        Smart Home'r
        • 12.03.2017
        • 48

        #94
        Hallo,

        vielen Dank für das Plugin es funktioniert klasse!
        Das einzige was mir noch abgeht ist die Steuerung der Timerfunktion vom Robo, ist es noch geplant diese Funktion einzubauen?

        Danke
        Sepp

        Kommentar

        • Ghostchaser
          Smart Home'r
          • 26.08.2015
          • 75

          #95
          Guten Morgen zusammen,

          ich habe das gleiche Phänomen wie webstar. Daten vom Robo kommen an, ich kann aber keine Daten per UDP an den Robo senden / kommen diese nicht an.
          Kann man die UDP-Pakete irgendwie verfolgen? Sollte ein UDP-Eingang auch im Loxberry-Log protokolliert werden? - das ist nämlich nichts drin.

          Gruß
          Jörg

          Kommentar

          • hismastersvoice
            Supermoderator
            • 25.08.2015
            • 7319

            #96
            Wenn ein UDP ankommt steht das im Mirobo log, nicht im Loxberry log.

            Das der leer ist kann fast nicht sein, dort wird die Installation von miio uns angezeigt.
            Wenn kein UDP im log steht ist auch nichts angekommen.
            Screenshot der Einstellungen in loxberry und Config.

            Schon mal anderen UDP Port versucht?
            Kein Support per PN!

            Kommentar

            • hismastersvoice
              Supermoderator
              • 25.08.2015
              • 7319

              #97
              PS: schau mal meinen Kommentar in Post #93 an,vielleicht hat du das selbe Problem.
              Kein Support per PN!

              Kommentar


              • Ghostchaser
                Ghostchaser kommentierte
                Kommentar bearbeiten
                Genau das war es... wer lesen kann, ist klar im Vorteil
            • hismastersvoice
              Supermoderator
              • 25.08.2015
              • 7319

              #98
              ...dann viel Spaß.
              Ich denke das der Fehler evtl. in der Demo Config Sinn könnte.
              Diese wurde erstellt bevor ich das Update auf 3 Robots gemacht hatte.
              Schau ich mir am WE mal an.
              Kein Support per PN!

              Kommentar

              • Muto
                LoxBus Spammer
                • 06.09.2016
                • 322

                #99
                Bei mir funktioniert es mit der zweiten Generation (Roborock S50) leider nicht. Ich bin mir aber nicht sicher, dass das am Plugin liegt. Vieleicht sitzt das Problem hier auch vor dem Bildschirm

                Den Token wollte ich via Android Backup und SQLiteDatabaseBrowser extrahieren da mein Smartphone keinen Rootzugriff hat. Dabei hat er mir zwei Tokens (mit je 32 Zeichen) ausgespuckt, die aber beide wohl nicht funktionieren. So sieht das Debug Log aus (gekürzt):


                ROBOT 1 -----------------------------
                Jan 22 12:56:43 Robot reachable
                Jan 22 12:56:43 GET DATA STATUS:
                Jan 22 12:56:43 GSD Robot 1 wird ausgeführt
                Jan 22 12:56:43 Robot reachable
                Jan 22 12:56:43 GET DATA CONSUMABLES:
                Jan 22 12:56:43 Robot reachable
                Jan 22 12:56:43 GET DATA CLEANING HISTORY:
                -----------------------------
                ROBOT 1
                -----------------------------
                Jan 22 12:56:59 Robot reachable
                Jan 22 12:56:59 GET DATA STATUS:
                Jan 22 12:56:59 GSD Robot 1 wird ausgeführt
                Jan 22 12:56:59 Robot reachable
                Jan 22 12:56:59 GET DATA CONSUMABLES:
                Jan 22 12:56:59 Robot reachable
                Jan 22 12:56:59 GET DATA CLEANING HISTORY:
                -----------------------------
                ROBOT 1
                -----------------------------
                Jan 22 12:57:14 Robot reachable
                Jan 22 12:57:14 GET DATA STATUS:
                Jan 22 12:57:14 GSD Robot 1 wird ausgeführt
                Jan 22 12:57:14 Robot reachable
                Jan 22 12:57:14 GET DATA CONSUMABLES:
                Jan 22 12:57:14 Robot reachable
                Jan 22 12:57:14 GET DATA CLEANING HISTORY:
                -----------------------------
                ROBOT 1
                -----------------------------
                Jan 22 12:57:30 Robot reachable
                Jan 22 12:57:30 GET DATA STATUS:
                Jan 22 12:57:30 GSD Robot 1 wird ausgeführt
                Jan 22 12:57:30 Robot reachable
                Jan 22 12:57:30 GET DATA CONSUMABLES:
                Jan 22 12:57:30 Robot reachable
                Jan 22 12:57:30 GET DATA CLEANING HISTORY:
                -----------------------------
                ROBOT 1
                -----------------------------
                Jan 22 12:57:45 Robot reachable
                Jan 22 12:57:45 GET DATA STATUS:
                Jan 22 12:57:45 GSD Robot 1 wird ausgeführt
                Jan 22 12:57:45 Robot reachable
                Jan 22 12:57:45 GET DATA CONSUMABLES:
                Jan 22 12:57:45 Robot reachable
                Jan 22 12:57:45 GET DATA CLEANING HISTORY:
                -----------------------------
                ROBOT 1
                -----------------------------
                Jan 22 12:58:01 Robot reachable
                Jan 22 12:58:01 GET DATA STATUS:
                Jan 22 12:58:01 GSD Robot 1 wird ausgeführt
                Jan 22 12:58:01 Robot reachable
                Jan 22 12:58:01 GET DATA CONSUMABLES:
                Jan 22 12:58:01 Robot reachable
                Jan 22 12:58:01 GET DATA CLEANING HISTORY:
                Da sollten vermutlich Daten drin stehen oder?

                Edit:

                Wenn ich "mirobo --ip 192.168.XXX.XXX --token XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auf der Konsole absetze bekomme ich folgende Rückmeldung:



                Traceback (most recent call last):
                File "/usr/local/bin/mirobo", line 7, in <module>
                from miio.vacuum_cli import cli
                File "/usr/local/lib/python3.4/dist-packages/miio/__init__.py", line 2, in <module>
                from miio.protocol import Message, Utils
                File "/usr/local/lib/python3.4/dist-packages/miio/protocol.py", line 30, in <module>
                from cryptography.hazmat.primitives import padding
                File "/usr/local/lib/python3.4/dist-packages/cryptography/hazmat/primitives/padding.py", line 13, in <module>
                from cryptography.hazmat.bindings._padding import lib
                ImportError: No module named '_cffi_backend'
                Zuletzt geändert von Muto; 24.01.2018, 11:48.

                Kommentar

                • hismastersvoice
                  Supermoderator
                  • 25.08.2015
                  • 7319

                  #100
                  Muto
                  Bitte installiere mal "pip3 install appdirs" in der Konsole dann sollte es gehen.
                  Habe gerade den Fehler im "miio-pakte" festgestellt als ich eine Neuinstallation gemacht habe.
                  Kein Support per PN!

                  Kommentar

                  • Muto
                    LoxBus Spammer
                    • 06.09.2016
                    • 322

                    #101
                    Danke für die Antwort, die installation hat soweit geklappt. Leider zeigt sich immer noch das gleiche Verhalten mit beiden Tokens:
                    Klicke auf die Grafik für eine vergrößerte Ansicht  Name: screen.JPG Ansichten: 1 Größe: 117,7 KB ID: 140056

                    Im debuglog leider auch unverändert:
                    Jan 25 17:13:43 Setup-Check at boot -- setuptools already installed
                    Jan 25 17:13:43 Setup-Check at boot -- python-miio already installed
                    Jan 25 17:18:44 Service mirobo2lox wurde durch Config-Watchdog neu gestartet
                    Jan 25 17:18:44 Service mirobo2lox wird beendet
                    Jan 25 17:18:44 Service udp_receiver wird beendet
                    Jan 25 17:18:44 Service mirobo2lox gestartet
                    Jan 25 17:18:44 Service udp_receiver gestartet
                    ROBOT 1
                    -----------------------------
                    Jan 25 17:18:44 Robot reachable
                    Jan 25 17:18:44 GSD Robot 1 wird ausgeführt
                    Jan 25 17:18:44 GET DATA STATUS:
                    Jan 25 17:18:44 Robot reachable
                    Jan 25 17:18:44 GET DATA CONSUMABLES:
                    Jan 25 17:18:44 Robot reachable
                    Jan 25 17:18:44 GET DATA CLEANING HISTORY:
                    -----------------------------
                    ROBOT 1
                    -----------------------------
                    Jan 25 17:19:00 Robot reachable
                    Jan 25 17:19:00 GSD Robot 1 wird ausgeführt
                    Jan 25 17:19:00 GET DATA STATUS:
                    Jan 25 17:19:00 Robot reachable
                    Jan 25 17:19:00 GET DATA CONSUMABLES:
                    Jan 25 17:19:00 Robot reachable
                    Jan 25 17:19:00 GET DATA CLEANING HISTORY:
                    -----------------------------
                    Zuletzt geändert von Muto; 25.01.2018, 16:26.

                    Kommentar

                  • hismastersvoice
                    Supermoderator
                    • 25.08.2015
                    • 7319

                    #102
                    Bist du sicher das darin Token stimmt?
                    sieht danach aus als würde er nicht stimmen.
                    Kein Support per PN!

                    Kommentar

                    • Muto
                      LoxBus Spammer
                      • 06.09.2016
                      • 322

                      #103
                      Nein, das bin ich nicht. Ich habe aber eben nochmals die Tokens nach der folgenden anleitunge extrahiert:

                      Homey app to control Mi Home devices that implement the miIO protocol and Xiaomi gateway child devices - File not found · shaarkys/com.xiaomi-miio


                      Es werden mir dann wie auch zuvor zwei Tokens angezeigt:

                      Klicke auf die Grafik für eine vergrößerte Ansicht

Name: screen.JPG
Ansichten: 364
Größe: 107,5 KB
ID: 140066

                      Kommentar

                      • Muto
                        LoxBus Spammer
                        • 06.09.2016
                        • 322

                        #104
                        Wenn ich ein "Select * from devicerecord" absetze anstatt "select token from devicerecord where localIP is '192.168.178.169'" bekomme ich die ganze tabelle angezeigt und stelle fest, dass der erste Token (356...) eine ältere Version zu sein scheint. Ich vermute, dass es daran liegt, dass ich zuerst nicht "mainland China" in der App eingestellt hatte. Da hatte das Einrichten scheinbar nciht funktioniert, er hat aber wohl doch was in der DB angelegt. Der Name ist hier auch noch auf chinesich und der Timestamp des letzten Events ist mit 17.01.2018 - 16:37:18definitiv zu alt. Der Eintrag ist also verwaist und der untere Eintrag (4f3...) sollte der richtige sein.

                        Diese Erkenntnis hilft mir aber leider auch nicht viel weiter. Ansosnten hat niemand die zweite Generation und kann das mal gegenchecken?

                        Kommentar

                        • Donny86
                          Extension Master
                          • 30.06.2017
                          • 111

                          #105
                          Hallo zusammen,

                          ich versuche mich auch gerade an diesem coolen Plugin. Leider scheitere ich schon an der Extraktion des Tokens :-/

                          Ich habe das gleiche Problem wie in Post #58-61 beschrieben. Daher habe ich auch alle Lösungsvorschläge ausprobiert, leider ohne Erfolg.

                          Im Bild sind alle Eingaben von mir und die entsprechenden (Fehler-)Meldungen zu sehen. Vielleicht weiß ja einer von euch weiter.

                          Vielen Dank schon einmal.

                          Beste Grüße
                          Angehängte Dateien

                          Kommentar

                          Lädt...