Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. map für xiaomi / roborock Staubsauger

NEWS

  • Der neue Monatsrückblick für Mai und Juni 2026 ist online!
    BluefoxB
    Bluefox
    8
    1
    885

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    10
    1
    3.5k

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    16
    1
    5.8k

map für xiaomi / roborock Staubsauger

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
mihomemapstaubsauger
16 Beiträge 4 Kommentatoren 173 Aufrufe 2 Beobachtet
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • F Online
    F Online
    fastfoot
    schrieb am zuletzt editiert von
    #6

    Raspberry Pi

    iobroker läuft unter Docker auf Windows (WSL2)

    bahnuhrB 1 Antwort Letzte Antwort
    0
    • F fastfoot

      Raspberry Pi

      bahnuhrB Online
      bahnuhrB Online
      bahnuhr
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #7

      @fastfoot
      habe iob schon seit Jahren in einer VM auf proxmox.


      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
      Danke.
      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
      ScreenToGif :https://www.screentogif.com/downloads.html

      1 Antwort Letzte Antwort
      0
      • F Online
        F Online
        fastfoot
        schrieb am zuletzt editiert von
        #8

        log durchkämmen, ist dein roboter supported, objekte löschen und nach neustart adapter nachsehen. ist ein folder map mit drei states drinnen. was zeigt der roborock tab? gibts die map in deiner app?

        sonst bliebe ein issue zu erstellen

        iobroker läuft unter Docker auf Windows (WSL2)

        bahnuhrB 1 Antwort Letzte Antwort
        0
        • F fastfoot

          log durchkämmen, ist dein roboter supported, objekte löschen und nach neustart adapter nachsehen. ist ein folder map mit drei states drinnen. was zeigt der roborock tab? gibts die map in deiner app?

          sonst bliebe ein issue zu erstellen

          bahnuhrB Online
          bahnuhrB Online
          bahnuhr
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #9

          @fastfoot sagte:

          log durchkämmen

          nix drin

          @fastfoot sagte:

          dein roboter supported

          natürlich

          @fastfoot sagte:

          nach neustart adapter nachsehen

          nix drin

          @fastfoot sagte:

          folder map mit drei states drinnen.

          nein (sonst hätte ich nicht geschrieben)

          @fastfoot sagte:

          was zeigt der roborock tab

          ist grün (oder meinst du was anderes ?)

          @fastfoot sagte:

          map in deiner app

          natürlich

          @fastfoot sagte:

          sonst bliebe ein issue zu erstellen

          ne, mach ich nicht.
          Habe ich bei mihome-vacuum schon probiert.
          Antwort war: Dafür habe ich momentan keine ressourcen.


          Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
          Danke.
          gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
          ScreenToGif :https://www.screentogif.com/downloads.html

          haselchenH 1 Antwort Letzte Antwort
          0
          • bahnuhrB bahnuhr

            @fastfoot sagte:

            log durchkämmen

            nix drin

            @fastfoot sagte:

            dein roboter supported

            natürlich

            @fastfoot sagte:

            nach neustart adapter nachsehen

            nix drin

            @fastfoot sagte:

            folder map mit drei states drinnen.

            nein (sonst hätte ich nicht geschrieben)

            @fastfoot sagte:

            was zeigt der roborock tab

            ist grün (oder meinst du was anderes ?)

            @fastfoot sagte:

            map in deiner app

            natürlich

            @fastfoot sagte:

            sonst bliebe ein issue zu erstellen

            ne, mach ich nicht.
            Habe ich bei mihome-vacuum schon probiert.
            Antwort war: Dafür habe ich momentan keine ressourcen.

            haselchenH Offline
            haselchenH Offline
            haselchen
            Most Active
            schrieb am zuletzt editiert von
            #10

            @bahnuhr

            Bei mir funktioniert es auch seit mindestens einem Jahr nicht mehr mit dem Mihome-Vacuum.
            Hab gerade überlegt ob man nicht einfach den Google KI Modus oder ChatGPT nach ner Lösung fragt 😄

            Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.7, Nodejs 22.22.2 ,JS Controller 7.0.7 ,Admin 7.8.24

            bahnuhrB 1 Antwort Letzte Antwort
            0
            • haselchenH haselchen

              @bahnuhr

              Bei mir funktioniert es auch seit mindestens einem Jahr nicht mehr mit dem Mihome-Vacuum.
              Hab gerade überlegt ob man nicht einfach den Google KI Modus oder ChatGPT nach ner Lösung fragt 😄

              bahnuhrB Online
              bahnuhrB Online
              bahnuhr
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #11

              @haselchen
              Hallo, ja mihome funktioniert schon länger nicht.
              Deshalb ja der Versuch mit roborock.
              funktioniert aber auch nicht (zumindest bei mir)

              Und ja, chatgpt hab ich versucht.
              Erst wurde mihome-vacuum empfohlen; dann gesagt dass dieser nicht mehr geht; dann wurde roborock empfohlen; geht aber auch nicht; dann wurde ein Script ohne Adapter erstellt, hab ich noch nicht hinbekommen.

              Anbei Script, vielleicht findest du eine Lösung. Danke für die Info.

              
              
              // map_fetch.js
              // Node.js Skript zum Abruf der Roborock-Map (Base64) via MiIO (lokal)
              
              const miio = require('miio');
              const fs = require('fs');
              const path = require('path');
              
              const ip = '192.168.xxx.xxx';          // <-- deine Roborock-IP hier
              const token = "xxx";
              const outputDir = '/opt/iobroker/roborock_maps'; // OUTPUT_PATH hier, z.B. ein Ordner für Maps
              
              // Liste potenzieller Map-Property-Namen (je nach Firmware/Adapter-Version)
              const propCandidates = [
                'map_image',
                'mapImage',
                'map_image_base64',
                'map_image_base64_string',
                'mapData',
                'lastMap',
                'currentMap',
                'last_map',
                'map'
              ];
              
              function ensureDir(dir) {
                if (!fs.existsSync(dir)) {
                  fs.mkdirSync(dir, { recursive: true });
                }
              }
              
              (async () => {
                try {
                  ensureDir(outputDir);
              
                  console.log(`Verbinde mit ${ip} ...`);
                  const device = await miio.device({ address: ip, token: token });
              
                  // Test: einfache Prop-Abfrage, um Funktion zu prüfen
                  // (Hinweis: je nach Funktion kann diese Abfrage fehlschlagen, wir verwenden fallbacks weiter unten)
                  // const test = await device.call('get_prop', [['battery']]);
                  // console.log('Battery:', test);
              
                  let found = false;
                  for (const name of propCandidates) {
                    try {
                      // Versuch, das Property zu lesen
                      const res = await device.call('get_prop', [[name]]);
                      const val = res && res[0] ? res[0] : null;
              
                      if (val && typeof val === 'string' && val.trim().length > 0) {
                        console.log(`Gefundenes Map-Property: ${name}`);
                        // Decide, ob es Base64-Bild oder JSON ist
                        const isBase64 = /^[A-Za-z0-9+/= \n\r]+$/.test(val) && val.length > 100;
                        if (isBase64) {
                          // Entferne ggf. Whitespaces/newlines
                          const base64 = val.replace(/\s+/g, '');
                          // Dateinamen
                          const t = new Date().toISOString().replace(/[:.]/g, '-');
                          const filePath = path.join(outputDir, `roborock_map_${name}_${t}.png`);
                          // Speichern als PNG (Base64 speichern)
                          fs.writeFileSync(filePath, Buffer.from(base64, 'base64'));
                          console.log(`Map (Base64) gespeichert: ${filePath}`);
                        } else {
                          // Falls JSON oder anderer String: versuch als JSON zu speichern
                          try {
                            const json = JSON.parse(val);
                            const filePath = path.join(outputDir, `roborock_map_${name}_${Date.now()}.json`);
                            fs.writeFileSync(filePath, JSON.stringify(json, null, 2));
                            console.log(`Map-Daten als JSON gespeichert: ${filePath}`);
                          } catch (e) {
                            // Fallback: reiner String
                            const filePath = path.join(outputDir, `roborock_map_${name}_${Date.now()}.txt`);
                            fs.writeFileSync(filePath, val);
                            console.log(`Map-String gespeichert: ${filePath}`);
                          }
                        }
                        found = true;
                        break;
                      } else {
                        // Kein nutzbarer Wert
                        // console.log(`Prop ${name} leer`);
                      }
                    } catch (err) {
                      // Proxy-Fehler bei diesem Prop, weiter zum nächsten
                      // console.error(`Fehler bei ${name}:`, err.message);
                    }
                  }
              
                  if (!found) {
                    console.log('Keine Map- oder MapData-Property gefunden. Prüfe Firmware/Token/Names.');
                  }
              
                } catch (err) {
                  console.error('Fehler beim Map-Abruf:', err.message);
                }
              })();
              

              Dein Token musst du finden; gibt im Netz einen token Extractor.


              Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
              Danke.
              gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
              ScreenToGif :https://www.screentogif.com/downloads.html

              haselchenH 1 Antwort Letzte Antwort
              0
              • bahnuhrB bahnuhr

                @haselchen
                Hallo, ja mihome funktioniert schon länger nicht.
                Deshalb ja der Versuch mit roborock.
                funktioniert aber auch nicht (zumindest bei mir)

                Und ja, chatgpt hab ich versucht.
                Erst wurde mihome-vacuum empfohlen; dann gesagt dass dieser nicht mehr geht; dann wurde roborock empfohlen; geht aber auch nicht; dann wurde ein Script ohne Adapter erstellt, hab ich noch nicht hinbekommen.

                Anbei Script, vielleicht findest du eine Lösung. Danke für die Info.

                
                
                // map_fetch.js
                // Node.js Skript zum Abruf der Roborock-Map (Base64) via MiIO (lokal)
                
                const miio = require('miio');
                const fs = require('fs');
                const path = require('path');
                
                const ip = '192.168.xxx.xxx';          // <-- deine Roborock-IP hier
                const token = "xxx";
                const outputDir = '/opt/iobroker/roborock_maps'; // OUTPUT_PATH hier, z.B. ein Ordner für Maps
                
                // Liste potenzieller Map-Property-Namen (je nach Firmware/Adapter-Version)
                const propCandidates = [
                  'map_image',
                  'mapImage',
                  'map_image_base64',
                  'map_image_base64_string',
                  'mapData',
                  'lastMap',
                  'currentMap',
                  'last_map',
                  'map'
                ];
                
                function ensureDir(dir) {
                  if (!fs.existsSync(dir)) {
                    fs.mkdirSync(dir, { recursive: true });
                  }
                }
                
                (async () => {
                  try {
                    ensureDir(outputDir);
                
                    console.log(`Verbinde mit ${ip} ...`);
                    const device = await miio.device({ address: ip, token: token });
                
                    // Test: einfache Prop-Abfrage, um Funktion zu prüfen
                    // (Hinweis: je nach Funktion kann diese Abfrage fehlschlagen, wir verwenden fallbacks weiter unten)
                    // const test = await device.call('get_prop', [['battery']]);
                    // console.log('Battery:', test);
                
                    let found = false;
                    for (const name of propCandidates) {
                      try {
                        // Versuch, das Property zu lesen
                        const res = await device.call('get_prop', [[name]]);
                        const val = res && res[0] ? res[0] : null;
                
                        if (val && typeof val === 'string' && val.trim().length > 0) {
                          console.log(`Gefundenes Map-Property: ${name}`);
                          // Decide, ob es Base64-Bild oder JSON ist
                          const isBase64 = /^[A-Za-z0-9+/= \n\r]+$/.test(val) && val.length > 100;
                          if (isBase64) {
                            // Entferne ggf. Whitespaces/newlines
                            const base64 = val.replace(/\s+/g, '');
                            // Dateinamen
                            const t = new Date().toISOString().replace(/[:.]/g, '-');
                            const filePath = path.join(outputDir, `roborock_map_${name}_${t}.png`);
                            // Speichern als PNG (Base64 speichern)
                            fs.writeFileSync(filePath, Buffer.from(base64, 'base64'));
                            console.log(`Map (Base64) gespeichert: ${filePath}`);
                          } else {
                            // Falls JSON oder anderer String: versuch als JSON zu speichern
                            try {
                              const json = JSON.parse(val);
                              const filePath = path.join(outputDir, `roborock_map_${name}_${Date.now()}.json`);
                              fs.writeFileSync(filePath, JSON.stringify(json, null, 2));
                              console.log(`Map-Daten als JSON gespeichert: ${filePath}`);
                            } catch (e) {
                              // Fallback: reiner String
                              const filePath = path.join(outputDir, `roborock_map_${name}_${Date.now()}.txt`);
                              fs.writeFileSync(filePath, val);
                              console.log(`Map-String gespeichert: ${filePath}`);
                            }
                          }
                          found = true;
                          break;
                        } else {
                          // Kein nutzbarer Wert
                          // console.log(`Prop ${name} leer`);
                        }
                      } catch (err) {
                        // Proxy-Fehler bei diesem Prop, weiter zum nächsten
                        // console.error(`Fehler bei ${name}:`, err.message);
                      }
                    }
                
                    if (!found) {
                      console.log('Keine Map- oder MapData-Property gefunden. Prüfe Firmware/Token/Names.');
                    }
                
                  } catch (err) {
                    console.error('Fehler beim Map-Abruf:', err.message);
                  }
                })();
                

                Dein Token musst du finden; gibt im Netz einen token Extractor.

                haselchenH Offline
                haselchenH Offline
                haselchen
                Most Active
                schrieb am zuletzt editiert von
                #12

                @bahnuhr

                Bin erst in 2 Wochen wieder im Lande .
                Ich packs mir mal auf die To-Do-Liste

                Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.7, Nodejs 22.22.2 ,JS Controller 7.0.7 ,Admin 7.8.24

                bahnuhrB 1 Antwort Letzte Antwort
                0
                • haselchenH haselchen

                  @bahnuhr

                  Bin erst in 2 Wochen wieder im Lande .
                  Ich packs mir mal auf die To-Do-Liste

                  bahnuhrB Online
                  bahnuhrB Online
                  bahnuhr
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #13

                  @haselchen sagte:

                  Bin erst in 2 Wochen wieder im Lande .

                  Schönen Urlaub.


                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                  Danke.
                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                  ScreenToGif :https://www.screentogif.com/downloads.html

                  1 Antwort Letzte Antwort
                  0
                  • bahnuhrB bahnuhr

                    Hallo,

                    wie holt ihr die map für eueren Staubsauger ?

                    mihome-vaccum und roboroch Adapter funktionieren ja nicht mehr diesbezüglich.

                    Gibt es die map nicht mehr; oder wie macht ihr dies ?

                    mfg
                    Dieter

                    Eduard77E Online
                    Eduard77E Online
                    Eduard77
                    schrieb am zuletzt editiert von
                    #14

                    @bahnuhr
                    Ich habe lange nach einer Lösung gesucht und auch gehofft, dass der Adapter Entwickler mit einem Update das fixt.

                    Aber vor ein paar Wochen habe ich aufgegeben und meine VIS2 umgebaut ohne Map Darstellung.

                    1 Antwort Letzte Antwort
                    0
                    • F Online
                      F Online
                      fastfoot
                      schrieb zuletzt editiert von
                      #15

                      da scheint sich jetzt etwas zu tun: https://forum.iobroker.net/post/1350541

                      iobroker läuft unter Docker auf Windows (WSL2)

                      haselchenH 1 Antwort Letzte Antwort
                      0
                      • F fastfoot

                        da scheint sich jetzt etwas zu tun: https://forum.iobroker.net/post/1350541

                        haselchenH Offline
                        haselchenH Offline
                        haselchen
                        Most Active
                        schrieb zuletzt editiert von haselchen
                        #16

                        @fastfoot

                        DAS sich etwas tut ist super.
                        Leider passen die Voraussetzungen für viele, auch für mich nicht.
                        Welche habe ich unter dem Post vom Entwickler geschrieben.

                        Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.7, Nodejs 22.22.2 ,JS Controller 7.0.7 ,Admin 7.8.24

                        1 Antwort Letzte Antwort
                        0

                        Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                        Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                        Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                        Registrieren Anmelden
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate
                        FAQ Cloud / IOT
                        HowTo: Node.js-Update
                        HowTo: Backup/Restore
                        Downloads
                        BLOG

                        268

                        Online

                        33.0k

                        Benutzer

                        83.5k

                        Themen

                        1.3m

                        Beiträge
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2026
                        logo
                        • Anmelden

                        • Du hast noch kein Konto? Registrieren

                        • Anmelden oder registrieren, um zu suchen
                        • Erster Beitrag
                          Letzter Beitrag
                        0
                        • Home
                        • Aktuell
                        • Tags
                        • Ungelesen 0
                        • Kategorien
                        • Unreplied
                        • Beliebt
                        • GitHub
                        • Docu
                        • Hilfe