Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [Frage] Xiaomi Vacuum cleaner

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.5k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.7k

[Frage] Xiaomi Vacuum cleaner

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
2.2k Beiträge 204 Kommentatoren 976.3k Aufrufe 39 Watching
  • Ä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.
  • N Offline
    N Offline
    nathan1312
    schrieb am zuletzt editiert von
    #2049

    Hi, kommen denn deine Befehle im Datenpunkt IFTTT.value an? Hast du das geprüft?

    1 Antwort Letzte Antwort
    0
    • M Offline
      M Offline
      maxpd
      schrieb am zuletzt editiert von
      #2050

      Ich glaube es klappt nu. Der Staubsauger war im Standby..

      Kann meinen Beitrag leider nicht löschen.

      Gruß
      maxpd

      Raspi 4 8gb | iobroker + pivccu3 | 46 Adapter | 68 Scripte, 120 Devices

      1 Antwort Letzte Antwort
      0
      • T trollmar

        Hi,

        als ich heute nach hause kam schlief mein "Robert" im Flur.

        Die Bürsten waren blockiert da er etwas eingezogen hatte.

        In welchem STATE wird das ausgegeben? Würde mir das dann gerne via Telegram Adapter schicken lassen.

        LG

        D Offline
        D Offline
        dali3
        schrieb am zuletzt editiert von
        #2051

        @klassisch said in [Frage] Xiaomi Vacuum cleaner:

        /*   List of states
        			1 unknown state
        			2 sleep no Charge
        			3 sleep
        			5 cleaning
        			6 returning home
        			7 manual mode
        			8 charging
        			10 paused
        			11 spot cleaning
        			12 Error
        */			
        
        

        Wenn sich meiner verhakt, gibts die 12 und dann sende ich eine email mit "Help"

        Hallo zusammen, gibt es eine neue Liste?
        Ich bekomme während der Reinigung folgenden Meldung (mihome-vacuum.0.info.state) --> Zone cleaning (17).

        Leider ist im neuem Forum die Suche "schwierig".

        Danke!

        Systeminfo:
        Iobroker Pro, Surface 3 (Mobil), Acer T272 (Wand), Raspberry Pi 3, NUC, Synology DS212j (BackUp), Google Home, Xiaomi Aqara (Sensoren, Fühler, Kamera, LED), Revo Superconnect, Philips Hue, IKEA Tradfri...

        K B 2 Antworten Letzte Antwort
        0
        • D dali3

          @klassisch said in [Frage] Xiaomi Vacuum cleaner:

          /*   List of states
          			1 unknown state
          			2 sleep no Charge
          			3 sleep
          			5 cleaning
          			6 returning home
          			7 manual mode
          			8 charging
          			10 paused
          			11 spot cleaning
          			12 Error
          */			
          
          

          Wenn sich meiner verhakt, gibts die 12 und dann sende ich eine email mit "Help"

          Hallo zusammen, gibt es eine neue Liste?
          Ich bekomme während der Reinigung folgenden Meldung (mihome-vacuum.0.info.state) --> Zone cleaning (17).

          Leider ist im neuem Forum die Suche "schwierig".

          Danke!

          K Offline
          K Offline
          klassisch
          Most Active
          schrieb am zuletzt editiert von
          #2052

          @dali3 Ich selbst habe noch das Modell 1 und keine Frimwareupdates durchgeführt. Sorry!

          1 Antwort Letzte Antwort
          0
          • C Offline
            C Offline
            Coffeelover
            schrieb am zuletzt editiert von
            #2053

            Hallo in die Runde!
            Ich habe in nodered ein Skript, welches den Robbie via App Command zum Räume reinigen schicke. Das blöde: der Befehl kommt zwar im iobroker an, startet aber nicht. Syntaktisch ist er aber korrekt. Wenn ich selbst in den Editor in iobroker gehe und den bestehenden String nur mit Enter bestätige ist alles fein und Robbie läuft los. Was mache ich falsch?
            Vg

            1 Antwort Letzte Antwort
            0
            • L Offline
              L Offline
              ltsalvatore
              schrieb am zuletzt editiert von
              #2054

              ich muss auch noch mal in die runde frage..
              gibt es mittlerweile eine lösung zu dem problem, dass sich die karte immer um 90 grad dreht bei dem vacuum 1?
              würde gerne endlich mal die zonenreinigung in iobroker einrichten.

              1 Antwort Letzte Antwort
              0
              • D dali3

                @klassisch said in [Frage] Xiaomi Vacuum cleaner:

                /*   List of states
                			1 unknown state
                			2 sleep no Charge
                			3 sleep
                			5 cleaning
                			6 returning home
                			7 manual mode
                			8 charging
                			10 paused
                			11 spot cleaning
                			12 Error
                */			
                
                

                Wenn sich meiner verhakt, gibts die 12 und dann sende ich eine email mit "Help"

                Hallo zusammen, gibt es eine neue Liste?
                Ich bekomme während der Reinigung folgenden Meldung (mihome-vacuum.0.info.state) --> Zone cleaning (17).

                Leider ist im neuem Forum die Suche "schwierig".

                Danke!

                B Offline
                B Offline
                Bluelightcrew
                schrieb am zuletzt editiert von
                #2055

                @dali3

                 if (v_Error === 0) v_Text = "no Error";
                 if (v_Error === 1) v_Text = "Laser distance sensor error";
                 if (v_Error === 2) v_Text = "Collision sensor error";
                 if (v_Error === 3) v_Text = "Wheels on top of void, move robot";
                 if (v_Error === 4) v_Text = "Clean hovering sensors, move robot";
                 if (v_Error === 5) v_Text = "Clean main brush";
                 if (v_Error === 6) v_Text = "Clean side brush";
                 if (v_Error === 7) v_Text = "Main wheel stuck?";
                 if (v_Error === 8) v_Text = "Device stuck, clean area";
                 if (v_Error === 9) v_Text = "Dust collector missing";
                 if (v_Error === 10) v_Text = "Clean filter";
                 if (v_Error === 11) v_Text = "Stuck in magnetic barrier";
                 if (v_Error === 12) v_Text = "Low battery";
                 if (v_Error === 13) v_Text = "Charging fault";
                 if (v_Error === 14) v_Text = "Battery fault";
                 if (v_Error === 15) v_Text = "Wall sensors dirty, wipe them";
                 if (v_Error === 16) v_Text = "Place me on flat surface";
                 if (v_Error === 17) v_Text = "Side brushes problem, reboot me";
                 if (v_Error === 18) v_Text = "Suction fan problem";
                 if (v_Error === 19) v_Text = "Unpowered charging station";
                
                1 Antwort Letzte Antwort
                0
                • N Nitro25NOH

                  Hallo,

                  Wieviel Zonen kann ich gleichzeitig in "zoneclean" eingeben?

                  Ich hake vor der Reinigung in ioBroker die Zu reinigen Räume an. diese sind mit den jeweiligen Koordinaten der Zone hinterlegt. Wenn ich mehrere Zonen anklicke werden diese Als Zeichenkette in dem Adapter eingetragen.

                  Allerdings bin ich anscheinend auf eine Gewisse Anzahl von Zonen begrenzt die er bearbeiten kann.

                  Wenn ich 5 Zonen anhake startet er normal, Zeichnet diese auch in der App ein und arbeitet sie nacheinander ab.

                  Nehme ich aber eine 6. hinzufüge scheint das Ding immer "abzuschmieren".

                  Sieht dann so aus: [20242,25174,27692,29224,1],[20128,29562,22828,34062,1],[23290,29748,26340,34098,1],[26560,29714,28660,30564,1],[26976,30807,28076,33607,1],[29345,29766,31445,33866,1]

                  Heist: Die App reagiert total verzögert auf ankommende Informationen und der Sauger lässt sich nicht mehr über die App bedienen.

                  Gestern hat er sich dann bei einem erneuten Versuch sogar so "weggehängt" das er sich anscheinen resetet hat.

                  Sprache war auf einmal Englisch, die Verbindung zur App war nicht mehr möglich. Ich muss alles neu anlegen und wahrscheinlich hat sich der token auch geändert. ich hab keine Verbindung mehr zu ioBroker.

                  hat jemand Erfahrungen mit dieser Anzahl an zu reinigenden Zonen? Oder ist der Roboter eventuell auf eine maximale Anzahl an Zeichen in dieser Funktion begrenzt??

                  Grüße Christian

                  juergen2908J Offline
                  juergen2908J Offline
                  juergen2908
                  schrieb am zuletzt editiert von
                  #2056

                  @Nitro25NOH Wie hast du genau in deiner VIS gemacht, damit du einfach nur die Zonen anhacken musst? Lg Jürgen

                  B 1 Antwort Letzte Antwort
                  0
                  • juergen2908J juergen2908

                    @Nitro25NOH Wie hast du genau in deiner VIS gemacht, damit du einfach nur die Zonen anhacken musst? Lg Jürgen

                    B Offline
                    B Offline
                    Brati
                    schrieb am zuletzt editiert von
                    #2057

                    @juergen2908

                    VIS alleine schafft das nicht. Wenn du immer nur eine Zone reinigen möchtest, kannst du per VIS Button den Befehl in den State "mihome-vacuum.0.control.zoneClean" schreiben. Ansonsten musst du das per Script zusammen basteln:

                    Zwischenablage01.jpg

                    Diese View steuert das Script.

                    var IDRobo      =   "mihome-vacuum.0.control.X_send_command"/*send command*/,
                        IDFan       =   "mihome-vacuum.0.control.fan_power"/*Suction power*/,
                        IDGoTo      =   "mihome-vacuum.0.control.goTo"/*Go to point*/,
                        IDZoneClean =   "mihome-vacuum.0.control.zoneClean"/*Clean a zone*/,
                        IDCarpet    =   "mihome-vacuum.0.control.carpet_mode"/*Carpet mode*/,
                        IDStartClean=   'mihome-vacuum.0.control.start'/*Start vacuum*/,
                        Zone1       =   "[26100,24500,29500,29000,1]", // Wohnzimmer incl. Teppich bis Terrasse
                        Zone2       =   "[22500,25200,26000,29000,1]", // Wohnzimmer Teppichkante bis Tür
                        Zone3       =   "[22500,25200,25900,26350,1]",// Wohnzimmer nur Laufbereich bis Teppichkante
                        Zone3a      =  "[22500,25500,23100,28500,1]",// Wohnzimmer nur Laufbereich vor der Küche
                        Zone4       =   "[18600,27050,22500,28600,1]", // Küche komplett
                        Zone4a      =   "[18600,27250,22250,28600,1]", // Küche Laufbereich
                        Zone5       =   "[18500,24800,22500,26650,1]", // Flur komplett
                        Zone6       =   "[21400,25000,22500,26700,1]", // Flur nur bis Treppe
                        ZoneP       =   "app_goto_target; [20400,27600]", // vor dem Mülleimer parken
                        Zone        =   "",
                        Timertaeglich,
                        Logging     =   true,
                        tag         =   new Date().getDay(), 
                                  
                        Urlaub, timer, Gaeste, Anwesen, Verlass, KinderD, Tuer, Morjens, Morjenslos, TuerSchlaf, Feier      =   false;
                        
                    // setState(IDRobo, "app_zoned_clean;[" + Zone4a + "]"); // Zone testen
                    // setState(IDRobo, ZoneP);                             // Zielpunkt testen
                    
                    /*app_zoned_clean;[[27200,28800,28300,32700,1]] unten links, oben rechts, Anzahl */
                    
                    /* Zusammensetzen der Zonen für die Reinigung */
                    function RZone(){
                            Zone        =   "";        
                            if (getState("javascript.0.Roborock.Zone1").val) Zone = Zone1;
                            if (getState("javascript.0.Roborock.Zone2").val && Zone !=="") Zone = Zone + "," + Zone2;
                            if (getState("javascript.0.Roborock.Zone2").val && Zone ==="") Zone = Zone2;
                            if (getState("javascript.0.Roborock.Zone3").val && Zone !=="") Zone = Zone + "," + Zone3;
                            if (getState("javascript.0.Roborock.Zone3").val && Zone ==="") Zone = Zone3;
                            if (getState("javascript.0.Roborock.Zone4").val && Zone !=="") Zone = Zone + "," + Zone4;
                            if (getState("javascript.0.Roborock.Zone4").val && Zone ==="") Zone = Zone4;
                            if (getState("javascript.0.Roborock.Zone5").val && Zone !=="") Zone = Zone + "," + Zone5;
                            if (getState("javascript.0.Roborock.Zone5").val && Zone ==="") Zone = Zone5;
                        
                       Zone= "app_zoned_clean;[" + Zone + "]";
                    }
                    
                        
                    /* aktuelle Randbedingungen abfragen */
                    function VarStatus(){
                        Urlaub  = getState("hm-rega.0.2638"/*Urlaub*/).val;
                        Gaeste  = getState("hm-rega.0.3469"/*Gaeste*/).val;
                        Anwesen = getState("hm-rega.0.7028"/*Anwesenheit*/).val;
                        Verlass = getState("hm-rega.0.13102"/*Verlassen*/).val;
                        KinderD = getState("hm-rega.0.25633"/*Kinderdienst*/).val;
                        Tuer    = getState("hm-rpc.0.LEQ1468275.1.STATE"/*Wohnzimmer Kontakt Tuer.STATE*/).val;
                        Feier   = getState("feiertage.0.heute.boolean"/*Feiertag heute?*/).val;
                        tag     = new Date().getDay();
                        Morjens = getState("javascript.0.Roborock.Morjens").val;
                    }
                    
                    
                    /* Zone auf Abruf in Vis */
                    on({id: new RegExp('javascript\\.0\\.Roborock\\.Zone1' + "|" + 'javascript\\.0\\.Roborock\\.Zone2' + "|" + 'javascript\\.0\\.Roborock\\.Zone3' + "|" + 'javascript\\.0\\.Roborock\\.Zone4' + "|" + 'javascript\\.0\\.Roborock\\.Zone5'), val: true}, function (obj) {
                        
                        if (timer) clearTimeout(timer);
                        timer = setTimeout(function () {
                            RZone();
                            setState(IDFan, 77);
                            setState(IDCarpet, true);
                            setState(IDRobo, Zone);
                            setState("javascript.0.Roborock.Zone1", false);
                            setState("javascript.0.Roborock.Zone2", false);
                            setState("javascript.0.Roborock.Zone3", false);
                            setState("javascript.0.Roborock.Zone4", false);
                            setState("javascript.0.Roborock.Zone5", false);
                            }, 10000);
                    });
                    
                    
                    
                    /* tägliche Reinigung alles*/
                    
                    function TimerSetzen(value) {
                        value   = value.split(":");
                    var time    = value[1] + " " + value[0] + " * * *"; 
                        log("täglicher Zeit: " + time);
                        Timertaeglich   =   schedule(time, function (){
                            Reinigungtaegl ();
                        });
                    };
                    
                    on({id: 'javascript.0.Roborock.Timer.Time', change: "ne"}, function (obj) {
                        var value = obj.state.val;
                        var oldValue = obj.oldState.val;
                        TimerSetzen(value);
                        clearSchedule(Timertaeglich);
                    });
                    
                    TimerSetzen(getState('javascript.0.Roborock.Timer.Time').val);
                    
                    function Reinigungtaegl() {
                        VarStatus();
                        
                        if (!Urlaub && getState("javascript.0.Roborock.Timer." + tag).val) {
                            setState(IDFan, 77);
                            setState(IDCarpet, true);
                            setState(IDStartClean, true);
                            sendTo("pushover.0", {
                                    message:  'tägliche Reinigung!', // mandatory - your text message
                                    title:    'Roborock', // optional  - your message's title, otherwise your app's name is used
                                    priority: -1,});
                        }
                    };
                    
                    /* früh den Laufbereich */
                    schedule("30 4 * * 1-5", function () {
                        Morjenslos = true;
                        });
                    
                    schedule("30 8 * * 1-5", function () {
                        Morjenslos = false;
                        });
                    
                    on({id: 'mihome.0.devices.magnet_158d0002bf95de.state'/*Is opened*/, val: false}, function (obj) {    
                        VarStatus();
                        MorjensReinigung();
                    });
                    
                    function MorjensReinigung(){
                        if (!Urlaub && !Feier && !Tuer && !Gaeste && Morjens && Morjenslos) {
                            Zone        =   "app_zoned_clean;[" + Zone4a + "," + Zone3a + "," + Zone3 + "," + Zone6 + "]";
                            Morjenslos = false;
                            setState(IDFan, 60);
                            setState(IDCarpet, false);
                            setState(IDRobo, Zone);
                        }
                    }
                    
                    
                    createState('Roborock.Timer.1', false,{type: "boolean",name:"Montag",  role: "Montag"});
                    createState('Roborock.Timer.2', false,{type: "boolean",name:"Dienstag",  role: "Dienstag"});
                    createState('Roborock.Timer.3', false,{type: "boolean",name:"Mittwoch",  role: "Mittwoch"});
                    createState('Roborock.Timer.4', false,{type: "boolean",name:"Donnerstag",  role: "Donnerstag"});
                    createState('Roborock.Timer.5', false,{type: "boolean",name:"Freitag",  role: "Freitag"});
                    createState('Roborock.Timer.Time', "14:00:00",{type: "string",name:"Startzeit",  role: "Startzeit"});
                    createState('Roborock.Zone1', false,{type: "boolean",name:"Zone 1",  role: "Wz incl Teppich bis Terrasse"});
                    createState('Roborock.Zone2', false,{type: "boolean",name:"Zone 2",  role: "Wz ab Teppich bis Tür"});
                    createState('Roborock.Zone3', false,{type: "boolean",name:"Zone 3",  role: "Wz Laufbereich"});
                    createState('Roborock.Zone4', false,{type: "boolean",name:"Zone 4",  role: "Küche komplett"});
                    createState('Roborock.Zone5', false,{type: "boolean",name:"Zone 5",  role: "Flur komplett"});
                    createState('Roborock.Zone6', false,{type: "boolean",name:"Zone 6",  role: "Flur vor der Treppe"});
                    createState('Roborock.Morjens', true,{type: "boolean",name:"Morjens reinigen",  role: "Morjens reinigen"});
                    
                    

                    Man kann die Zonen wählen, alles reinigen, die tägliche Reinigung einstellen...

                    Ich habe schon ein paar Dinge rausgelöscht, morgens reinigen triggert zum Beispiel die Schlafzimmertür, erst wenn der Erste aufgestanden ist und diese geschlossen wird, düst er los...

                    Grüße

                    Brati

                    CCU2 - 46 Geräte, ioBroker auf Intel NUC (DN2820FYKH) mit Tab als Frontend, Projekt Gartenhaus mit HM

                    F 1 Antwort Letzte Antwort
                    0
                    • S Offline
                      S Offline
                      sabphil22
                      schrieb am zuletzt editiert von sabphil22
                      #2058

                      Hi, ich hab ein Problem bei der Zonenreinigung. Einige Zonen werden ganz normal angesteuert und werden mir auch richtig in der App angezeigt. Bei zwei Zimmer, die nebeneinander liegen wird keine Zonen in der App angezeigt. Er fängt dann mit einer kompletten Reinigung an.
                      Hab schon probiert die Zimmer in mehrere Zonen zu unterteilen um nicht über die Wände zu kommen. Ist es richtig wenn ich die einzelnen Zonen mit Komma und Leerzeichen trenne?

                      Grüße Philippe

                      1 Antwort Letzte Antwort
                      0
                      • B Brati

                        @juergen2908

                        VIS alleine schafft das nicht. Wenn du immer nur eine Zone reinigen möchtest, kannst du per VIS Button den Befehl in den State "mihome-vacuum.0.control.zoneClean" schreiben. Ansonsten musst du das per Script zusammen basteln:

                        Zwischenablage01.jpg

                        Diese View steuert das Script.

                        var IDRobo      =   "mihome-vacuum.0.control.X_send_command"/*send command*/,
                            IDFan       =   "mihome-vacuum.0.control.fan_power"/*Suction power*/,
                            IDGoTo      =   "mihome-vacuum.0.control.goTo"/*Go to point*/,
                            IDZoneClean =   "mihome-vacuum.0.control.zoneClean"/*Clean a zone*/,
                            IDCarpet    =   "mihome-vacuum.0.control.carpet_mode"/*Carpet mode*/,
                            IDStartClean=   'mihome-vacuum.0.control.start'/*Start vacuum*/,
                            Zone1       =   "[26100,24500,29500,29000,1]", // Wohnzimmer incl. Teppich bis Terrasse
                            Zone2       =   "[22500,25200,26000,29000,1]", // Wohnzimmer Teppichkante bis Tür
                            Zone3       =   "[22500,25200,25900,26350,1]",// Wohnzimmer nur Laufbereich bis Teppichkante
                            Zone3a      =  "[22500,25500,23100,28500,1]",// Wohnzimmer nur Laufbereich vor der Küche
                            Zone4       =   "[18600,27050,22500,28600,1]", // Küche komplett
                            Zone4a      =   "[18600,27250,22250,28600,1]", // Küche Laufbereich
                            Zone5       =   "[18500,24800,22500,26650,1]", // Flur komplett
                            Zone6       =   "[21400,25000,22500,26700,1]", // Flur nur bis Treppe
                            ZoneP       =   "app_goto_target; [20400,27600]", // vor dem Mülleimer parken
                            Zone        =   "",
                            Timertaeglich,
                            Logging     =   true,
                            tag         =   new Date().getDay(), 
                                      
                            Urlaub, timer, Gaeste, Anwesen, Verlass, KinderD, Tuer, Morjens, Morjenslos, TuerSchlaf, Feier      =   false;
                            
                        // setState(IDRobo, "app_zoned_clean;[" + Zone4a + "]"); // Zone testen
                        // setState(IDRobo, ZoneP);                             // Zielpunkt testen
                        
                        /*app_zoned_clean;[[27200,28800,28300,32700,1]] unten links, oben rechts, Anzahl */
                        
                        /* Zusammensetzen der Zonen für die Reinigung */
                        function RZone(){
                                Zone        =   "";        
                                if (getState("javascript.0.Roborock.Zone1").val) Zone = Zone1;
                                if (getState("javascript.0.Roborock.Zone2").val && Zone !=="") Zone = Zone + "," + Zone2;
                                if (getState("javascript.0.Roborock.Zone2").val && Zone ==="") Zone = Zone2;
                                if (getState("javascript.0.Roborock.Zone3").val && Zone !=="") Zone = Zone + "," + Zone3;
                                if (getState("javascript.0.Roborock.Zone3").val && Zone ==="") Zone = Zone3;
                                if (getState("javascript.0.Roborock.Zone4").val && Zone !=="") Zone = Zone + "," + Zone4;
                                if (getState("javascript.0.Roborock.Zone4").val && Zone ==="") Zone = Zone4;
                                if (getState("javascript.0.Roborock.Zone5").val && Zone !=="") Zone = Zone + "," + Zone5;
                                if (getState("javascript.0.Roborock.Zone5").val && Zone ==="") Zone = Zone5;
                            
                           Zone= "app_zoned_clean;[" + Zone + "]";
                        }
                        
                            
                        /* aktuelle Randbedingungen abfragen */
                        function VarStatus(){
                            Urlaub  = getState("hm-rega.0.2638"/*Urlaub*/).val;
                            Gaeste  = getState("hm-rega.0.3469"/*Gaeste*/).val;
                            Anwesen = getState("hm-rega.0.7028"/*Anwesenheit*/).val;
                            Verlass = getState("hm-rega.0.13102"/*Verlassen*/).val;
                            KinderD = getState("hm-rega.0.25633"/*Kinderdienst*/).val;
                            Tuer    = getState("hm-rpc.0.LEQ1468275.1.STATE"/*Wohnzimmer Kontakt Tuer.STATE*/).val;
                            Feier   = getState("feiertage.0.heute.boolean"/*Feiertag heute?*/).val;
                            tag     = new Date().getDay();
                            Morjens = getState("javascript.0.Roborock.Morjens").val;
                        }
                        
                        
                        /* Zone auf Abruf in Vis */
                        on({id: new RegExp('javascript\\.0\\.Roborock\\.Zone1' + "|" + 'javascript\\.0\\.Roborock\\.Zone2' + "|" + 'javascript\\.0\\.Roborock\\.Zone3' + "|" + 'javascript\\.0\\.Roborock\\.Zone4' + "|" + 'javascript\\.0\\.Roborock\\.Zone5'), val: true}, function (obj) {
                            
                            if (timer) clearTimeout(timer);
                            timer = setTimeout(function () {
                                RZone();
                                setState(IDFan, 77);
                                setState(IDCarpet, true);
                                setState(IDRobo, Zone);
                                setState("javascript.0.Roborock.Zone1", false);
                                setState("javascript.0.Roborock.Zone2", false);
                                setState("javascript.0.Roborock.Zone3", false);
                                setState("javascript.0.Roborock.Zone4", false);
                                setState("javascript.0.Roborock.Zone5", false);
                                }, 10000);
                        });
                        
                        
                        
                        /* tägliche Reinigung alles*/
                        
                        function TimerSetzen(value) {
                            value   = value.split(":");
                        var time    = value[1] + " " + value[0] + " * * *"; 
                            log("täglicher Zeit: " + time);
                            Timertaeglich   =   schedule(time, function (){
                                Reinigungtaegl ();
                            });
                        };
                        
                        on({id: 'javascript.0.Roborock.Timer.Time', change: "ne"}, function (obj) {
                            var value = obj.state.val;
                            var oldValue = obj.oldState.val;
                            TimerSetzen(value);
                            clearSchedule(Timertaeglich);
                        });
                        
                        TimerSetzen(getState('javascript.0.Roborock.Timer.Time').val);
                        
                        function Reinigungtaegl() {
                            VarStatus();
                            
                            if (!Urlaub && getState("javascript.0.Roborock.Timer." + tag).val) {
                                setState(IDFan, 77);
                                setState(IDCarpet, true);
                                setState(IDStartClean, true);
                                sendTo("pushover.0", {
                                        message:  'tägliche Reinigung!', // mandatory - your text message
                                        title:    'Roborock', // optional  - your message's title, otherwise your app's name is used
                                        priority: -1,});
                            }
                        };
                        
                        /* früh den Laufbereich */
                        schedule("30 4 * * 1-5", function () {
                            Morjenslos = true;
                            });
                        
                        schedule("30 8 * * 1-5", function () {
                            Morjenslos = false;
                            });
                        
                        on({id: 'mihome.0.devices.magnet_158d0002bf95de.state'/*Is opened*/, val: false}, function (obj) {    
                            VarStatus();
                            MorjensReinigung();
                        });
                        
                        function MorjensReinigung(){
                            if (!Urlaub && !Feier && !Tuer && !Gaeste && Morjens && Morjenslos) {
                                Zone        =   "app_zoned_clean;[" + Zone4a + "," + Zone3a + "," + Zone3 + "," + Zone6 + "]";
                                Morjenslos = false;
                                setState(IDFan, 60);
                                setState(IDCarpet, false);
                                setState(IDRobo, Zone);
                            }
                        }
                        
                        
                        createState('Roborock.Timer.1', false,{type: "boolean",name:"Montag",  role: "Montag"});
                        createState('Roborock.Timer.2', false,{type: "boolean",name:"Dienstag",  role: "Dienstag"});
                        createState('Roborock.Timer.3', false,{type: "boolean",name:"Mittwoch",  role: "Mittwoch"});
                        createState('Roborock.Timer.4', false,{type: "boolean",name:"Donnerstag",  role: "Donnerstag"});
                        createState('Roborock.Timer.5', false,{type: "boolean",name:"Freitag",  role: "Freitag"});
                        createState('Roborock.Timer.Time', "14:00:00",{type: "string",name:"Startzeit",  role: "Startzeit"});
                        createState('Roborock.Zone1', false,{type: "boolean",name:"Zone 1",  role: "Wz incl Teppich bis Terrasse"});
                        createState('Roborock.Zone2', false,{type: "boolean",name:"Zone 2",  role: "Wz ab Teppich bis Tür"});
                        createState('Roborock.Zone3', false,{type: "boolean",name:"Zone 3",  role: "Wz Laufbereich"});
                        createState('Roborock.Zone4', false,{type: "boolean",name:"Zone 4",  role: "Küche komplett"});
                        createState('Roborock.Zone5', false,{type: "boolean",name:"Zone 5",  role: "Flur komplett"});
                        createState('Roborock.Zone6', false,{type: "boolean",name:"Zone 6",  role: "Flur vor der Treppe"});
                        createState('Roborock.Morjens', true,{type: "boolean",name:"Morjens reinigen",  role: "Morjens reinigen"});
                        
                        

                        Man kann die Zonen wählen, alles reinigen, die tägliche Reinigung einstellen...

                        Ich habe schon ein paar Dinge rausgelöscht, morgens reinigen triggert zum Beispiel die Schlafzimmertür, erst wenn der Erste aufgestanden ist und diese geschlossen wird, düst er los...

                        Grüße

                        Brati

                        F Offline
                        F Offline
                        fischmir
                        schrieb am zuletzt editiert von
                        #2059

                        @Brati Kannst du mir deine log()-Methode schicken? (Skriptfehler)... danke!

                        B 1 Antwort Letzte Antwort
                        0
                        • F fischmir

                          @Brati Kannst du mir deine log()-Methode schicken? (Skriptfehler)... danke!

                          B Offline
                          B Offline
                          Brati
                          schrieb am zuletzt editiert von
                          #2060

                          @fischmir sagte in [Frage] Xiaomi Vacuum cleaner:

                          @Brati Kannst du mir deine log()-Methode schicken? (Skriptfehler)... danke!

                          Welche log Methode meinst du? Die Variable logging lege ich bei der Entwicklung immer mit an, hab sie hier aber gar nicht verwendet.

                          Das Script stark vereinfacht, habe ich hier noch mal gepostet

                          https://forum.iobroker.net/post/256428

                          Grüße Brati

                          CCU2 - 46 Geräte, ioBroker auf Intel NUC (DN2820FYKH) mit Tab als Frontend, Projekt Gartenhaus mit HM

                          1 Antwort Letzte Antwort
                          0
                          • L looxer01

                            @Meistertr:

                            jedoch hat man hier keine Einfluss auf die formatierung oder liege ich da falsch? Über Dass Html widget ist es alles super formatiert.. `

                            Man kann auch formatieren aber weniger flexibel. Dafuer ist es aber sehr einfach einzubinden und anzupassen.

                            Mit der Formatierung des HTML Widgets habe ich ein Problem. Die Spalte "Flaeche" läuft ueber und wird daher zweizeilig dargestellt.

                            Die Schrift laesst sich zwar verkleinern, allerdings muss sie so klein dargestellt werden, dass es kaum noch lesbar ist.

                            und 1000 Dank fuer deine Muehe den View mit allem drum und dran zur Verfuegung zu stellen. So konnte ich relativ schnell meine Anpassungen vornehmen: siehe unten.

                            Dort siehst du auch das Formatierungsproblem mit dem HTML Widget.

                            305_robert.jpg

                            F Offline
                            F Offline
                            fabian.krauss
                            schrieb am zuletzt editiert von
                            #2061

                            @looxer01 said in [Frage] Xiaomi Vacuum cleaner:

                            @Meistertr:

                            jedoch hat man hier keine Einfluss auf die formatierung oder liege ich da falsch? Über Dass Html widget ist es alles super formatiert.. `

                            Man kann auch formatieren aber weniger flexibel. Dafuer ist es aber sehr einfach einzubinden und anzupassen.

                            Mit der Formatierung des HTML Widgets habe ich ein Problem. Die Spalte "Flaeche" läuft ueber und wird daher zweizeilig dargestellt.

                            Die Schrift laesst sich zwar verkleinern, allerdings muss sie so klein dargestellt werden, dass es kaum noch lesbar ist.

                            und 1000 Dank fuer deine Muehe den View mit allem drum und dran zur Verfuegung zu stellen. So konnte ich relativ schnell meine Anpassungen vornehmen: siehe unten.

                            Dort siehst du auch das Formatierungsproblem mit dem HTML Widget.

                            305_robert.jpg

                            Kann mir jemand zu dieser Frage die Lösung/Antwort sagen? Der Thread geht ja sehr durcheinander

                            S 1 Antwort Letzte Antwort
                            0
                            • F Offline
                              F Offline
                              FloJo
                              schrieb am zuletzt editiert von
                              #2062

                              Hallo Zusammen,
                              Ich habe mittlerweile auch den Roboter in iobroker eingefügt und beschäftige mich jetzt mit der Zonenreinigung. Leider wird bei mir unter dem Adapter nur Spotcleaning und kein zoneclean unter control angezeigt. Hat jemand ne Ahnung woran das liegt und kann mir helfen?

                              Danke
                              Flo

                              O 1 Antwort Letzte Antwort
                              0
                              • F FloJo

                                Hallo Zusammen,
                                Ich habe mittlerweile auch den Roboter in iobroker eingefügt und beschäftige mich jetzt mit der Zonenreinigung. Leider wird bei mir unter dem Adapter nur Spotcleaning und kein zoneclean unter control angezeigt. Hat jemand ne Ahnung woran das liegt und kann mir helfen?

                                Danke
                                Flo

                                O Offline
                                O Offline
                                oetti
                                schrieb am zuletzt editiert von
                                #2063

                                @FloJo sagte in [Frage] Xiaomi Vacuum cleaner:

                                Hallo Zusammen,
                                Ich habe mittlerweile auch den Roboter in iobroker eingefügt und beschäftige mich jetzt mit der Zonenreinigung. Leider wird bei mir unter dem Adapter nur Spotcleaning und kein zoneclean unter control angezeigt. Hat jemand ne Ahnung woran das liegt und kann mir helfen?

                                Danke
                                Flo

                                Bei SpotCleaning dreht der Roboter nur eine Runde um sich selbst (glaube ich zumindest).
                                Probier mal "ZoneClean" aus und gib eine Zone in der Form [x1,y1,x2,y2,i] ein.

                                x1,y1 = Koordinaten linke untere Ecke
                                x2,y2 = Koordinaten rechte obere Ecke
                                i = Anzahl Reinigungen

                                Basis hat immer 25500 (x), 25500 (y) als Ausgangskoordinaten.

                                Gruß
                                oetti

                                ioBroker 4.0.10 (master) (CentOS 7 auf ESXi 6.7) | ioBroker 4.0.10 (Slave #1) VM | ioBroker 4.0.10 (Slave #2) (RPI 3)

                                1 Antwort Letzte Antwort
                                0
                                • L Offline
                                  L Offline
                                  Leviathan09
                                  schrieb am zuletzt editiert von
                                  #2064

                                  Wie bekommt ihr das hin das der Vacuum V1 mehrere Zonen nacheinander reinigt?
                                  Ich habe aktuell die Firmware 3.3.9.3600 mit Valetudo 0.3.1 am laufen.
                                  Habe mir nun über das Valetudo Webinterface meinen Zonen angelegt (die Koordinaten stehen in der /config.json)
                                  Wähle ich nun z.B. meine Zone Flur aus, welche aus zwei kleinen Zonen besteht, über das Webinterface aus funktioniert die Reinigung perfekt.
                                  Gebe ich die gleichen Koordinaten über den iobroker unter "ZoneClean" ein fährt der Robo kurz nach vorne, bricht dann ab und fährt ans Dock zurück.

                                  B 1 Antwort Letzte Antwort
                                  0
                                  • L Leviathan09

                                    Wie bekommt ihr das hin das der Vacuum V1 mehrere Zonen nacheinander reinigt?
                                    Ich habe aktuell die Firmware 3.3.9.3600 mit Valetudo 0.3.1 am laufen.
                                    Habe mir nun über das Valetudo Webinterface meinen Zonen angelegt (die Koordinaten stehen in der /config.json)
                                    Wähle ich nun z.B. meine Zone Flur aus, welche aus zwei kleinen Zonen besteht, über das Webinterface aus funktioniert die Reinigung perfekt.
                                    Gebe ich die gleichen Koordinaten über den iobroker unter "ZoneClean" ein fährt der Robo kurz nach vorne, bricht dann ab und fährt ans Dock zurück.

                                    B Offline
                                    B Offline
                                    Brati
                                    schrieb am zuletzt editiert von Brati
                                    #2065

                                    @Leviathan09

                                    Du musst die Zonen in [] und mit "," getrennt übergeben, also:

                                    app_zoned_clean;[[27200,28800,28300,32700,1],[21400,25000,22500,26700,1]]
                                    

                                    Das setzt du im State "mihome-vacuum.0.control.X_send_command".

                                    Wenn die Koordinaten nicht stimmen, fährt er natürlich auch nicht.

                                    Grüße

                                    Brati

                                    CCU2 - 46 Geräte, ioBroker auf Intel NUC (DN2820FYKH) mit Tab als Frontend, Projekt Gartenhaus mit HM

                                    L 1 Antwort Letzte Antwort
                                    0
                                    • B Brati

                                      @Leviathan09

                                      Du musst die Zonen in [] und mit "," getrennt übergeben, also:

                                      app_zoned_clean;[[27200,28800,28300,32700,1],[21400,25000,22500,26700,1]]
                                      

                                      Das setzt du im State "mihome-vacuum.0.control.X_send_command".

                                      Wenn die Koordinaten nicht stimmen, fährt er natürlich auch nicht.

                                      Grüße

                                      Brati

                                      L Offline
                                      L Offline
                                      Leviathan09
                                      schrieb am zuletzt editiert von
                                      #2066

                                      @Brati
                                      Moin Brati,

                                      leider funktioniert das so nicht bei mir. Wenn ich exakt die Koordinaten aus Valetudo übernehme fährt er wie beschrieben nur kurz nach vorne und bricht dann ab.
                                      Komischerweise funktionieren diese Koordinaten jedoch über Valetudo direkt.
                                      Ich frage mich wo da nun der Fehler liegt.

                                      Habe das gerade nochmal mit meiner Küche getestet...
                                      Reinigung über Valetudo angestoßen, kein Problem
                                      Reinigung mit den gleichen Koordinaten über X_send_command wie von dir Beschrieben, passiert nichts

                                      A 1 Antwort Letzte Antwort
                                      0
                                      • L Leviathan09

                                        @Brati
                                        Moin Brati,

                                        leider funktioniert das so nicht bei mir. Wenn ich exakt die Koordinaten aus Valetudo übernehme fährt er wie beschrieben nur kurz nach vorne und bricht dann ab.
                                        Komischerweise funktionieren diese Koordinaten jedoch über Valetudo direkt.
                                        Ich frage mich wo da nun der Fehler liegt.

                                        Habe das gerade nochmal mit meiner Küche getestet...
                                        Reinigung über Valetudo angestoßen, kein Problem
                                        Reinigung mit den gleichen Koordinaten über X_send_command wie von dir Beschrieben, passiert nichts

                                        A Offline
                                        A Offline
                                        Ash2k
                                        schrieb am zuletzt editiert von
                                        #2067

                                        @Leviathan09
                                        schau mal ob du zwei Klammern [ bzw. ] hast. Eine davon muss jeweils entfernt werden, dann sollte er auch weiterlaufen.

                                        L 1 Antwort Letzte Antwort
                                        0
                                        • A Ash2k

                                          @Leviathan09
                                          schau mal ob du zwei Klammern [ bzw. ] hast. Eine davon muss jeweils entfernt werden, dann sollte er auch weiterlaufen.

                                          L Offline
                                          L Offline
                                          Leviathan09
                                          schrieb am zuletzt editiert von
                                          #2068

                                          @Ash2k
                                          Ich habe es jetzt mit allen Varianten die ich irgendwo gelesen habe versucht.
                                          unter x_send_command als auch zone clean

                                          1. app_zoned_clean;[[25758,26857,26643,28798,1]]
                                          2. app_zoned_clean;[25758,26857,26643,28798,1]
                                          3. [[25758,26857,26643,28798,1]]
                                          4. [25758,26857,26643,28798,1]
                                          5. 25758,26857,26643,28798,1

                                          Und das ganze auch mit mehreren Zonen:

                                          1. app_zoned_clean;[[25105,30813,26652,34238,1],[25105,30829,27941,31777,1]]
                                          2. app_zoned_clean;[25105,30813,26652,34238,1],[25105,30829,27941,31777,1]
                                          3. [[25105,30813,26652,34238,1],[25105,30829,27941,31777,1]]
                                          4. [25105,30813,26652,34238,1],[25105,30829,27941,31777,1]

                                          Nichts davon führt zu dem gewünschten Ergebnis.

                                          Habe den Vacuum nun auch mal über MQTT eingebunden, aber auch da komme ich einfach nicht weiter.
                                          Kann über MQTT nicht mal ganz normal eine Reinung starten.
                                          Ich bin einfach zu blöd dafür, für heute mache ich wohl feierabend und versuche es morgen oder so nochmal.

                                          1 Antwort Letzte Antwort
                                          0
                                          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

                                          791

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          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