Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Vorlage] Roborock Gen1 - Einzelraumreinigung mit Valetudo

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    490

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.4k

[Vorlage] Roborock Gen1 - Einzelraumreinigung mit Valetudo

Scheduled Pinned Locked Moved Skripten / Logik
javascripttemplate
26 Posts 5 Posters 4.9k Views 10 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • AlCalzoneA AlCalzone

    @ntsa86 Dazu musst du eigentlich nur eine Einzelraumreinigung starten. Beim Start checkt das Skript die Ausrichtung, sofern du mindestens 1x kurz den Sauger an hattest, um einen Teil der Karte aufzubauen.

    N Offline
    N Offline
    ntsa86
    wrote on last edited by
    #6

    @AlCalzone

    Ok habe ich eben nochmal gestartet (Script erkannte: 90°). Dabei dreht er meine Zonen nun um 90° - muss somit wohl die Koordinaten anpassen. Habe diese direkt aus Valetudo rausgenommen (über http://<ip>/api/get_config).

    Somit wird dann aus

    "Haus": [[21721,21190,28482,32195] -> Valetudo
    "Haus": [[29479,30010,2271819005] -> 51200 - "Valetudo-Korrdinaten"

    Hab ich gemacht. Ging schief. :-)

    Die originalen Valetudo Zonen sehen wie folgt aus:

    haus_valetudo_zone.PNG

    Das Script macht dann daraus:

    haus_script_zone.PNG

    Was mach ich falsch?

    VG & Danke für deine Geduld. :-)

    AlCalzoneA 2 Replies Last reply
    0
    • N ntsa86

      @AlCalzone

      Ok habe ich eben nochmal gestartet (Script erkannte: 90°). Dabei dreht er meine Zonen nun um 90° - muss somit wohl die Koordinaten anpassen. Habe diese direkt aus Valetudo rausgenommen (über http://<ip>/api/get_config).

      Somit wird dann aus

      "Haus": [[21721,21190,28482,32195] -> Valetudo
      "Haus": [[29479,30010,2271819005] -> 51200 - "Valetudo-Korrdinaten"

      Hab ich gemacht. Ging schief. :-)

      Die originalen Valetudo Zonen sehen wie folgt aus:

      haus_valetudo_zone.PNG

      Das Script macht dann daraus:

      haus_script_zone.PNG

      Was mach ich falsch?

      VG & Danke für deine Geduld. :-)

      AlCalzoneA Offline
      AlCalzoneA Offline
      AlCalzone
      Developer
      wrote on last edited by AlCalzone
      #7

      @ntsa86 Das Skript geht davon aus, dass der Roboter normalerweise links steht. Könnte ich ggf noch anpassbar machen.

      Ändere bitte folgende Zeilen bei dir (angenommen du verwendest Version 3):

      Zeilen 95-98:

              "0": "Robo unten vom Dock",
              "90": "Robo rechts vom Dock",
              "180": "Robo oben vom Dock",
              "270": "Robo links vom Dock",
      

      Zeilen 142-153:

          if (angle <= 45 && angle >= -45) {
              // Sauger steht rechts
              return 90;
          } else if (angle > 45 && angle < 135) {
              // Sauger steht oben
              return 180;
          } else if (angle < -45 && angle > -135) {
              // Sauger steht unten
              return 0;
          } else {
              // Sauger steht links
              return 270;
          }
      

      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

      1 Reply Last reply
      0
      • N ntsa86

        @AlCalzone

        Ok habe ich eben nochmal gestartet (Script erkannte: 90°). Dabei dreht er meine Zonen nun um 90° - muss somit wohl die Koordinaten anpassen. Habe diese direkt aus Valetudo rausgenommen (über http://<ip>/api/get_config).

        Somit wird dann aus

        "Haus": [[21721,21190,28482,32195] -> Valetudo
        "Haus": [[29479,30010,2271819005] -> 51200 - "Valetudo-Korrdinaten"

        Hab ich gemacht. Ging schief. :-)

        Die originalen Valetudo Zonen sehen wie folgt aus:

        haus_valetudo_zone.PNG

        Das Script macht dann daraus:

        haus_script_zone.PNG

        Was mach ich falsch?

        VG & Danke für deine Geduld. :-)

        AlCalzoneA Offline
        AlCalzoneA Offline
        AlCalzone
        Developer
        wrote on last edited by
        #8

        @ntsa86 sagte in [Vorlage] Roborock Gen1 - Einzelraumreinigung mit Valetudo:

        [[29479,30010,2271819005] -> 51200 - "Valetudo-Korrdinaten"

        Und das gilt nur für die y-Werte, also den 2. und 4.
        Die x-Koordinaten darfst du nicht anfassen!

        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

        N 2 Replies Last reply
        0
        • AlCalzoneA AlCalzone

          @ntsa86 sagte in [Vorlage] Roborock Gen1 - Einzelraumreinigung mit Valetudo:

          [[29479,30010,2271819005] -> 51200 - "Valetudo-Korrdinaten"

          Und das gilt nur für die y-Werte, also den 2. und 4.
          Die x-Koordinaten darfst du nicht anfassen!

          N Offline
          N Offline
          ntsa86
          wrote on last edited by
          #9

          @AlCalzone Danke, jetzt hat es geklappt!

          1 Reply Last reply
          0
          • 0 Offline
            0 Offline
            0018
            wrote on last edited by
            #10

            Hallo,

            habe Valetudo RE 0.8.1 auf meinem Gen1. Kann mir jemand sagen wie ich dort die Koordinaten meiner angelegten Zonen auslesen kann, damit ich diese im Skript eintragen kann?

            Mfg
            0018

            AlCalzoneA N 2 Replies Last reply
            0
            • 0 0018

              Hallo,

              habe Valetudo RE 0.8.1 auf meinem Gen1. Kann mir jemand sagen wie ich dort die Koordinaten meiner angelegten Zonen auslesen kann, damit ich diese im Skript eintragen kann?

              AlCalzoneA Offline
              AlCalzoneA Offline
              AlCalzone
              Developer
              wrote on last edited by AlCalzone
              #11

              @0018 Ich weiß nicht ob es einen einfachereren Weg gibt, aber wenn du eine Zone anlegst, anschließend die Developer-Tools (F12) öffnest und dort die Netzwerkanalyse startest, dann die Seite neu lädst, gibt es eine Anfrage an "get_config". Dort sind die Zonen enthalten:
              d16a2cc2-9f81-4612-8156-04f75de3c8b5-grafik.png

              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

              1 Reply Last reply
              0
              • 0 0018

                Hallo,

                habe Valetudo RE 0.8.1 auf meinem Gen1. Kann mir jemand sagen wie ich dort die Koordinaten meiner angelegten Zonen auslesen kann, damit ich diese im Skript eintragen kann?

                N Offline
                N Offline
                ntsa86
                wrote on last edited by
                #12

                @0018

                Zonen in Valetudo anlegen und dann im Browser http://<ip>/api/get_config aufrufen. Natürlich die IP deines Robbi verwenden.

                0 1 Reply Last reply
                0
                • N ntsa86

                  @0018

                  Zonen in Valetudo anlegen und dann im Browser http://<ip>/api/get_config aufrufen. Natürlich die IP deines Robbi verwenden.

                  0 Offline
                  0 Offline
                  0018
                  wrote on last edited by 0018
                  #13

                  @ntsa86 sagte in [Vorlage] Roborock Gen1 - Einzelraumreinigung mit Valetudo:

                  http://<ip>/api/get_config

                  Wunderbar, hat direkt geklappt! Danke :+1:

                  Mfg
                  0018

                  1 Reply Last reply
                  0
                  • AlCalzoneA AlCalzone

                    @ntsa86 sagte in [Vorlage] Roborock Gen1 - Einzelraumreinigung mit Valetudo:

                    [[29479,30010,2271819005] -> 51200 - "Valetudo-Korrdinaten"

                    Und das gilt nur für die y-Werte, also den 2. und 4.
                    Die x-Koordinaten darfst du nicht anfassen!

                    N Offline
                    N Offline
                    ntsa86
                    wrote on last edited by
                    #14

                    @AlCalzone

                    Zu Früh gefreut. Er kommt mit den GoTo nicht zurecht. Die Zonen werden aber richtig ausgerichtet. Gibts die Möglichkeit den GoTo Befehl auszukommentieren (zum Test).

                    Aktuell fährt er nur rum und sucht seinen Punkt:

                    7B1A99EB-0791-4A9A-AA85-50B9FD3660F1.jpeg

                    AlCalzoneA 1 Reply Last reply
                    0
                    • N ntsa86

                      @AlCalzone

                      Zu Früh gefreut. Er kommt mit den GoTo nicht zurecht. Die Zonen werden aber richtig ausgerichtet. Gibts die Möglichkeit den GoTo Befehl auszukommentieren (zum Test).

                      Aktuell fährt er nur rum und sucht seinen Punkt:

                      7B1A99EB-0791-4A9A-AA85-50B9FD3660F1.jpeg

                      AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      wrote on last edited by
                      #15

                      @ntsa86 Der GoTo-Punkt liegt immer in der Mitte der Zone (bzw. des ersten Abschnitts). Vermutlich ist das bei dir hinter einer Wand. Kommentiere folgende Zeilen aus:
                      bf1b5490-c121-47fc-8187-8e95272eee6c-grafik.png

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      1 Reply Last reply
                      0
                      • T Offline
                        T Offline
                        TemPeck
                        wrote on last edited by TemPeck
                        #16

                        Moin!

                        Ich habe es heute endlich geschafft, Valetudo auf meinen Vacuum v1 zu bekommen.
                        So weit so gut....

                        Leider habe ich Probleme mit dem Script - es wird folgender Fehler ausgegeben:

                        javascript.0 (30625) script.js.Test.Rockrobo2: TypeScript compilation failed: import axios from "axios"; ^ ERROR: Cannot find module 'axios'.
                        

                        Nun meine vllt. etwas doofe Frage:
                        Wo muss ich dieses Modul installieren?
                        Habe mich über ssh beim iobroker eingeloggt und mit

                        npm install axios -S
                        

                        eigentlich (so dachte ich) axios installiert.

                        Habe ich da etwas falsch verstanden?

                        Edit: Im Javascript-Adapter habe ich unter "Zusätzliche NPM-Module" auch axios eingetragen. Hilft trotzdem nix....

                        Grüße!

                        AlCalzoneA 1 Reply Last reply
                        0
                        • T TemPeck

                          Moin!

                          Ich habe es heute endlich geschafft, Valetudo auf meinen Vacuum v1 zu bekommen.
                          So weit so gut....

                          Leider habe ich Probleme mit dem Script - es wird folgender Fehler ausgegeben:

                          javascript.0 (30625) script.js.Test.Rockrobo2: TypeScript compilation failed: import axios from "axios"; ^ ERROR: Cannot find module 'axios'.
                          

                          Nun meine vllt. etwas doofe Frage:
                          Wo muss ich dieses Modul installieren?
                          Habe mich über ssh beim iobroker eingeloggt und mit

                          npm install axios -S
                          

                          eigentlich (so dachte ich) axios installiert.

                          Habe ich da etwas falsch verstanden?

                          Edit: Im Javascript-Adapter habe ich unter "Zusätzliche NPM-Module" auch axios eingetragen. Hilft trotzdem nix....

                          Grüße!

                          AlCalzoneA Offline
                          AlCalzoneA Offline
                          AlCalzone
                          Developer
                          wrote on last edited by
                          #17

                          @TemPeck sagte in [Vorlage] Roborock Gen1 - Einzelraumreinigung mit Valetudo:

                          eigentlich (so dachte ich) axios installiert.

                          So nicht, so:

                          Im Javascript-Adapter habe ich unter "Zusätzliche NPM-Module" auch axios eingetragen

                          Eigentlich müsste es so funktionieren. Hast du bei der richtigen Instanz installiert? Gewartet, bis die Installation im Log als abgeschlossen steht?

                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                          1 Reply Last reply
                          0
                          • T Offline
                            T Offline
                            TemPeck
                            wrote on last edited by
                            #18

                            Ich habe nur eine Javascript-Instanz. Und laut log müsste es auch installiert sein:

                            2020-03-28 22:20:37.561 - info: host.iobroker instance system.adapter.javascript.0 started with pid 30625
                            2020-03-28 22:20:40.422 - info: javascript.0 (30625) starting. Version 4.4.3 in /opt/iobroker/node_modules/iobroker.javascript, node: v10.17.0
                            2020-03-28 22:20:40.454 - info: javascript.0 (30625) npm install axios --production --prefix "/opt/iobroker/node_modules/iobroker.javascript" (System call)
                            2020-03-28 22:20:42.755 - info: javascript.0 (30625) + axios@0.19.2
                            added 4 packages from 7 contributors and audited 29 packages in 1.399s
                            2020-03-28 22:20:42.756 - info: javascript.0 (30625) found 0 vulnerabilities
                            2020-03-28 22:20:42.811 - info: javascript.0 (30625) requesting all states
                            2020-03-28 22:20:42.813 - info: javascript.0 (30625) requesting all objects
                            

                            Meinst du, dass die Installation über "npm install axios -S" irgendwelche Probleme verursacht haben könnte?

                            AlCalzoneA 1 Reply Last reply
                            0
                            • T TemPeck

                              Ich habe nur eine Javascript-Instanz. Und laut log müsste es auch installiert sein:

                              2020-03-28 22:20:37.561 - info: host.iobroker instance system.adapter.javascript.0 started with pid 30625
                              2020-03-28 22:20:40.422 - info: javascript.0 (30625) starting. Version 4.4.3 in /opt/iobroker/node_modules/iobroker.javascript, node: v10.17.0
                              2020-03-28 22:20:40.454 - info: javascript.0 (30625) npm install axios --production --prefix "/opt/iobroker/node_modules/iobroker.javascript" (System call)
                              2020-03-28 22:20:42.755 - info: javascript.0 (30625) + axios@0.19.2
                              added 4 packages from 7 contributors and audited 29 packages in 1.399s
                              2020-03-28 22:20:42.756 - info: javascript.0 (30625) found 0 vulnerabilities
                              2020-03-28 22:20:42.811 - info: javascript.0 (30625) requesting all states
                              2020-03-28 22:20:42.813 - info: javascript.0 (30625) requesting all objects
                              

                              Meinst du, dass die Installation über "npm install axios -S" irgendwelche Probleme verursacht haben könnte?

                              AlCalzoneA Offline
                              AlCalzoneA Offline
                              AlCalzone
                              Developer
                              wrote on last edited by
                              #19

                              @TemPeck Ich vermute eher, dass TypeScript sich an etwas verschluckt hat - obwohl die Fixes schon länger im Adapter enthalten sein müssten. Setz mal //@ts-ignore über die Import-Zeile.

                              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                              1 Reply Last reply
                              0
                              • T Offline
                                T Offline
                                TemPeck
                                wrote on last edited by
                                #20

                                Erledigt - nun taucht kein Fehler auf.

                                16:06:26.443	info	javascript.0 (1227) script.js.Test.Rockrobo2: compiling TypeScript source...
                                16:06:26.599	info	javascript.0 (1227) script.js.Test.Rockrobo2: TypeScript compilation successful
                                16:06:26.611	info	javascript.0 (1227) script.js.Test.Rockrobo2: registered 7 subscriptions and 0 schedules
                                

                                Ob alles klappt, kann ich erst später testen.

                                Vielen Dank für den Support!

                                1 Reply Last reply
                                0
                                • T Offline
                                  T Offline
                                  TemPeck
                                  wrote on last edited by
                                  #21

                                  Okay ich habe jetzt mal nur den Raum "Küche" angelegt und mit den umgerechneten Koordinaten im Script eingefügt.

                                  Sobald ich den Datenpunkt Küche unter javascript.0.Staubsauger mit "wahr" belege, sollte er anfangen, oder hab ich da was falsch verstanden?

                                  Im log passiert daraufhin lediglich folgendes:

                                  javascript.0	2020-03-29 17:12:13.285	info	(1227) script.js.Test.Rockrobo2: Teste Kartenorientierung...
                                  

                                  danach passiert nichts mehr.

                                  Wenn ich das im Script richtig sehe, sollte danach etwas mit axios "passieren".
                                  Scheint mir, als wäre der Fehler daher nicht behoben, oder?

                                  Grüße!

                                  AlCalzoneA 1 Reply Last reply
                                  0
                                  • T TemPeck

                                    Okay ich habe jetzt mal nur den Raum "Küche" angelegt und mit den umgerechneten Koordinaten im Script eingefügt.

                                    Sobald ich den Datenpunkt Küche unter javascript.0.Staubsauger mit "wahr" belege, sollte er anfangen, oder hab ich da was falsch verstanden?

                                    Im log passiert daraufhin lediglich folgendes:

                                    javascript.0	2020-03-29 17:12:13.285	info	(1227) script.js.Test.Rockrobo2: Teste Kartenorientierung...
                                    

                                    danach passiert nichts mehr.

                                    Wenn ich das im Script richtig sehe, sollte danach etwas mit axios "passieren".
                                    Scheint mir, als wäre der Fehler daher nicht behoben, oder?

                                    Grüße!

                                    AlCalzoneA Offline
                                    AlCalzoneA Offline
                                    AlCalzone
                                    Developer
                                    wrote on last edited by
                                    #22

                                    @TemPeck sagte in [Vorlage] Roborock Gen1 - Einzelraumreinigung mit Valetudo:

                                    Wenn ich das im Script richtig sehe, sollte danach etwas mit axios "passieren".

                                    Ja, sollte es. Bekommst du eine Antwort, wenn du manuell im Browser http://<dein-robo-hostname>/api/map/latest öffnest?

                                    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                    1 Reply Last reply
                                    0
                                    • T Offline
                                      T Offline
                                      TemPeck
                                      wrote on last edited by
                                      #23

                                      Ja, er lädt eine 1KB große Datei mit dem Namen "latest"

                                      AlCalzoneA 1 Reply Last reply
                                      0
                                      • T TemPeck

                                        Ja, er lädt eine 1KB große Datei mit dem Namen "latest"

                                        AlCalzoneA Offline
                                        AlCalzoneA Offline
                                        AlCalzone
                                        Developer
                                        wrote on last edited by
                                        #24

                                        Ich hab da noch ne Idee: Du hast keine Authentifizierung aktiviert, aber im Skript die Zeilen 5-8 drin gelassen?

                                        const valetudoAuth = {
                                        	username: "valetudo-username",
                                        	password: "valetudo-password"
                                        };
                                        

                                        Lösch die mal raus oder kommentiere sie aus ( // davor)

                                        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                        T 1 Reply Last reply
                                        0
                                        • AlCalzoneA AlCalzone

                                          Ich hab da noch ne Idee: Du hast keine Authentifizierung aktiviert, aber im Skript die Zeilen 5-8 drin gelassen?

                                          const valetudoAuth = {
                                          	username: "valetudo-username",
                                          	password: "valetudo-password"
                                          };
                                          

                                          Lösch die mal raus oder kommentiere sie aus ( // davor)

                                          T Offline
                                          T Offline
                                          TemPeck
                                          wrote on last edited by
                                          #25

                                          @AlCalzone Das Auskommentieren (später - bei mir Zeile 107 - muss dann in der Folge auch noch einmal ausgeklammert werden) sowie der Versuch, die HTTP-Authentifizierung zu aktivieren und die Zugangsdaten einzutragen, haben jeweils wieder das selbe Ergebnis erbracht... :/

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          522

                                          Online

                                          32.7k

                                          Users

                                          82.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe