Roborock Staubsaugerroboter Autocontrol-Software mit ESP8266 zum Betrieb an Funksteckdose (Stromsparen, Akkuschonung)

  • Hallo zusammen,


    ich hatte es bereits schon einmal in einem anderem Thread zu Gen1 erwähnt, da es aber sicherlich genauso für Gen2 funktionieren sollte, hier nochmal als eigener Thread :) Außerdem sind mittlerweile neue Funktionen hinzu gekommen:


    Damit Staubi auch nach einem Saugvorgang vernünftig herunterfährt und nicht immer im Standby bleibt, habe ich mal eine kleine Software für ein ESP8266 Modul geschrieben, welches den Roboter nach getaner Arbeit herunterfahren kann. Außerdem kann über das Modul auch ein Saugvorgang automatisch gestartet werden, sobald der Roboter hochfährt. Das Modul wird dabei direkt in den Roboter eingebaut und simuliert über einen Mosfet einen Tastendruck auf den Power Button. Zusätzlich benötigt ihr Valetudo auf dem Roboter, da über die API Informationen gezogen werden, ob der Roboter in der Ladestation steht und (nicht) lädt.


    Mit diesem Modul ist es möglich, Staubis Sauggänge vollständig z.b. über eine Funksteckdose oder Zeitschaltuhr zu steuern: Zeitschaltuhr schaltet sich ein, Roboter fängt automatisch an zu saugen, sobald er fertig ist und wieder in der Dockingstation steht kann die Basisstation ausgeschaltet werden und der Roboter fährt daraufhin komplett herunter.


    Über ein Webinterface können die beiden Funktionen einzeln ein- oder ausgeschaltet werden:


    website_main.png


    Weitere Informationen, den Schaltplan und Code findet ihr bei Github:


    https://github.com/marhmm/mi_robot_mods


    Zusätzlich habe ich dort auch noch etwas Code zur Steuerung einer Funksteckdose hochgeladen. Diese nutze ich bei mir zum Ausschalten der Basisstation sobald der Roboter >80% Akkuladung hat um ihn etwas zu schonen (die vollen 100% benötige ich bei meiner Bude eh nicht ;) ). Das Ganze läuft bei mir in einem Docker Container auf einem Raspberry Pi, sollte aber auch auf andere Systeme anpassbar sein. Funksteckdosen Tutorials gibt es aber auch zuhauf im Netz.



    Grüße vom staubifan

  • Henne78

    Approved the thread.
  • Tolle Arbeit, staubifan! Danke für deine Mühen!

  • Henne78

    Changed the title of the thread from “Autocontrol mit ESP8266” to “Roborock Staubsaugerroboter Autocontrol-Software mit ESP8266 zum Betrieb an Funksteckdose (Stromsparen, Akkuschonung)”.
  • Ich habe den Titel des Threads mal angepasst, hoffe, das ist so in Ordnung.

  • Tolle Sache!

    Mit den ESP8266 ern bastel ich auch viel rum... und u.a. auch mit Tasmota auf Wifi-Steckdosen usw...


    Aber eine ganz bescheidene Frage...

    Wenn valetudo drauf ist (hab ich noch nicht), und man somit auch ssh-Zugang hat, kann ich den Robo da

    nicht einfach mittels "shutdown -h now" oder so runterfahren?


    EDIT:

    Hab eben meinen Denkfehler entdeckt... runterfahren geht ja, aber zum Wiederhochfahren braucht man

    definitiv den Hardware-Mod. :-D :-D


    Sg und nix anstauben lassen! ;-)

    Andi

    -----------------------------------------------------------------

    Roborock S50 namens "Robbie" ;-)

    Edited once, last by mills ().

  • mills

    Man kann zwar die OS mit shutdown herunterfahren, hat aber leider keine Auswirkung auf die Hardware, weil die Steuereinheit mit den eigenen CPUs autark arbeitet. Roboter-HW bleibt also trotz shutdown weiterhin eingeschaltet und verbraucht Strom.

    Ohne Hardware-Mod und das virtuelle "Drücken" der Einschalttaste geht da leider nix.

    Ich hatte schon versucht herauszufinden ob sich der Robbi über die Steuereinheit ausschalten läßt, bin aber auch nicht weitergekommen.

    Gruß

    MD

  • ..., aber zum Wiederhochfahren braucht man definitiv den Hardware-Mod. :-D :-D

    Gerade zum Wiederhochfahren ist der Hardware-Mod mit 3,3V von Pin TPP7 nicht geeignet. Am Pin TPP7 liegt keine Spannung mehr an, wenn der Roboter über den Powerbutton ausgeschaltet wird. Zum Einschalten benötigt man aber eigentlich auch keinen Hardware-Mod, wenn der Roboter angedockt ausgeschaltet wird.

    Sobald man die Docking-Station mittels einer Schaltsteckdose wieder einschaltet, schaltet sich der Roboter ja eh automatisch wieder ein.


    Angeregt durch die tolle Beschreibung von staubifan habe ich den Umbau gestern durchgeführt, allerdings mit anderer Hardware. Im Roboter nutze ich die Homematic IP Schaltplatine für Batteriebetrieb HmIP-PCBS-BAT und für die Docking-Station eine Homematic IP Schaltsteckdose HMIP-PS. Die Logik wird dann auf der Raspberrymatic hinterlegt.