Valetudo: Alternatives cloudfreies Webinterface ohne Dustcloud mit Livemap auf dem Saugroboter

  • Zunächst einmal vielen Dank für deine/eure Arbeit!! Sieht top aus!


    Ich habe nun die Binary auf meinem Roborock und soweit alles am Laufen.


    Jetzt frage ich mich, ob ich einfach nur blind oder einfach nur blöd bin... Wo finde ich die App?! :-D

  • ah stark, ja danke. hätte man auch drauf kommen können..


    Die Karte ist jedoch um 90° im Uhrzeigersinn verdreht im Vergleich zur Flole App oder MiHome App.

    Aber die Karte hat ja außer zur Ansicht keine weitere Funktion bisher, richtig? (also nicht wie bei Flole App GoTo und Koordinaten herausfinden)

  • Ich lade nachher sicher eine neue Version von RRCC hoch.


    Die zeigt dann die Koordinaten bei GoTo und Zone an, kann H/V gespiegelt werden (am 90/180/270 rotieren bastel ich gerade noch rum) und hat auch den Fix drin falls die Koordinaten verkehrt rum sind.


    Da du ja eh schon gerootet und Valetudo drauf hast eventuell eine Option für dich...

  • In Valetudo wird die Karte automatisch so gedreht, dass mit dem zur Verfuegung stehenden Platz die Karte bestmoeglich (am groessten) dargestellt wird.

    Entsprechend wieder die Karte automatisch um 90 Grad gedreht, oder eben nicht.

  • LazyT Ja, definitiv. werde ich mir mal anschauen. Cool wäre halt nur, die ganzen Funktionen auch bei Valetudo zu haben, da Flole und MiHome nach meiner Information nicht mehr funktionieren, wenn man den Robi von der Cloud trennt.


    -----

    Cool wäre eine Einstellung, die man nach belieben ändern könnte, da die verschiedenen Ausrichtungen (nutze noch Flole, solange der Robi noch an der Cloud hängt) verwirren.

  • Den Port des Webinterface könnte man konfigurierbar machen, ja. Keine sonderlich große Änderung

    Moin moin Hypfer...


    kurzum, brauch man ja gar net, war gerade als ich danach gefragt habe am Vhosts im Apache2 schreiben um nen externen Zugriff auf das Webinterface zu bekommen... und da alles auf 80 bzw. 443 läuft wollte ich für nen Redirect nen anderen Port... brauch man ja gar net, da man ja auf ne andere IP redirected und da wäre der Port erstmal wurscht :)

    Für alle die vielleicht auch nen HomeNAS/Server betreiben mit nem Apache2 Server und gern auf Valetudo von extern Zugriff haben wollen:


    Beispielkonfig:


    IP des Servers: 192.168.1.2

    IP des Roborocks: 192.168.1.7

    Name des Roborocks: roborock

    dynDNS: eure.dyndns.net


    Neue Config anlegen unter /etc/apache2/sites-available/

    Code
    1. sudo nano /etc/apache2/sites-available/roborock.conf

    Inhalt:


    jetzt noch einen User anlegen für den Zugriff auf die neue Subdomain

    Code
    1. sudo htpasswd -bc htpasswd [username] [password]

    am besten ein sicheres Passwort hier nutzen ;)


    neue Subdomain aktivieren:

    Code
    1. sudo a2ensite roborock.conf


    Jetzt Certbot installieren:

    Code
    1. sudo add-apt-repository ppa:certbot/certbot
    2. sudo apt update
    3. sudo apt install python-certbot-apache


    Jetzt ein SSL Zertifikat abholen und den Redirect einrichten lassen

    Code
    1. sudo certbot --apache --agree-tos --rsa-key-size 4096 --email eureMail@MailProvider.de --redirect -d roborock.eure.dyndns.net


    Damit das nach 90 Tagen auslaufende Zertifikat auch immer brav aktuell bleibt noch einen cronjob einrichten:

    Code
    1. sudo crontab -e


    Inhalt:

    Code
    1. 0 3 * * * sudo certbot renew

    Jeden Tag um 3:00 Uhr wird Certbot prüfen, ob das Zertifikat bereits zu erneuern ist :)


    Ab jetzt ist euer Valetudo unter https://roborock.eure.dyndns.net zu erreichen und ein redirect von http auf https wird auch automatisch gemacht :)

  • huhu hypfer,


    gibts ne möglichkeit, die aktualisierungsrate der map zu erhöhen? glaub aktuell liegts so bei 3-5 Sekunden?

    quasi nen bissl mehr in richtung LiveMap :D


    Wäre toll wenns da nen configparameter geben würde :)

  • Stimmt schon. Habe es grad implementiert. Leider gibt es in Windows keine zuverlässige Variante (die mir bekannt ist) um ohne weitere Hilfsmittel Dateien herunterzuladen. Also musste eine wget Implementierung für Windows her. Die kann man sich z.B. dort für sein System (32 oder 64 bit OS) herunterladen (Ich hoffe, die Verlinkung geht klar) : https://eternallybored.org/misc/wget/


    Anschließend die "wget.exe" zusammen mit dem Script (als scriptname.bat) und dem private-key vom rooten in einen Ordner schieben - und das Script starten.

    Das Script holt sich dann von den github die Liste der Releases (coole API btw.) und bietet dem User eine Auswahl, welches Release installiert werden soll. Das Auserwählte wird geladen und auf den Roboter aufgespielt. Vorher wird noch auf die Existenz der config datei geprüft - die dann bei Bedarf ebenfalls heruntergeladen und eingespielt wird.

    Hier das Script - Viel Spaß damit


    Sehr schön, Danke dafür. Kann ich es auch irgendwie nutzen, wenn meine Zertifikatsdatei passwortgeschützt ist?

  • Sehr schön, Danke dafür. Kann ich es auch irgendwie nutzen, wenn meine Zertifikatsdatei passwortgeschützt ist?

    Das habe ich ehrlich gesagt gar nicht ausprobiert. Was meldet denn das Script? Ich würde eigentlich erwarten, dass an entsprechender Stelle (ggf. also auch mehrfach) nach dem Passwort zum Zertifikat gefragt wird und es trotzdem alles durchläuft..

  • Hey Folks,

    seit kurzem bin ich im Besitz eines Roborock S50. Jedoch möchte ich die Cloud-Verbindung zum Hersteller unterbinden. Das Gerät ist bereits mit Root-Zugriff versehen, jedoch fehlt mir die weiterführende Expertise für die Installation von Valetudo. Zunächst möchte ich mich allerdings bei Hypfer für dieses ausgesprochen geniale Tool bedanken. Es ist immer wieder schön zu sehen, welcher Enthusiasmus bei Entwicklern besteht, selbst ohne eine Monetarisierung in den Vordergrund zu stellen.

    Gibt es evtl. bereits eine Schritt-für-Schritt-Anleitung, die ich bisher übersehen habe?

    Edit: Tatsächlich habe ich das Tool soeben ans laufen gebrachtl. Nun nur die Frage: Wie blocke ich sämtliche externe Verbindungen? Wenn ich den Internetzugriff über meine FRITZ!Box sperre, kann ich das Webinterface von Valetudo nicht mehr nutzen.

    Edit2:

    Werden mit dem ausführen via Shell folgender Befehle sämtliche Verbindungen geblockt?

    Code
    1. # iptables -A OUTPUT -d 192.168.0.0/16 -j ACCEPT
    2. # iptables -A OUTPUT -d 127.0.0.0/8 -j ACCEPT
    3. # iptables -A OUTPUT -j DROP


    So wie es aussieht, ist dies wohl der Fall. Aktuell sieht meine Iptable wie folgt aus - ist das alles noch korrekt, oder habe ich etwas verändert?



    Beste Grüße
    PlanetDyna

  • @thenail: Ich habe mich via FileZilla bzw. SSH auf den Roborock connected, die Binary-Datei (ebenfalls die Zugriffberechtigung chmod +x vergeben ) sowie Config-Datei lokal auf meinem PC gespeichert und anschließend, wie auf GitHub berschrieben, in die entsprechenden Ordner kopiert und den Dienst mit "service valetudo start" gestartet.

    Siehe dazu folgende Verweise:

    https://github.com/Hypfer/Valetudo/ (Config-Datei)
    https://github.com/Hypfer/Valetudo/releases (Binary-Datei)

  • Gibt es einen Workaround für die Ermittlung der Koordinaten für das Zone-Cleanup, oder funktioniert dieses Feature noch nicht einwandfrei? Ich würde gerne verschiedene Räume in Zonen einteilen.

    Vielen Dank im Voraus

    PD

  • Gibt es einen Workaround für die Ermittlung der Koordinaten für das Zone-Cleanup, oder funktioniert dieses Feature noch nicht einwandfrei? Ich würde gerne verschiedene Räume in Zonen einteilen.

    Vielen Dank im Voraus

    PD

    RRCC

    gibt dir die Koordinaten für die Zonen aus.


    Wenn die Karte plötzlich gedreht ist in der App(auch FloleVac), dann konnte ich trotzdem eine Zone starten und hatte dann wieder die "richtige" Karte drin... Genial (V1 FW 3357)