MapLoader: Backup / Restore der gespeicherten Karte für Roborock S50 und Xiaomi Mi Vaccum (letzterer noch ungetestet)

  • Hallo zusammen,


    kurze Beschreibung:

    - Ermöglicht Backup / Restore der aktuellen Karte des Roboters über MQTT Messages

    - Mehrere Karten speichern möglich (Sperrzonen und Absperrbänder werden mit gesichert / wiederhergestellt)


    Wofür ist das gut?

    - Wiederherstellen der Karte falls der Roboter sie fehlerhaft erweitert oder ganz verloren hat

    - Laden von verschiedenen Karten z.B. für verschiedene Stockwerke. (Wahrscheinlich pro Stockwerk ein Lade-Dock nötig damit der Robo die Karte auch nutzt).

    - Karte wieder auf "Masterkarte" zurücksetzen um z.B. in der Karte immer alle Türen als offen dargestellt zu haben. Fehlgeschlagenes Zone-Cleaning aufgrund von vormals verschlossenen Türen lässt sich so umgehen.


    Idee kam hier auf:

    Backup der gespeicherten Karte


    Anleitung und Download:

    https://github.com/Thyraz/MapLoader


    Bisher nur von mir auf dem S50 getestet und mit heißer Nadel gestrickt.

    Feedback ist gern gesehen. 😉


    Grüße,

    Tobias

  • Hallo, ich Habe nur die Grundidee dahinter gerade mal bei mir getestet.


    Ich hab die last_map, persistdata_1 & robocontroller.cfg vom Roboter gesichert. Diese anschließen auf dem Roboter entfernt und folgenden Dienst neugestalten:

    Service rrwatchdoge restart

    Service Valetudo restart (nötig, damit die Karte auch hier neu geladen wird!)


    Im Valetudo wird mir dann das standartbild „no map available“ angezeigt. Heißt die „neue“ leere Karte wurde vom Roboter ohne Start der Reinigung geladen.


    Nach dem drauf kopieren und erneuten restart ist meine Karte wieder im Valetudo zu sehen.

    Grundsätzlich sollte das also ausreichen, ist aber NICHT weiter auf weitere Auswirkungen getestet!

  • Hi,


    Ich bekomme beim Test einen Fehler:

  • Die Adresse mqtt://192.168.188.80 hat davor ein einfach Anführungszeichen, dahinter fehlt es aber.

    Füge das Mal hinzu und schaue ob das alles war was schief geht.