Xiaomi Roborock und Homematic ohne iobroker

diverse Zusatzsoftware

Moderator: Co-Administratoren

Germa
Beiträge: 169
Registriert: 15.12.2019, 12:26
System: CCU
Hat sich bedankt: 30 Mal
Danksagung erhalten: 19 Mal

Re: Xiaomi Roborock und Homematic ohne iobroker

Beitrag von Germa » 07.02.2022, 16:19

ich beantworte mir die Frage einfach mal selber :D , habs hinbekommen.

In meinem Fall ist es der Roborock S50, also der S5 mit Wischfunktion (gen.2).
1. Resetten des Geräts, damit er die Ursprungsfirmware lädt
2. Aufspielen der modifizierten Firmware mit Valetudo nach dieser Anleitung:
https://www.roboter-forum.com/index.php ... iche-linu/
Das Gute daran ist, das klappt ohne UNIX Kenntnisse einfach mit dem Windows Tool Roborock Control Center.
Den Token habe ich ohne iobroker ausgelesen mit dem tool https://totzek.me/xiaomi-token-einfach- ... rial-2021/
3. Im Roborock Control Center dann noch das deutsche Sprachpaket installieren und fertig
Danach ist Der Roborock unter seiner IP-Adresse im Browser erreichbar, mit Valetudo bedienbar und aus der Chinawolke verschwunden 8)

Im Valetudo gibt es dann den Menüpunkt Swagger UI, dort ist die API des Gerätes aufgelistet und dort gibt es den Punkt "BasicControlCapability" mit den grundsätzlichen Befehlen home, start, pause und stop im json Format:

Code: Alles auswählen

curl -X 'PUT' \
 'http://<IP-Adresse des S50>/api/v2/robot/capabilities/BasicControlCapability' \
 -H 'accept: */*' \
 -H 'Content-Type: application/json' \
 -d '{
 "action": "home"
 }'        
Daraus haben wir mit einem kleinen Homematic-Script und CuxD einen funktionierenden Befehl zum Steuern des Roborock hinbekommen:

Code: Alles auswählen

string manuell;
string bodyRequest = "{\"action\": \"start\"}";
manuell ="/usr/local/addons/cuxd/curl -X PUT -H \"accept: */* \" -H \"Content-Type: application/json\" -d \'" # bodyRequest # "\' http://<IP-Adresse des S50>/api/v2/robot/capabilities/BasicControlCapability";
dom.GetObject("CUxD.CUX2801003:5.CMD_EXEC").State(manuell);
Fertig. Funktioniert.

Jetzt müsste man nur noch aus dem API auslesen, welchen Status das Gerät denn gerade hat, das liefert API "Get Robot State" in einem json string.
Wie ich da die relevanten Infos auslese, habe ich noch nicht herausgefunden.
Würde mir da vielleicht dieses hier helfen?:
hobbyquaker hat geschrieben:
26.09.2019, 17:19
Falls Du kein RaspberryMatic einsetzt gibt es hier auch jq als Addon für die CCU3: https://github.com/hobbyquaker/ccu-addon-jq
oder ist das schon veraltet?
wenn wir uns alle gegenseitig helfen, ist allen geholfen :wink:
_______________________________________________
CCU3 seit 2018, 103 Geräte, 202 Programme, 222 sysvar
Projekte: Wettersensor viewtopic.php?t=65631

Antworten

Zurück zu „Sonstige Addons“