NEWS
Neuer Adapter für Roborock-Staubsauger
-
@jahnbes Bevor ich es vergessen!
In der Doku zu den Objekten vom Robi Hast du eingetragen:
wash_ready wird nach meiner Beobachtung und den Logs von oben immer dann auf TRUE wenn der Robi zum Mopp Waschen richtig herum an der Station angedockt hat. Unter dem Wasserbefüllstutzen am Roboter ist ein Mikroschalter der durch eine kleine Nase unter dem Wasserstutzen der Station betätigt wird.
wash_ready wird FALSE wenn der Robi nach dem Mopp Waschen wieder abdockt und der Robi dreht rum um in Ladeposition wieder anzudocken. -
@jahnbes sagte in Neuer Adapter für Roborock-Staubsauger:
@matt77che
Danke, so habe ich es jetzt auch im Wiki eingetragen.Wenn ihr schon mal dabei seid, das Wiki zu vervollständigen wir haben einen Q7 Max+
Mehrfache Tests haben ergeben:
clean_type:
1 = Gesamt Reinigung (alle Räume)
2 = Zonenreinigung (ausgewählt über die App z.b.)
3 = Raumreinigungstart_type:
1 = manuell (Knopfdruck am Roboter)
2 = via App (aus der App gestartet oder per ioBroker.Adapter)
3 = Planstart (durch Zeitplanung in der App)complete Type
1 = normal beendet
<> 1 = abgebrochen
Andere Werte habe ich auch noch, die schicke ich nachher noch nach
Gruß Micha
-
@spacerx Danke, ist geändert!
-
@tritanium
Danke, MIcha, ich habe das Wiki ergänzt. Und warte auf Weiteres!
Ein schönes Wochenende noch, Gruß Bert. -
@jahnbes Sorry das ich nerve.
Es ist genau umgekehrt!
0 = Nicht bereit zum Mopp Waschen
1 = Bereit zum Mopp Waschen und ggf. Wasser nachtankenSagt aus das der Saugroboter richtig herum in der Station steht und bereit ist um den Mopp zu Waschen oder Wasser nachzutanken.
Wenn der Robi beim Andocken zum Waschen den Befüllstutzen nicht treffen würde bleibt wash_ready auf 0 (FALSE) -
@spacerx
Oh je, ich habe 0 und 1 und die Zuordnung von true und false dazu verwechselt. Mea culpa.
Gruß Bert. -
So, diesmal habe ich mich mit dem Aufbau der JSON befasst.
Datenpunkt ...CleaningInfo.JSON:
begin + end:-------> Im TS Format
duration:-----------> in Sekunden
area:----------------> Gereingte Fläche (durch 1000000, für m²)
error:---------------> 0 = ohne Fehler beendet
duration:-----------> in Sekunden
complete:----------> 0 = abgebrochene Reinigung, 1 = Reingung beendet
start_type:---------> siehe Wiki
clean_type:--------> siehe Wiki
dust_collection_Status: -----> 0 = Staub eingesammelt (nur), 1 = gesaugt + gewischt
map_flag:-----------> Karten ID (bei mir immer 0, da nur eine Karte verwendet wird)
Den DP "finish_reason" gibt es übrigens mit folgenden Ergebnissen:
21
24
52
54
56Die bin ich aber noch am "testen"
Habe die JSON bei mir in der VIS drin und dementspreechend formatiert:
Melde mich wieder wenn ich mehr habe, bis dahin lg MIcha
-
@tritanium
Danke! -
Im Wiki ist die Unterteilung in "Roboter" und "Dock" aufgelöst. Sie war nicht mehr durchzuhalten. Jetzt ist alles wie im ioBroker angeordnet, also alphabetisch anhand des Objektnamens
Wenn ein Objekt nur für eine Station relevant ist, wird das gleich nach seinem Namen durch das Wort "Dock" angezeigt. -
Hallo zusammen,
ich habe gerade den Adapter installiert, die Instanz lässt sich auch öffnen.
Allerdings bekomme ich keine Verbindung, es kommen immer wieder Fehlermeldungen und es erfolgt alle paar Sekunden ein Neutstart.Anbei die Meldungen im Log:
Kann mir vielleicht jemand helfen?
-
Bitte nicht als Screenshot.
Und nodejs15 ist vollkommen falsch.
Ungerade Versionen sind für die Entwicklung vorgesehen, produktiv setzt man gerade Versionen von nodejs ein. Installier da die aktuelle Empfehlung v18. -
Hallo,
ist es auch möglich die Reinigung mehrerer Räume auf einmal anzustoßen? -
Hallo zusammen
Kleine Frage: "wurde da irgendwo irgendwas verändert?" Seit heute (Samstag 12.08.2023:12.34) macht mein Iob einen auf Terror mit dem Roborock-Adapter. Ich habe ihn jetzt mal deaktiviert.
host.iobroker 2023-08-12 17:24:07.645 info Do not restart adapter system.adapter.roborock.0 because disabled or deleted host.iobroker 2023-08-12 17:24:07.645 error instance system.adapter.roborock.0 terminated with code 3 (NO_ADAPTER_CONFIG_FOUND) roborock.0 5273 2023-08-12 17:24:07.047 warn Terminated (NO_ADAPTER_CONFIG_FOUND): Without reason roborock.0 5273 2023-08-12 17:24:06.999 error adapter disabled host.iobroker 2023-08-12 17:23:49.676 info "system.adapter.roborock.0" disabled mqtt.1 2023-08-12 17:23:34.190 info Restart adapter system.adapter.roborock.0 because enabled host.iobroker 2023-08-12 17:23:34.190 info instance system.adapter.roborock.0 terminated with code NaN () host.iobroker 2023-08-12 17:23:34.190 warn instance system.adapter.roborock.0 terminated due to SIGABRT host.iobroker 2023-08-12 17:23:34.190 error Caught by controller[7]: 8: 0x17036b9 [io.roborock.0] host.iobroker 2023-08-12 17:23:34.190 error Caught by controller[6]: 7: 0xdc3def v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) [io.roborock.0] host.iobroker 2023-08-12 17:23:34.190 error Caught by controller[5]: 6: 0xdc28b0 [io.roborock.0] host.iobroker 2023-08-12 17:23:34.189 error Caught by controller[4]: 5: 0x7eff119f53d3 [/opt/iobroker/node_modules/canvas/build/Release/canvas.node] host.iobroker 2023-08-12 17:23:34.189 error Caught by controller[4]: 4: 0x7eff11a0347c Context2d::GetImageData(Nan::FunctionCallbackInfo<v8::Value> const&) [/opt/iobroker/node_modules/canvas/build/Release/canvas.node] host.iobroker 2023-08-12 17:23:34.189 error Caught by controller[4]: 3: 0xd644da v8::Utils::ReportApiFailure(char const*, char const*) [io.roborock.0] host.iobroker 2023-08-12 17:23:34.189 error Caught by controller[3]: 2: 0xa94749 node::OOMErrorHandler(char const*, bool) [io.roborock.0] host.iobroker 2023-08-12 17:23:34.189 error Caught by controller[2]: 1: 0xb83f50 node::Abort() [io.roborock.0] host.iobroker 2023-08-12 17:23:34.189 error Caught by controller[1]: FATAL ERROR: v8::ToLocalChecked Empty MaybeLocal. host.iobroker 2023-08-12 17:23:34.188 error Caught by controller[0]: Downloading AlexxIT/go2rtc@v1.6.2... roborock.0 5234 2023-08-12 17:23:11.328 info MQTT initialized roborock.0 5234 2023-08-12 17:23:09.896 info starting. Version 0.2.1 (non-npm: copystring/ioBroker.roborock#cea0cc4fa080d5a2041706a71b4190f153c773b4) in /opt/iobroker/node_modules/iobroker.roborock, node: v18.17.1, js-controller: 4.0.24
Das ganze wiederholt sich alle paar Minuten und füllt das Log. Ich muss auch gestehen, ich habe bis jetzt noch gar nichts mit den Daten gemacht, ausser in den Objekten angeschaut. Auch erst 1x die Map angeschaut und studiert wie ich das verwenden kann.
Seit ca. 2 Wochen hat das ganze jetzt einfach sauber die Objekte gefüllt und keine Probleme verursacht.
Ist das auch bei anderen so?
Andi -
Hallo @andibr und andere.
seit dem Update der roborock-App auf die Version 02.58.40 am 11.8.23 habe ich auch Probleme mit dem roborock und dem Adapter, minütlich kommt die Fehlermeldung"Unsported attribute: clean_percent of get_status with value 0. Please contact the dev to add the newly found attribute of your robot."
Ich habe das bereits in github gemeldet.
Gruß Bert.
-
Ist eine neue Funktion in der App. Dort sieht man beim reinigen den Fortschritt in einem Balken.
-
Hallo!
Es wurde ja schon über die Darstellung einer Karte gesprochen und dass das nicht so einfach funktionert, da die Karte nur als Base64-Image vorliegt.
Ich habe mal etwas getüftelt und vielleicht hilft es dem ein oder anderen:Die Base64-Images sind ganz normale HTML-"Bilder", die man z.B. in einer Visu nutzen kann, leider aber nicht einfach so, sondern nur über Umwege.
Der HTML-Code für die Einbindung eines Bas64-Bildes ist so aufgebaut:<img src="[BASE64-CODE]">
Also eigentlich alles kein Hexenwerk. Wenn man aus dem Datenpunkt den Code kopiert und in ein HTML-Objekt in VIS einfügt, wird die Karte auch wunderbar dargestellt, aber natürlich nicht aktualisiert. Da man über geschweifte Klammern direkt in VIS auf den Inhalt eines Datenpunktes zugreifen kann, dachte ich, dass man das über
<img src="{roborock.0.Devices.ID.map.mapBase64}">
lösen kann, das funktioniert aber so nicht. Sollte jemand wissen, wie das funktioniert, gerne melden!
Ich habe das dann so gelöst, dass ich eine script erstellt habe, was nichts anderes macht, als die spitzen Klammern davor und dahinter zu setzen und das alles in einer neuen Variable zu speichern. Diesen String kann ich dann über die geschweiften Klammern in VIS einbinden, es funktionert alles ohne Probleme!
Code:
Hinweise:- In VIS im Editor wird immer nur das Objekt in geschweiften Klammern dargestellt. Geladen wird der Inhalt erst in der feriten VIS!
- die zusätzlichen Inhalte style="[...]" skalieren und beschneiden das Bild, damit es vernünftig dargestllt werden kann. Da muss man je nach Karte schauen wie es passt. Bei mir ist der Bereich oben links des Bildes erstmal sehr viel weiß, weshalb ich da viel wegschneiden muss, bis die eigentliche Karte zu sehen ist, spielt einfach mit den Werten.
- Die Aktualisierungsrate der Karte ist wirklich mäßig. Ich weiß nicht in welchen Intervallen das passiert, es scheint immer so gegen Ende der Reinigung zu sein, manchmal auch währenddessen, manchmal auch im Dock. Woran das liegt weiß vermutlich nur Roborock.
Bei Bedarf kann ich das hier gerne noch fürs WIKI auf englisch aufbereiten, ich habe da aber keine Schreibrechte drauf.
Viel Spaß damit, Anmerkungen oder Fragen sind willkommen!
-
@maxb said in Neuer Adapter für Roborock-Staubsauger:
die zusätzlichen Inhalte style="[...]" skalieren und beschneiden das Bild, damit es vernünftig dargestllt werden kann. Da muss man je nach Karte schauen wie es passt. Bei mir ist der Bereich oben links des Bildes erstmal sehr viel weiß, weshalb ich da viel wegschneiden muss, bis die eigentliche Karte zu sehen ist, spielt einfach mit den Werten.
Da ist eine trimmed base64. Dort sind alle Ränder bereits entfernt.
-
@david-g
Hallo, das mag ja sein und durchaus vernünftig, bei mir ist es aber ein permanent aufploppender Fehler im Protokoll des ioBrokers:
https://github.com/copystring/ioBroker.roborock/issues/348
Und der ist unschön.
Viele Grüße, Bert. -
Ist auch so gewollt.
So sieht man neue Werte die von Roborock übermittelt werden und kann es dem Dev melden damit es eingebaut wird.Der Dev bekommt die Werte ja nicht unbedingt bei einem anderen Staubsaugermodell.
-
@david-g said in Neuer Adapter für Roborock-Staubsauger:
Ist auch so gewollt.
So sieht man neue Werte die von Roborock übermittelt werden und kann es dem Dev melden damit es eingebaut wird.Der Dev bekommt die Werte ja nicht unbedingt bei einem anderen Staubsaugermodell.
So ist es. Nur so kann ich sehen, ob neue Werte verfügbar sind.
Ich kümmere mich darum wenn ich aus dem Urlaub zurück bin.