Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Adapter mihome-vacuum anpassungen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Adapter mihome-vacuum anpassungen

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      dirkhe Developer @Diginix last edited by

      @Diginix hi, sollte klappen. Zumindest gibt es da Unterschiede bei der Implementierung.
      Das mit den Räumen funktioniert so, dass er einfach danach fragt. Wenn er eine Antwort bekommt, wird alles weitere initialisiert.

      Diginix 1 Reply Last reply Reply Quote 0
      • Diginix
        Diginix @dirkhe last edited by

        @dirkhe Habe ihn eben mal über meinen Fork drüber gebügelt und sieht gut aus.
        Alle Optimierungen für die Buttons in der io-package.json sind bei dir auch enthalten und die Bedingung für m1s für fan_power ist bei dir auch enthalten. Daher passt auch der state im Knoten control.
        Die Räume wurden auch mit der richtigen IndexNr angelegt. Wenn ich zuhause bin teste ich mal ob der korrekten Raum gesaugt wird und die hinterlegte Saugstärke berücksichtig wird.

        Gute Arbeit!

        1 Reply Last reply Reply Quote 0
        • D
          dirkhe Developer last edited by

          Sehr schön, dass ist doch schon mal eine super Rückmeldung, besten Dank.
          Ich arbeite gerade an den Timern. Weiss noch nicht, ob Ich die per DP verwalten soll oder in der Konfiguration.
          Per DP ist erstmal einfacher und könnte ggf. Auch in der vis angezeigt/ verändert werden, allerdings hat man dann pro Timer wieder mehrere datenpunkte...

          Diginix 1 Reply Last reply Reply Quote 0
          • Diginix
            Diginix @dirkhe last edited by

            @dirkhe Bisher sauge ich nur nach Bedarf, also ohne Zeitplan. VIS habe ich auch keine. Daher kann ich da wenig Inspiration liefern.

            Was mir gerade im Log auffällt ist minütlich diese Zeile:

            (31239) New generation or new fw detected, create new states goto and zoneclean
            

            Hab das Loglevel mal auf warn gestellt. Ich habe gern nur zu beachtendes im Log. Daher sind Statuszeilen die auch noch wiederholt spamen nicht schön für die Übersicht.

            1 Reply Last reply Reply Quote 0
            • D
              dirkhe Developer last edited by

              Habe ich auch schon bemerkt und bei mir schon abgestellt. Ich hatte meinen vom Internet getrennt, dann kommt das nicht, daher hatte ich das nicht vorher bemerkt...

              Diginix 1 Reply Last reply Reply Quote 0
              • Diginix
                Diginix @dirkhe last edited by

                @dirkhe Fix schon commited/gepusht?

                1 Reply Last reply Reply Quote 0
                • D
                  dirkhe Developer last edited by

                  jetzt ja

                  Meistertr Diginix 2 Replies Last reply Reply Quote 0
                  • Meistertr
                    Meistertr Developer @dirkhe last edited by

                    @dirkhe die API gibt ja auch multi room Auswahl her wäre das noch eine Option ui integrieren? Ansonsten könnte man es auch einfach nur in die readme mit aufnehmen..

                    D 1 Reply Last reply Reply Quote 0
                    • D
                      dirkhe Developer @Meistertr last edited by

                      @Meistertr sagte in Adapter mihome-vacuum anpassungen:

                      @dirkhe die API gibt ja auch multi room Auswahl her wäre das noch eine Option ui integrieren? Ansonsten könnte man es auch einfach nur in die readme mit aufnehmen..

                      Das verstehe ich nicht was du meinst. Meinst du das man mehrere Räume aufeinmal reinigen kann? Dass würde ich bei den Timern berücksichtigen. Sonst ist es schwierig, das in die DP mit aufzunehmen...

                      Meistertr 1 Reply Last reply Reply Quote 0
                      • Meistertr
                        Meistertr Developer @dirkhe last edited by

                        @dirkhe genau das meine ich.

                        1 Reply Last reply Reply Quote 0
                        • Diginix
                          Diginix @dirkhe last edited by

                          @dirkhe Update mit Fix funktioniert.
                          Außerdem werden die korrekten Räume mit der gewählten Saugstärke gesaugt.
                          Soweit alles bestens mit der 1.9.1.

                          Multiraum löse ich über ein Array was ich vor dem Saugen zusammensetze und dann in das X_send_command Objekt schreibe.

                          A 1 Reply Last reply Reply Quote 0
                          • D
                            dirkhe Developer last edited by

                            Am Multiraum bin ich gerade dran...

                            1 Reply Last reply Reply Quote 0
                            • Diginix
                              Diginix last edited by Diginix

                              Cool wäre es auch wenn man bei bereits laufender Raumreinigung gestartet per Button im Raumknoten bei Klick auf einen anderen Raumreinigungs-Button dieser erst an den Sauger gesendet würde wenn die vorherige Raumreinigung beendet ist.

                              Dafür habe ich bisher eigene Buttonobjekte pro Raum, die bevor sie "app_segment_clean;[]" über "X_send_command" senden, den aktuellen Status vom Sauger prüfen. Erst wenn der Status von 18 auf 6 geht, wird die nächste RaumID in X_send_command geschrieben. Genau diese Buttons bräuchte ich nicht mehr wenn das mit den neuen vom Adapter so wäre.
                              Für alle die direkt den aktuellen Raum abbrechen und den neuen starten wollen, könnte man ein Config Wert im Adapter erstellen.

                              Das ganze nutze ich über Alexa. "Alexa, Wohnzimmer saugen." > "Ok" > Sauger fährt los, "Alexa, Bad saugen" > "Ok" Sauger fährt erst ins Bad nach Beendigung vom Wohnzimmer. So kann ich dynamisch alle Räume aufzählen ohne für jede Konstellation eine Routine zu bauen. Vorher habe ich das Alexa summary Objekt auf alle Raumnamen in Kombination mit "saugen" geparst und dann ein Array für app_segment_clean;[] befüllt. Aber dann quatsch Alexa halt immer "ich weiß nicht..." weil der Befehl mit keinem Gerät matcht.

                              1 Reply Last reply Reply Quote 0
                              • D
                                dirkhe Developer last edited by

                                Es ist eine neue Version oben (Btw. an der Versionierung habe ich nichts gemacht)

                                Hinzugefügt habe ich einen Datenpunkt für das MultiRoom cleaning:
                                99ae9a27-b773-4e6e-9b80-bed33dde473c-image.png
                                Zusätzlich habe ich 2 neue customCommands hinzugefügt (aber noch nicht dokumentiert)
                                zum einen
                                cleanSegments mit den Parametern der Indizies gemappten Karte
                                cleanRooms mit den Parametern der ioBroker Räume. Anhand derer werden dann die entsprechenden Indizies der Karte gesucht und anschliessend cleanSegments aufgerufen. Gibt es nur einen Raum, wird der entsprechende Datenpunkt "angeklickt", weil dann auch dessen PowerFan Einstellungen gezogen wird

                                Wenn bereits der Sauger am laufen ist, werden weitere Trigger in eine Queue geschoben (beim Schreiben fällt mir gerade ein, dass ich eine LIFO gemacht habe, muß ich noch ändern zu FIFO) und danach abgearbeitet. Mal schauen, ob das alles so funktioniert. Ich habe mich da an den vorhanden Flag zoneCleanActive drangehangen.
                                Zu 100% habe ich das aber nicht alles nachvollziehen können....

                                Mit den Timern bin ich auch schon weiter, die muß ich jetzt nur noch pflegbar machen.

                                1 Reply Last reply Reply Quote 1
                                • L
                                  lesiflo Most Active last edited by lesiflo

                                  Hi,
                                  habe es installiert und auf dem S5 auch die neuste Firmware mit Raumerkennung drauf. Unter den Objekten erscheinen unter rooms nur die Einträge "loadRooms" und "multiRoomClean" sonst nichts weiter.

                                  D 1 Reply Last reply Reply Quote 0
                                  • D
                                    dirkhe Developer @lesiflo last edited by

                                    @lesiflo hast du in der App die Räume benannt?
                                    Am besten immer erst einen Raum benennen dann auf load rooms klicken, dann im iobroker direkt den Raum zuordnen, dann brauchst du nicht raten....

                                    M L O 3 Replies Last reply Reply Quote 0
                                    • M
                                      mumurik @dirkhe last edited by

                                      @dirkhe
                                      bekomme ber Installation des Adapters folgende Fehlermeldung, kann aber mit dieser leider nichts anfangen:

                                      $ ./iobroker url "https://github.com/dirkhe/ioBroker.mihome-vacuum.git"
                                      install https://github.com/dirkhe/ioBroker.mihome-vacuum/tarball/master
                                      npm install https://github.com/dirkhe/ioBroker.mihome-vacuum/tarball/master --production --save --prefix "/opt/iobroker" (System call)
                                      node-pre-gyp 
                                      WARN Using request for node-pre-gyp https download 
                                      node-pre-gyp
                                       WARN Tried to download(404): https://github.com/node-gfx/node-canvas-prebuilt/releases/download/v2.6.1/canvas-v2.6.1-node-v57-linux-glibc-arm.tar.gz node-pre-gyp WARN Pre-built binaries not found for canvas@2.6.1 and node@8.16.0 (node-v57 ABI, glibc) (falling back to source compile with node-gyp) 
                                      
                                      Package pixman-1 was not found in the pkg-config search path.Perhaps you should add the directory containing `pixman-1.pc'
                                      to the PKG_CONFIG_PATH environment variable
                                      No package 'pixman-1' found
                                      
                                      gyp: Call to 'pkg-config pixman-1 --libs' returned exit status 1 while in binding.gyp. while trying to load binding.gyp
                                      gyp
                                       ERR! configure error 
                                      gyp ERR! stack Error: `gyp` failed with exit code: 1gyp ERR! stack     at ChildProcess.onCpExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:345:16)
                                      gyp ERR! stack     at emitTwo (events.js:126:13)
                                      gyp ERR! stack     at ChildProcess.emit (events.js:214:7)
                                      gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
                                      
                                      gyp ERR! System Linux 4.14.71-v7+gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "--fallback-to-build" "--module=/opt/iobroker/node_modules/canvas/build/Release/canvas.node" "--module_name=canvas" "--module_path=/opt/iobroker/node_modules/canvas/build/Release" "--napi_version=4" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v57"
                                      gyp ERR! cwd /opt/iobroker/node_modules/canvas
                                      gyp ERR! node -v v8.16.0
                                      gyp ERR! node-gyp -v v3.8.0
                                      gyp ERR! not ok 
                                      
                                      node-pre-gyp
                                       ERR! build error 
                                      node-pre-gyp
                                       ERR! stack Error: Failed to execute '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js configure --fallback-to-build --module=/opt/iobroker/node_modules/canvas/build/Release/canvas.node --module_name=canvas --module_path=/opt/iobroker/node_modules/canvas/build/Release --napi_version=4 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v57' (1)node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (/opt/iobroker/node_modules/canvas/node_modules/node-pre-gyp/lib/util/compile.js:83:29)
                                      node-pre-gyp ERR! stack     at emitTwo (events.js:126:13)
                                      node-pre-gyp ERR! stack     at ChildProcess.emit (events.js:214:7)
                                      node-pre-gyp ERR! stack     at maybeClose (internal/child_process.js:915:16)
                                      
                                      node-pre-gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)
                                      node-pre-gyp ERR! System Linux 4.14.71-v7+
                                      node-pre-gyp ERR! command "/usr/local/bin/node" "/opt/iobroker/node_modules/canvas/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
                                      node-pre-gyp ERR! cwd /opt/iobroker/node_modules/canvasnode-pre-gyp ERR! node -v v8.16.0
                                      node-pre-gyp
                                       ERR! node-pre-gyp -v v0.11.0node-pre-gyp ERR! not ok 
                                      
                                      npm
                                       
                                      ERR! code ELIFECYCLE
                                      npm ERR! errno 1npm ERR! canvas@2.6.1 install: `node-pre-gyp install --fallback-to-build`
                                      npm ERR! Exit status 1
                                      
                                      npm ERR! npm ERR!
                                       Failed at the canvas@2.6.1 install script.npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
                                      
                                      npm ERR! A complete log of this run can be found in:
                                      npm ERR!     /home/iobroker/.npm/_logs/2020-01-09T19_38_43_809Z-debug.log
                                      
                                      process exited with code 0
                                      

                                      Woran könnte es liegen?

                                      L Meistertr 2 Replies Last reply Reply Quote 0
                                      • D
                                        dirkhe Developer last edited by

                                        Das hat erstmal nicht mit dem Adapter selber zu tun. Hattest du vorher schon den Adapter normal über git am Laufen gehabt?
                                        Ich vermute mal, dass du einen 32bit System hast? Dafür scheint es die canvas Lib nicht zu geben. Ich vermute mal, dass @Meistertr das für valetudo benötigt?

                                        Wie man das jetzt auf die Schnelle fixen kann, weiss ich auch nicht

                                        M 1 Reply Last reply Reply Quote 0
                                        • Agria4800
                                          Agria4800 @dirkhe last edited by

                                          @dirkhe hab die neue Version installiert, keine Probleme oder Fehler im Log.
                                          Valetudo noch nicht getestet.

                                          Mir ist aber aufgefallen, das bei Fanpower nur eine Einstellung 101, 102,103,104 funktioniert, also nicht mehr prozentual von 0-100. Liegt wohl aber nicht an deiner Version, bei der 1.1.6 war es auch seit ein paar Tagen so. Ich vermute mal, das es an dem neuen Update legt, das Xiaomi für den S5 rausgebracht hat.

                                          Kann das noch jemand bestätigen ?

                                          D 1 Reply Last reply Reply Quote 0
                                          • Agria4800
                                            Agria4800 @dirkhe last edited by

                                            @dirkhe sagte in Adapter mihome-vacuum anpassungen:

                                            Das mit den Räumen scheint eine neue Funktion der neueren Generation zu sein. Du kannst dabei in der App die Räume benennen. Die Namen der Räume werden zwar nur in der App gehalten, aber die haben eine feste ID. Wenn du jetzt eine Karte hast,, scheint er intern eine Liste mit Räumen zu definierten Bereichen in der Karte zu halten. Bei mir hat er den Index dieser Bereiche intern bereits auf 20 hochgezählt. Daher speichere ich ja primär die ID es Raumes und den dazu passenden Index. Sollte man dann in der App eine neue Karte machen und die Räume neu zuordnen, wird das wieder gematcht.
                                            Das Drehen der Karte ist, soweit ich das gelesen habe, eher ein Problem der älteren Roboter.
                                            Welchen hast du? Hast du meinen Adapter mal installiert und bekommst du die Räume angelegt?

                                            Wie kann ich die entstandenen Räume in der App (IOS) den benennen? Ich habe alles durch, keine Ahnung... 😊

                                            D 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            696
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            adapter entwicklung raumreinigung roborock test vacuum zeitplan
                                            67
                                            511
                                            94319
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo