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.
    • 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
                              • D
                                dirkhe Developer @Agria4800 last edited by

                                @Agria4800 sagte in Adapter mihome-vacuum anpassungen:

                                @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 ?

                                Eigentlich sollte das nur bei model === 'roborock.vacuum.m1s' || model === 'roborock.vacuum.s6' umgeswitcht werden. Was steht denn bei dir unter info in device_model?

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

                                  @Agria4800 Du gehst in die mi home app. Dann mußt du du mind. einen Raum festlegen (sonst kam es bei mir zu Fehlern beim Zuordnen). Besser du wählst schon mal alle vorhanden aus. Verknüpfen mit Geräten musst du da aber nichts.
                                  Dann auf "Zone" bearbeiten (an der Linken Seite so ein kleines Icon). Dort einen Raum anklicken und auf benennen klicken. Dann entwerder einen aussuchen oder benutzerdefiniert.

                                  M 1 Reply Last reply Reply Quote 0
                                  • L
                                    lesiflo Most Active @mumurik last edited by lesiflo

                                    @mumurik:
                                    Moin, den Fehler hatte ich auch, hier die Lösung von foxdriver76: https://forum.iobroker.net/topic/26900/hinzufuegen-von-roomba-adapter-wirft-fehler.
                                    Ist zwar für den roomba-Adapter behebt aber auch hier den Fehler

                                    M 1 Reply Last reply Reply Quote 0
                                    • L
                                      lesiflo Most Active @dirkhe last edited by

                                      @dirkhe: Ok, dann geht es noch nicht bei mir. Mit der jetzigen neuen Firmware für den S5 kann man in der APP noch keine Räume benennen. Kommt aber noch später.

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

                                        @lesiflo ok, aber ich denke, dass ich die Funktion dann so drin lassen kann. Ich könnte bei leeren Räumen einen Dummy Datenpunkt anlegen, wo ich die Info anlege, dass die Räume erst in der App angelegt werden müssen, wenn möglich. Als Info für den User

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

                                          @dirkhe sagte in Adapter mihome-vacuum anpassungen:

                                          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

                                          @dirkhe
                                          Das System ist ein Raspbian Lite auf einem Pi3.
                                          Den Adapter hatte ich vorher über git nicht am Laufen gehabt.
                                          Aktuell hatte ich die Version 1.1.5 im Einsatz, installiert über den autom. Weg, über der Reiter "Adapter"...

                                          1 Reply Last reply Reply Quote 0
                                          • M
                                            mumurik @lesiflo last edited by

                                            @lesiflo

                                            @lesiflo sagte in Adapter mihome-vacuum anpassungen:

                                            @mumurik:
                                            Moin, den Fehler hatte ich auch, hier die Lösung von foxdriver76: https://forum.iobroker.net/topic/26900/hinzufuegen-von-roomba-adapter-wirft-fehler.
                                            Ist zwar für den roomba-Adapter behebt aber auch hier den Fehler

                                            danke für die Lösung, das war es!

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            689
                                            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