Ankündigung

Einklappen
Keine Ankündigung bisher.

Xiaomi / Roboroc Baustein 19001929

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • sipiyou
    antwortet
    trollmar : der Baustein gibt eigentlich noch die cloudstateinformation in der log aus.

    Reagiert dein Roboter auf einen ping auf die IP 192.168.10.91 ?

    Einen Kommentar schreiben:


  • trollmar
    antwortet
    Zitat von Delta6400 Beitrag anzeigen
    Nach einer etwas längeren Nacht und dem heutigen Morgen, möchte ich meine Ergebnisse und Fehlerbehebungen einmal teilen.
    Vorerst aber noch mal danke an sipiyou für die nächtliche Bereitschaft

    Ich habe bei mir zu Hause insgesamt 4 Roborock vacuum v1, hiervon wollte einer nicht mit dem LBS kommunizieren obwohl ich ihn per Xiaomi APP starten konnte.
    Der LBS gab im Debug 2 Modus "Roboter reagiert nicht." wieder.

    Wir haben nachher herausgefunden, dass der Staubsauger irgendwie nicht im WLAN als aktives Gerät angezeigt wird und auch das anpingen nicht funktioniert.
    Aber wie bereits gesagt, er hat über die APP einwandfrei Funktioniert.
    Lösung des Problems war ein insgesamt 3 maliges Zurücksetzen des Staubsaugers, nun ist er beim Router angemeldet und lässt sich auch anpingen.
    Der LBS (Version 0.7) findet Ihn jetzt auch und ich kann vom LBS den Staubsauger aus starten.

    Rücksetzen des Roboters (vacuum v1):
    1. Roboter vom Dock entfernen, damit er nicht weiter geladen wird
    2. Klappe öffnen und den Power sowie den Home Button gleichzeitig drücken.
    3. Den Reset Button mit einem Kulli/Büroklammer drücken und wieder loslassen.
    4. Warten bis die weiße LED um den Power und Home Button anfängt zu blinken und die WLAN Lampe aus geht, dann die beiden Tasten loslassen
    5. Das Rücksetzen ist nun initialisiert
    6. Warten bis er fertig ist

    Also bei mir bekomm ich den Gen1 Roborock so nicht zum laufen.
    Ich kann ihn anpingen unter der IP.
    Mein LOG mit Debug "2" sagt folgendes.

    Code:
     [TABLE="border: 0, cellpadding: 0, cellspacing: 0"]
     	 		[TR]
     			[TD]2020-05-23 16:00:30[/TD]
     			[TD]415150[/TD]
     			[TD]1195[/TD]
     			[TD]Debug[/TD]
     			[TD]Cloud-Daten aus Cache verwenden. Kein Login![/TD]
     		[/TR]
     		[TR]
     			[TD]2020-05-23 16:00:30[/TD]
     			[TD]415405[/TD]
     			[TD]1195[/TD]
     			[TD]Debug[/TD]
     			[TD]V3=0zsJVN5gxDU0xxxxxxxxxsJohmWIs5qZtlveGyRJfhSULAe qN9+RfLmUNrUh9r8fEI2fWt6jv4c3xxxxxxxxx5i/xuvH4BS8rekPwQHnFZhdXlEBl4bqW3bJwsFUSbavHCNfKYucN7 lDEIIj2k0KenvxxxxxsuFbTNC2/yThxms=V4=fxxxxcjcBO/ma9sxxxPKSA==V5=1682500091[/TD]
     		[/TR]
     		[TR]
     			[TD]2020-05-23 16:00:30[/TD]
     			[TD]533060[/TD]
     			[TD]1195[/TD]
     			[TD]Kritisch[/TD]
     			[TD]Geräte-Status konnte nicht aus der Cloud ermittelt werden![LF][/TD]
     		[/TR]
     		[TR]
     			[TD]2020-05-23 16:00:30[/TD]
     			[TD]533163[/TD]
     			[TD]1195[/TD]
     			[TD]Debug[/TD]
     			[TD]cloud->isAccessible:Y-E10=192.168.10.91-E11=386d4f3574746xxxx56e7031374d6a4f[/TD]
     		[/TR]
     		[TR]
     			[TD]2020-05-23 16:00:30[/TD]
     			[TD]533205[/TD]
     			[TD]1195[/TD]
     			[TD]Debug[/TD]
     			[TD]RoborockMe:: ip = ; token = ; SequenceID: 0[/TD]
     		[/TR]
     		[TR]
     			[TD]2020-05-23 16:00:30[/TD]
     			[TD]533968[/TD]
     			[TD]1195[/TD]
     			[TD]Debug[/TD]
     			[TD]roborocMe:: ok[/TD]
     		[/TR]
     		[TR]
     			[TD]2020-05-23 16:00:30[/TD]
     			[TD]534007[/TD]
     			[TD]1195[/TD]
     			[TD]Info[/TD]
     			[TD]Roboter reagiert nicht.[/TD]
     		[/TR]
     		[TR]
     			[TD]2020-05-23 16:00:30[/TD]
     			[TD]535161[/TD]
     			[TD]1195[/TD]
     			[TD]Debug[/TD]
     			[TD]deine szeit: 0.12058401107788 [s][/TD]
     		[/TR]
     	 [/TABLE]
    Hab ihn auch nicht resettet
    firmeware is relativ alt: 3.3.9_003194


    EDIT:
    Burger ​​​​​​​

    Wo sind den deine gen1 registriert?
    Ich glaube ja es liegt bei mir an"mainland China"
    Zuletzt geändert von trollmar; 23.05.2020, 16:03.

    Einen Kommentar schreiben:


  • sipiyou
    antwortet
    skyacer :
    Ich hab im Skript nichts aussergewöhnliches, ausser, dass ich den socket öffne, aber nicht schliesse. Hier müsste sich aber der php garbage collector dadrum kümmern.
    Ich hab jetzt einen Destruktor, der beim beenden des Skriptes den Socket schliesst.

    Lad dir bitte die 0.72 runter und schau mal, ob das Problem damit vom Tisch ist. Ansonsten schau bitte, ob ggf. der andere Baustein das Problem verursacht.

    Schau auch bitte, ob da Skript sich nach einigen Sekunden bei dir beendet, das wird am A34 angezeigt.

    Einen Kommentar schreiben:


  • skyacer
    antwortet
    Hey,

    also Debug steht bei mir auf 0. ;-)

    Einen Kommentar schreiben:


  • sipiyou
    antwortet
    trollmar : versuchs mit "de". Hier muss immer die Region angegeben werden, wo der Roboter aktiv ist.
    skyacer : kann es sein, dass die Log-Datei in den RAM geschrieben wird ? Hier sonst debug auf 0 setzen. Der Baustein loggt momentan sehr viel.

    Ansonsten gibts hier auch schon einen Vorgeschmack auf die Map - erstmal im normalen Browser gerendert. Bin schon gespannt, ob das im Visuelement alles so funktioniert...



    Angehängte Dateien

    Einen Kommentar schreiben:


  • skyacer
    antwortet
    Hi,

    also ich nutze den Baustein in einem Testcontainer unter Proxmox. Die einzigen Logiken die darauf derzeit laufen sind der Rockrobo LBS und die Logig für meinen Wechselrichter. Seit ich den Rockrobo LBS minütlich Trigger läuft mit über 1-2 Tage der Ramspeicher zu. CURL hab ich bereits geupdatet und ist auf der neusten Version. Deaktiviere ich den LBS und starte den Container neu ist bleibt der Ram Konstant niedrig. Ist es bei euch auch so?

    Grüße

    Einen Kommentar schreiben:


  • trollmar
    antwortet
    Hi,

    danke für den Baustein.
    Hab auch gen1 Roboter.

    Was muss ich den eintragen wenn der "mainland China" verortet ist?
    cn ist es wohl nicht . Krieg den baustein noch nicht zum laufen.

    Einen Kommentar schreiben:


  • sipiyou
    antwortet
    Delta6400 : ihr habt definitiv zuviele Roboter, aber freut mich, dass es jetzt klappt. Aber schon komisch, dass der ohne im Router angemeldet gewesen zu sein über die App erreichbar war - oder haben die eine Sim-Karte eingebaut ?

    s01iD :
    Danke für den Hinweis, bei A24 und A26 hatte ich die Gesamtzeitwerte vertauscht. Ist jetzt mit 0.71 gefixed. Schau mal, ob das jetzt hinkommt. Die Werte werden in Minuten ausgegeben - siehe Baustein-Hilfe

    A1 wird nur dann auf 1 gesetzt, wenn der Roboter mit einer Reinigung fertig ist. Ich hab die Debug-Level 2 Log an der Stelle erweitert. Schau mal bitte, was in der log
    bei "Info_Status" steht

    Hier wird das Feld "in_cleaning" verwendet. Wenn sich der Wert von 0 auf 1 ändert, dann wird am A1 eine 1 ausgegeben.
    Info_Status:array(17) {[LF] ["msg_ver"]=>[LF] int(2)[LF] ["msg_seq"]=>[LF] int(1931)[LF] ["state"]=>[LF] int(8)[LF] ["battery"]=>[LF] int(100)[LF] ["clean_time"]=>[LF] float(76.216666666667)[LF] ["clean_area"]=>[LF] float(76.365)[LF] ["error_code"]=>[LF] int(0)[LF] ["map_present"]=>[LF] int(1)[LF] ["in_cleaning"]=>[LF] int(0)[LF] ["in_returning"]=>[LF] int(0)[LF] ["in_fresh_state"]=>[LF] int(1)[LF] ["lab_status"]=>[LF] int(1)[LF] ["water_box_status"]=>[LF] int(0)[LF] ["fan_power"]=>[LF] int(104)[LF] ["dnd_enabled"]=>[LF] int(0)[LF] ["map_status"]=>[LF] int(1)[LF] ["lock_status"]=>[LF] int(0)[LF]}[LF]
    Zuletzt geändert von sipiyou; 22.05.2020, 20:12.

    Einen Kommentar schreiben:


  • s01iD
    antwortet
    Danke für den Baustein, ich war selbst drauf und dran den zu implementieren ;-)

    Ich habe einen Roborock S50, einige Werte kommen mir komisch vor.
    A1 ist irgendwie immer leer
    A24: ist der Wert in Stunden? Baustein sagt 207, App 56 Std.
    A25: Passt.
    A26: App sagt 47 Std., Baustein 0

    Einen Kommentar schreiben:


  • Delta6400
    antwortet
    Nach einer etwas längeren Nacht und dem heutigen Morgen, möchte ich meine Ergebnisse und Fehlerbehebungen einmal teilen.
    Vorerst aber noch mal danke an sipiyou für die nächtliche Bereitschaft

    Ich habe bei mir zu Hause insgesamt 4 Roborock vacuum v1, hiervon wollte einer nicht mit dem LBS kommunizieren obwohl ich ihn per Xiaomi APP starten konnte.
    Der LBS gab im Debug 2 Modus "Roboter reagiert nicht." wieder.

    Wir haben nachher herausgefunden, dass der Staubsauger irgendwie nicht im WLAN als aktives Gerät angezeigt wird und auch das anpingen nicht funktioniert.
    Aber wie bereits gesagt, er hat über die APP einwandfrei Funktioniert.
    Lösung des Problems war ein insgesamt 3 maliges Zurücksetzen des Staubsaugers, nun ist er beim Router angemeldet und lässt sich auch anpingen.
    Der LBS (Version 0.7) findet Ihn jetzt auch und ich kann vom LBS den Staubsauger aus starten.

    Rücksetzen des Roboters (vacuum v1):
    1. Roboter vom Dock entfernen, damit er nicht weiter geladen wird
    2. Klappe öffnen und den Power sowie den Home Button gleichzeitig drücken.
    3. Den Reset Button mit einem Kulli/Büroklammer drücken und wieder loslassen.
    4. Warten bis die weiße LED um den Power und Home Button anfängt zu blinken und die WLAN Lampe aus geht, dann die beiden Tasten loslassen
    5. Das Rücksetzen ist nun initialisiert
    6. Warten bis er fertig ist

    Einen Kommentar schreiben:


  • sipiyou
    antwortet
    So, ich hab den Baustein heute etwas erweitert.

    1) Jetzt sollten auch die älteren Roboter funktionieren.

    2) Bei den Robotern, die die Reinigungsmap unterstützten, wird hier auch schon die URL ausgegeben, allerdings könnt ihr damit noch nix anfangen - hier muss noch eine Map aus den Daten generiert werden.

    Aktuell tendiere ich zum VSE-Baustein für die Maps, aber mal schauen.

    Gebt mir bitte bescheid, ob die Status-Meldungen / Steuerkommandos jetzt bei euch funktionieren. Weiterhin muss ich wissen, bei wem die Map-URL nicht geladen wird, obwohl die Xiaomi-App die Karte anzeigt.

    Bei meinem S6 ist es so, dass ab und zu der Roboter den Map-Link nicht ausgeben will, hier versucht der Baustein es 3 Mal. Mit dieser Methode geht es zu 99%, ab und zu geht es erst mit dem nächsten Trigger ( ich hab 1 Minute eingestellt).

    Die Hilfe hab ich soweit auch überarbeitet, Burger vielen Dank für dein Feedback hierzu. Könntest du bitte einmal schauen, ob deine Xiaomi-Geräte in der Log jetzt alle auftauchen ? Hierzu musst du Debug-Level auf 2 setzen.

    Einen Kommentar schreiben:


  • Delta6400
    antwortet
    Moin,
    ich hab mir den LBS auch mal runtergeladen.
    Wir haben insgesamt 3 Roborock (SDJQR01RR) also die erste Generation ohne Waschfunktion.
    Er gibt die richtige IP-Adresse im Log aus und sagt mir auch, dass die Login-Daten richtig sind.
    Jedoch gibt er als Info: "Roboter reagiert nicht" aus.
    Es werden auch keine Werte vom LBS ausgegeben (Batteriestand,...)
    Wenn ich die Nr 2 eingebe, hat er auch einen anderen Staubsauger mit der richtigen IP, gibt aber ebenfalls den Fehler aus.
    In der CloudStateInformation (DEBUG) stehen jeweils auch die aktuellen Daten (Batterie voll, Name, ...)
    Nur der LBS gibt diese Werte nicht aus und starten kann ich Ihn leider auch nicht.

    Ach ja wenn ich Ihn starten möchte gibt er mir noch folgenden Fehler aus: Roboter ist nicht Erreichbar![LF]

    Vorab, vielen Dank das du einen LB gebaut hast!
    Mir fehlt leider die Zeit dafür, ich hoffe ich kann demnächst mich hier im Forum noch arrangieren für die gute Arbeit von allen hier

    Einen Kommentar schreiben:


  • simonlaessig
    antwortet
    Zitat von sipiyou Beitrag anzeigen
    Ich hab mir das noch nicht genau angeschaut, aber eigentlich gibt es nur 2 Möglichkeiten:

    A) die Map mittels gd o.ä. zeichnen und als png/jpg ablegen. Das macht aber wahrscheinlich nur für die abgeschlossenen Maps sinn.

    B) eigenes Visu-Element und das ganze im Browser mittels javascript pinseln. Das ist wahrscheinlich die bessere Variante, vorallem für die Live-Map.
    Hier müssten lediglich die Auth-Token vom LBS an das VSE übergeben werden, das ist nicht sonderlich viel.
    Ich nutze aktuell noch iobroker um den Roborock zu steuern, seit der neuen Version lässt sich über den Adapter auch die Map Live von der Xiaomi Cloud auslesen. Diese wird im Iobroker als Base64 PNG zur verfügung gestellt und zusätzlich als fertige PNG abgelegt. Wäre natürlich überragend wenn dein Baustein das bald auch kann, dann kann ich die iobroker lösung ablösen.

    Einen Kommentar schreiben:


  • Langer89
    antwortet
    Zitat von sipiyou Beitrag anzeigen
    Aber wenn du Lust auf testen hast, dann bau ich den Baustein die Tage um, dann sollte es bei Dir auch laufen.
    Logisch! Meld dich einfach wenn ich unterstützen kann. Eilt auch nicht ;-)

    PS: Das github repo ist ja schon mal sehr interessant.

    Einen Kommentar schreiben:


  • sipiyou
    antwortet
    @burger: du brauchst den token nicht umständlich auszulesen. Wenn du die App benutzt, gibst du einfach deine Zugangsdaten da ein, der Baustein holt die Daten aus der Cloud.

    Die IP/Token-Sache ist nur für die Roboter, die gerootet sind. Wenn ich irgendwann die Maps einbinde, dann wird der Abruf über die Cloud laufen.

    @langner89: Ich hab mir die dustcloud nur kurz angeschaut, da es für mich nicht in Frage kam, den Roboter zu rooten.
    Unterstützt dustcloud die original Kommunikationsschnittstellen des Roboters ?

    Das Problem ist, dass das Kommando "app_get_init_status", was ich sende, erst ab dem S5 verfügbar ist.

    https://github.com/marcelrv/XiaomiRo...ster/README.md

    Aber wenn du Lust auf testen hast, dann bau ich den Baustein die Tage um, dann sollte es bei Dir auch laufen.

    Einen Kommentar schreiben:

Lädt...
X