RoboRock Control Center - Desktop App für WIN/LIN/OSX

  • Hallo,


    da ich bei der Hitze Langeweile hatte und es bisher wohl noch keine Desktop-App gibt habe ich mal angefangen eine zu programmieren:


    screenshots.png


    Diese basiert auf Qt5 und läuft somit quasi auf allen Betriebssystemen wie Windows/Linux/MacOS.


    Als Übersetzung gibt es Deutsch und English (um Englisch zu erzwingen einfach "/lng/rrcc_de.qm" löschen).


    Der Funktionsumfang ist bisher noch recht überschaubar, Ideen sind natürlich willkommen! Allerdings werde ich keine Cloud-Features einbauen, da mein Robi nicht dran hängt und ich somit nichts testen kann.


    Keine Ahnung ob es dafür überhaupt Bedarf gibt, aber ich hänge erstmal die Versionen ohne Installer hier mit an. Vielleicht ja doch für den Einen oder Anderen nützlich.


    Das Ganze kann dann sicher auch auf Github und mit Installer für alle Betriebssysteme bereitgestellt werden, zunächst würde mich aber erstmal interessieren ob denn überhaupt Interesse da wäre und für welches Betriebssystem...


    Hinweis: folgende Funktionen sind nur auf gerooteten Geräten verfügbar

    • Token per SSH extrahieren
    • Kartenansicht über Valetudo
    • Valetudo installieren/updaten/deinstallieren
    • installierte Firmware- und Valetudo-Version anzeigen


    Änderungsübersicht


    Version 0.8.7

    • Standard-Firmwareversionen für die Suche festgelegt
    • Zoom Spinbox
    • Generation 3 zur Firmware-Suche hinzugefügt (funktioniert aber wegen der eingeführten Zufallszahlen von Roborock für alle Generationen nicht mehr)
    • 16 -> 32 Byte Konverter hinzugefügt
    • Reinigungsverlauf exportieren
    • GeheZu speichern/bearbeiten
    • bearbeiteter Bereich/GeheZu auf der Karte anzeigen
    • falsche Pfadanzeige korrigiert

    Version 0.8.6

    • Online Updater

    Version 0.8.5

    • Unterstützung für virtuelle Wände und Sperrzonen (anlegen, löschen)
    • erlaube Gehe-Zu auch außerhalb der bekannten Karte

    Version 0.8.4

    • Unterstützung für Valetudo Version >0.2.3 (websocket nur experimentell, mit "WebSocket = true" in rrcc.cfg aktivieren)
    • Zeige Flagge(n) für Gehe-Zu und Zonenreinigung


    Version 0.8.3

    • Suchen und Herunterladen der Firmware von Xiaomi-Servern
    • mehr SSH-Schlüsselformate zulassen
    • installierte Valetudo-Version anzeigen


    Version 0.8.2

    • Restlaufzeit statt Laufzeit bei Verbrauchsmaterial anzeigen
    • installierte Firmware-Version anzeigen
    • hängenbleiben bei Valetudo-Installation behoben
    • SSL-Fehler unter Linux behoben


    Version 0.8.1

    • Firmware Aktualisierung
    • Unterstützung für SSH-Schlüssel mit Passphrase
    • Konfigurationsdatei alternativ im Programmverzeichnis (portable)
    • Fehler bei Zonenreinigung behoben

    Version 0.8.0

    • Valetudo Installation/Deinstalltion
    • Fehler Stimmeninstallation behoben
    • Indikator für Kartenupdates
    • Handling für Kartenupdates geändert

    Version 0.7.1

    • fehlendes App-Icon unter Linux behoben
    • fehlende Status-Tips für Bereiche behoben
    • möglicher Absturz im Zonen-Editor behoben
    • Reinigingsbereich in Karte markieren sobald im Kontextmenu ausgewählt
    • Karten Kontextmenü vereinfacht

    Version 0.7.0

    • Bereiche speichern/editieren und per Menu reinigen
    • fehlende Tooltips ergänzt
    • fehlerhafte Bereichsmarkierung unter Mac behoben
    • fehlerhafte Anzeige beim Zurücksetzen der Verbrauchswerte behoben

    Version 0.6.0

    • Karte horizontal/vertikal spiegeln (rechte Maustaste -> hor/ver spiegeln)
    • Karte 90/180/270° rotieren (rechte Maustaste -> x° Rotieren)
    • Korrektor Y-Koordianten falls falsche Koordinaten bei Punkt-/Bereichsreinigung angefahren werden (rechte Maustaste -> Aufwärts/Abwärts tauschen)
    • Anzeige der Koordinaten bei GeheZu und Bereich

    Version 0.5.0

    • Fahre zu Punkt auf Karte (rechte Maustaste -> Gehe zu Position)
    • Punktreinigung
    • Bereichsreinigung (linke Maustaste drücken+halten und Maus verschieben)
    • Karte zoomen/verschieben (Mausrad drehen / mittlere Maustaste drücken+halten und Maus verschieben)

    Version 0.4.0

    • Kartenansicht
    • Teppich-Modus

    Version 0.3.0

    • Stimmen-Pakete (pkg) können in einen Ordner als WAV-Dateien entpackt werden
    • Token per SSH auslesen (mit private Key oder Kennwort)
    • Token-Konverter (96 Byte -> 32 Byte)
    • "Über" zeigt nun Programminfos

    Version 0.2.0

    • IP-Erkennung angepasst (nimmt nicht mehr die letzte gefundene IP sondern die zum Robo passende)
    • Sound Registerkarte unter Einstellungen hinzugefügt:
      • NichtStören-Modus ein-/ausschalten und Zeiten anpassen
      • Laustärke für Sprachausgaben einstellen
      • Stimmen als pkg hochladen/installieren
      • pkg aus Ordner mit wav Dateien erstellen

    Version 0.1.0

    • Initiale Veröffentlichung


    Quellcode


    Download


    Bier ausgeben

    Edited 32 times, last by LazyT ().

  • Damit hast du den vogel abgeschossen ! und bist für mich Der Held des Tages :thumbup::thumbup::thumbup::thumbup::thumbup::thumbup::thumbup::thumbup:

    ein Windows Tool wie geil ist das denn :)vielen vielen Dank

    mmmm zum Funktionsumfang da fällt mir die Karten Problematik ein


    Gruß olaf

    Edited 3 times, last by olaf008 ().

  • Moin LazyT,


    das finde ich ja mal richtig klasse :thumbup: vielen Dank dafür!!!


    Ja, Karte und Zonenreinigung wären natürlich toll :-)

    Und das Auslesen des Token wäre schön8)


    Beste Grüße


    Nick

  • Die Anerkennung hast du dir redlich verdient. Eine Möglichkeit des Rootens per Knopfdruck über dein Tool wäre großartig. Danke bereits ohne all die Softwarewünsche für deine Arbeit! 👍😊

  • Grundsätzlich finde ich es auch super, was du machst. Ich verstehe auch, dass du keine Cloud-Features nutzen möchtest. Aber warum möchte dein Programm unbedingt in's Internet und funktioniert ansonsten nicht korrekt?

  • Ja, Karte und Zonenreinigung wären cool. Leider habe ich mich damit noch nicht groß beschäftigt. Hat jemand ein paar Tipps dazu? Was liest man da aus, Koordinaten? Was macht man dann damit: Punkte machen/Linien ziehen/Rechtecke zeichnen?


    Was bedeutet "ins Internet"? Ich mache einen Broadcast um den Robi zu finden, sobald er antwortet bzw. die IP eingeben wurde wird die Kommunikation direkt zwischen PC und Robi aufgebaut. Ins Internet sollte da eigentlich gar nichts gehen...

  • In's Internet: das war eine Info meiner Firewall - die habe ich nicht weiter hinterfragt.

    Aber irgendwie bekomme ich auch keinen Zugriff. Mein V1 ist bereits gerootet, Token ist bekannt. Über meine Hausautomation (FHEM) kann ich auch auf den Robby zugreifen.


    IP und Token habe ich unter Konfiguration eingetragen und gespeichert Mit Nachrichten-ID kann ich nichts anfangen. WLAN Anmeldedaten zum Gerät übertragen macht keinen Sinn, da diese Daten bereits vorhanden sind (versucht habe ich es dennoch, brachte aber auch keinen Erfolg).


    Dann "Aktualisiere" ich und bekomme die Fehlermeldung: "Zeitüberschreitung der Nachrichtenverbindung". In der Netzwerkanalyse sehe ich, dass rrcc versucht, zwischen den IP's 192.168.0.91 (mein Robby) und 192.168.50.1 (gibt es bei mir im Netz nicht) eine Verbindung aufzubauen.

    Ich hoffe, das hilft die bei der Analyse.

  • zwischen den IP's 192.168.0.91 (mein Robby) und 192.168.50.1 (gibt es bei mir im Netz nicht) eine Verbindung aufzubauen

    Kann es sein, dass dein PC mehrere Netzwerkkarten (z.B. LAN + WAN) hat oder eine davon mehrere IPs zugewiesen hat?


    Das wäre dann in der Tat noch ein Problem, habe es nur mit 1 aktiven probiert und ich denke er nimmt dann momentan einfach die letzte IP die er findet... :(

  • Ja, mein PC hat mehrere Netzwerkkarten (bereits VMWare richtet bei der Installation bereits 2 Netzwerkadapter ein (virtuelle). Einer von denen hat auch die 192.168.50.1. Die gibt es bei mir also doch, nur merke ich normalerweise davon nichts, da diese IP nur VMWare intern verwendet wird.

    Ich bin jetzt nicht der Netzwerker, könnte mir aber vorstellen, dass du bei den Einstellungen nicht nur die IP vom Robby sondern auch die Gatewayadresse abfragen solltest. Dann ist man schon zumindest im richtigen Netzwerksegment.

  • Finde die Idee auch total super. Da wo die App schwächelt, kannst du ansetzen und es besser machen. Wenn die Datei dann größer wird, einfach auf einem Cloudspeicher verlinken.

  • Ja, Karte und Zonenreinigung wären cool. Leider habe ich mich damit noch nicht groß beschäftigt. Hat jemand ein paar Tipps dazu? Was liest man da aus, Koordinaten? Was macht man dann damit: Punkte machen/Linien ziehen/Rechtecke zeichnen?...

    vielleicht findet Flole einen Augenblick Zeit, um etwas dazu zu sagen?!


    Beste Grüße


    Nick

  • So, Lautstärke- und DND-Steuerung eingebaut.


    Hätte mal jemand ein paar pkg von Xiaomi damit ich den Stimmen-Upload einbauen kann? Habe die App nicht installiert und weiß nicht wo ich die Stimmen runterladen kann?

  • Keine Ahnung ob es dafür überhaupt Bedarf gibt, aber ich hänge erstmal die Windowsversion ohne Installer hier mit an (wegen dem 8MB Limit 2 Dateien, einfach zusammen entpacken).

    Moin Moin LazyT!

    Vielen Dank für die tolle App!

    Bzgl. 8MB Limit => nimm 7Zip und machs in nem 7z format mit Ultra Komprimierung => 7 MB groß :)


    Bin gespannt wie du es weiterentwickelst!


    Könntest du ggf. rechts bei der CleaningZusammenfassung noch m² und h als Größen hinzufügen?

  • tarantel4me

    Hab dir heute früh eine Testversion per PN geschickt falls noch nicht gesehen.


    Henne78

    Ok danke, probier ich Morgen mal aus. Den erforderlichen Webserver hab ich schon eingebaut, mal sehen ob der so minimal schon ausreicht.


    nicedevil

    Ja, 7z hatte ich zuerst bis ich sah das nur zip erlaubt ist. Wäre dann also ein win.7z.zip und ob das so gängig für alle wäre?


    m² und h hatte ich erst drin, sah dann aber so doof aus...