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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Roborock Adapter tester gesucht

NEWS

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

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

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

Roborock Adapter tester gesucht

Scheduled Pinned Locked Moved JavaScript
766 Posts 51 Posters 245.5k Views 52 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • copystringC copystring

    @david-g said in Roborock Adapter tester gesucht:

    @copystring
    Habe jetzt mal getestet, eine Reinigung über den Adapter zu starten.

    Habe unter floors.0 einen Raum auf true gesetzt.
    Danach über app_segment_clean die Reinigung gestartet.

    Beim Starten stürzt der Adapter mit folgendem Logeintrag ab:

    roborock.0
    2023-02-24 21:59:47.925	warn	Terminated (UNCAUGHT_EXCEPTION): Without reason
    
    roborock.0
    2023-02-24 21:59:47.923	info	terminating
    
    roborock.0
    2023-02-24 21:59:47.917	error	Cannot read properties of null (reading 'val')
    
    roborock.0
    2023-02-24 21:59:47.916	error	TypeError: Cannot read properties of null (reading 'val') at /opt/iobroker/node_modules/iobroker.roborock/lib/vacuum.js:184:20 at async vacuum.command (/opt/iobroker/node_modules/iobroker.roborock/lib/vacuum.js:180:4)
    
    roborock.0
    2023-02-24 21:59:47.916	error	unhandled promise rejection: Cannot read properties of null (reading 'val')
    
    roborock.0
    2023-02-24 21:59:47.914	error	Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
    

    Ich glaube einmalig hat er beim ersten Versuch gestartet.
    Aber nicht sicher.

    EDIT
    Aktuelle dev installiert.

    EDIT 2
    app_segment_clean scheint auch der einzige Datenpunkt zu sein, der nicht automatisch auf false zurück nachdem man ihn auf true setzt.

    Bitte nochmal die aktuelle dev version testen und eine Rückmeldung geben. Es hat sich einiges geändert.

    David G.D Online
    David G.D Online
    David G.
    wrote on last edited by David G.
    #339

    @copystring

    Selbes Verhalten.
    Jetzt hat er jedoch noch eine Etage doppelt angelegt.

    Screenshot_20230225_072232_Chrome.jpg

    Edit
    Hier nochmal der log. Hab aus jeder Etage einen Raum getestet.

    roborock.0
    2023-02-25 07:21:45.821	warn	Terminated (UNCAUGHT_EXCEPTION): Without reason
    
    roborock.0
    2023-02-25 07:21:45.819	info	terminating
    
    roborock.0
    2023-02-25 07:21:45.805	error	Cannot read properties of null (reading 'val')
    
    roborock.0
    2023-02-25 07:21:45.804	error	TypeError: Cannot read properties of null (reading 'val') at /opt/iobroker/node_modules/iobroker.roborock/lib/vacuum.js:159:20 at async vacuum.command (/opt/iobroker/node_modules/iobroker.roborock/lib/vacuum.js:155:4)
    
    roborock.0
    2023-02-25 07:21:45.803	error	unhandled promise rejection: Cannot read properties of null (reading 'val')
    
    roborock.0
    2023-02-25 07:21:45.801	error	Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
    
    roborock.0
    2023-02-25 07:16:06.487	info	MQTT initialized
    
    roborock.0
    2023-02-25 07:16:06.024	info	starting. Version 0.0.10-alpha.0 (non-npm: copystring/ioBroker.roborock#dev) in /opt/iobroker/node_modules/iobroker.roborock, node: v16.19.1, js-controller: 4.0.24
    

    Edit 2
    Habe jetzt nochmal alle Datenpunkte unterhalb floors gelöscht und neu abgerufen, nun scheint es zu klappen.
    Teste nachher aber nochmal.

    Zeigt eure Lovelace-Visualisierung klick
    (Auch ideal um sich Anregungen zu holen)

    Meine Tabellen für eure Visualisierung klick

    1 Reply Last reply
    0
    • wendy2702W Online
      wendy2702W Online
      wendy2702
      wrote on last edited by
      #340

      @copystring sagte in Roborock Adapter tester gesucht:

      @wendy2702 said in Roborock Adapter tester gesucht:

      set_carpet_clean_mode und set_carpet_mode

      set_carpet_clean_mode und set_carpet_mode müssen so aussehen. Das sind die Werte die Roborock beim Einstellen erwartet. Dies habe ich gerade nochmal bei mir getestet und der Roborock hat die Befehle sauber angenommen. Woran erkennst du denn, dass es nicht geklappt hat?

      OK. Hatte das irgendwie anders in Erinnerung.

      Ich bekomme bei allen Befehlen ausser diesen Beiden ein Akustische Rückmeldung vom Sauger. Werde heute mal über Tag testen und dabei ins Log schauen.

      Bitte keine Fragen per PN, die gehören ins Forum!

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      copystringC 1 Reply Last reply
      0
      • wendy2702W wendy2702

        @copystring sagte in Roborock Adapter tester gesucht:

        @wendy2702 said in Roborock Adapter tester gesucht:

        set_carpet_clean_mode und set_carpet_mode

        set_carpet_clean_mode und set_carpet_mode müssen so aussehen. Das sind die Werte die Roborock beim Einstellen erwartet. Dies habe ich gerade nochmal bei mir getestet und der Roborock hat die Befehle sauber angenommen. Woran erkennst du denn, dass es nicht geklappt hat?

        OK. Hatte das irgendwie anders in Erinnerung.

        Ich bekomme bei allen Befehlen ausser diesen Beiden ein Akustische Rückmeldung vom Sauger. Werde heute mal über Tag testen und dabei ins Log schauen.

        copystringC Offline
        copystringC Offline
        copystring
        wrote on last edited by
        #341

        @wendy2702 Ja das stimmt. Bei den beiden Befehlen kommt keine akustische Rückmeldung der Wert wird aber gesetzt.

        Unterstütze meine Arbeit gerne mit einer Spende über PayPal:
        https://paypal.me/copystring

        1 Reply Last reply
        0
        • copystringC copystring

          @david-g ich habe mir gebraucht dell wyse 3040 gekauft. Brauchen weniger Strom und sind schneller und x86 anstatt arm. Einfach eine SSD via USB mit Adapter anschließen und Debian installieren. Läuft super wenn man keine gpio Pins benötigt. Kann ich also empfehlen wenn die gpio Pins nicht benötigt werden

          David G.D Online
          David G.D Online
          David G.
          wrote on last edited by
          #342

          @copystring sagte in Roborock Adapter tester gesucht:

          @david-g ich habe mir gebraucht dell wyse 3040 gekauft. Brauchen weniger Strom und sind schneller und x86 anstatt arm. Einfach eine SSD via USB mit Adapter anschließen und Debian installieren. Läuft super wenn man keine gpio Pins benötigt. Kann ich also empfehlen wenn die gpio Pins nicht benötigt werden

          Grad den Post erst gesehen, irgendwie untergegangen.
          Ist wirklich eine gute Alternative. Allerdings brauche ich schon 4GB RAM.

          So scheint es den nicht zu geben 🤔

          Zeigt eure Lovelace-Visualisierung klick
          (Auch ideal um sich Anregungen zu holen)

          Meine Tabellen für eure Visualisierung klick

          T 1 Reply Last reply
          0
          • David G.D David G.

            @copystring sagte in Roborock Adapter tester gesucht:

            @david-g ich habe mir gebraucht dell wyse 3040 gekauft. Brauchen weniger Strom und sind schneller und x86 anstatt arm. Einfach eine SSD via USB mit Adapter anschließen und Debian installieren. Läuft super wenn man keine gpio Pins benötigt. Kann ich also empfehlen wenn die gpio Pins nicht benötigt werden

            Grad den Post erst gesehen, irgendwie untergegangen.
            Ist wirklich eine gute Alternative. Allerdings brauche ich schon 4GB RAM.

            So scheint es den nicht zu geben 🤔

            T Offline
            T Offline
            tschoeplis
            wrote on last edited by tschoeplis
            #343

            xxxxxxxx

            1 Reply Last reply
            0
            • David G.D Online
              David G.D Online
              David G.
              wrote on last edited by
              #344

              Habe mal eine Frage zu den Verbrauchsmaterialen.

              Die Werte vom Staubsauger werden ja schön in Stunden angezeigt.

              Die anderen Werte mit 0 beziehen sich wohl auf die Station.
              Springen diese bei entsprechendem Verschleiß auf 1?

              Die ersten 3 Werte mit 0 bekomme ich gut zugeordnet, da finde ich in der App ein Gegenstück.
              Was ist aber das strainer_work_times

              Zeigt eure Lovelace-Visualisierung klick
              (Auch ideal um sich Anregungen zu holen)

              Meine Tabellen für eure Visualisierung klick

              copystringC 1 Reply Last reply
              0
              • David G.D David G.

                Habe mal eine Frage zu den Verbrauchsmaterialen.

                Die Werte vom Staubsauger werden ja schön in Stunden angezeigt.

                Die anderen Werte mit 0 beziehen sich wohl auf die Station.
                Springen diese bei entsprechendem Verschleiß auf 1?

                Die ersten 3 Werte mit 0 bekomme ich gut zugeordnet, da finde ich in der App ein Gegenstück.
                Was ist aber das strainer_work_times

                copystringC Offline
                copystringC Offline
                copystring
                wrote on last edited by
                #345

                @david-g Ich meine strainer_work_times war ein Zusatzmodul für den S7. Genau weiß ich es nicht mehr aber es war entweder der Trockner für den Mop oder der Reiniger für den Mop vom großen S7 Plus Ultra. Fehlt das Modul bleibt der Wert 0.

                Unterstütze meine Arbeit gerne mit einer Spende über PayPal:
                https://paypal.me/copystring

                David G.D 1 Reply Last reply
                0
                • copystringC copystring

                  @david-g Ich meine strainer_work_times war ein Zusatzmodul für den S7. Genau weiß ich es nicht mehr aber es war entweder der Trockner für den Mop oder der Reiniger für den Mop vom großen S7 Plus Ultra. Fehlt das Modul bleibt der Wert 0.

                  David G.D Online
                  David G.D Online
                  David G.
                  wrote on last edited by
                  #346

                  @copystring

                  Danke.

                  Hab grad nochmal eine Raumreinigung über app_segment_clean gestartet.
                  2 Räume waren ausgewählt. Der Adapter ist wieder abgestürzt.

                  roborock.0
                  2023-02-26 18:24:48.671	info	terminating
                  
                  roborock.0
                  2023-02-26 18:24:48.663	error	Cannot read properties of null (reading 'val')
                  
                  roborock.0
                  2023-02-26 18:24:48.662	error	TypeError: Cannot read properties of null (reading 'val') at /opt/iobroker/node_modules/iobroker.roborock/lib/vacuum.js:159:20 at async vacuum.command (/opt/iobroker/node_modules/iobroker.roborock/lib/vacuum.js:155:4)
                  
                  roborock.0
                  2023-02-26 18:24:48.660	error	unhandled promise rejection: Cannot read properties of null (reading 'val')
                  
                  roborock.0
                  2023-02-26 18:24:48.650	error	Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
                  

                  Zeigt eure Lovelace-Visualisierung klick
                  (Auch ideal um sich Anregungen zu holen)

                  Meine Tabellen für eure Visualisierung klick

                  copystringC 1 Reply Last reply
                  0
                  • David G.D David G.

                    @copystring

                    Danke.

                    Hab grad nochmal eine Raumreinigung über app_segment_clean gestartet.
                    2 Räume waren ausgewählt. Der Adapter ist wieder abgestürzt.

                    roborock.0
                    2023-02-26 18:24:48.671	info	terminating
                    
                    roborock.0
                    2023-02-26 18:24:48.663	error	Cannot read properties of null (reading 'val')
                    
                    roborock.0
                    2023-02-26 18:24:48.662	error	TypeError: Cannot read properties of null (reading 'val') at /opt/iobroker/node_modules/iobroker.roborock/lib/vacuum.js:159:20 at async vacuum.command (/opt/iobroker/node_modules/iobroker.roborock/lib/vacuum.js:155:4)
                    
                    roborock.0
                    2023-02-26 18:24:48.660	error	unhandled promise rejection: Cannot read properties of null (reading 'val')
                    
                    roborock.0
                    2023-02-26 18:24:48.650	error	Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
                    
                    copystringC Offline
                    copystringC Offline
                    copystring
                    wrote on last edited by
                    #347

                    @david-g Okay. Welche version ist installiert? Falls noch nicht geschehen die aktuelle dev Version (https://github.com/copystring/ioBroker.roborock/tree/dev) installieren und neu testen. Dann ein neues log hier posten.
                    Es gab gerade eben noch einige Änderungen. Damit ich weiß in welcher Zeile ich genau schauen muss ist es wichtig zu wissen auf welcher Version der Fehler kommt. Daher wäre es am idealsten wenn du die dev Version von gerade eben verwenden würdest.

                    Unterstütze meine Arbeit gerne mit einer Spende über PayPal:
                    https://paypal.me/copystring

                    David G.D 2 Replies Last reply
                    0
                    • copystringC copystring

                      @david-g Okay. Welche version ist installiert? Falls noch nicht geschehen die aktuelle dev Version (https://github.com/copystring/ioBroker.roborock/tree/dev) installieren und neu testen. Dann ein neues log hier posten.
                      Es gab gerade eben noch einige Änderungen. Damit ich weiß in welcher Zeile ich genau schauen muss ist es wichtig zu wissen auf welcher Version der Fehler kommt. Daher wäre es am idealsten wenn du die dev Version von gerade eben verwenden würdest.

                      David G.D Online
                      David G.D Online
                      David G.
                      wrote on last edited by
                      #348

                      @copystring

                      Hab die Dev Version vom 25 Feb installiert.
                      Aktualisiere jetzt mal teste morgen.

                      Vorhin hab ich nochmal probiert und da hat es geklappt, allerdings in einer anderen Etage.

                      Melde mich

                      Zeigt eure Lovelace-Visualisierung klick
                      (Auch ideal um sich Anregungen zu holen)

                      Meine Tabellen für eure Visualisierung klick

                      1 Reply Last reply
                      0
                      • copystringC copystring

                        @david-g Okay. Welche version ist installiert? Falls noch nicht geschehen die aktuelle dev Version (https://github.com/copystring/ioBroker.roborock/tree/dev) installieren und neu testen. Dann ein neues log hier posten.
                        Es gab gerade eben noch einige Änderungen. Damit ich weiß in welcher Zeile ich genau schauen muss ist es wichtig zu wissen auf welcher Version der Fehler kommt. Daher wäre es am idealsten wenn du die dev Version von gerade eben verwenden würdest.

                        David G.D Online
                        David G.D Online
                        David G.
                        wrote on last edited by David G.
                        #349

                        @copystring

                        So,

                        habe getestet. Es klappt.
                        Allerdings war es wohl ein Fehler meinerseits.

                        Ich muss (wie ich jetzt gemerkt habe) erst die Multimap der Etage laden, und dann die Reinigung starten.
                        Das bekomme ich aber leicht in einem Skript eingebaut.

                        EDIT:
                        Hab mir ein Blockly geschrieben, um sicherzugehen, dass ich nur Räume in einer Etage aktiv habe und wähle dementsprechend die entsprechende Map aus.

                        Screenshot_20230227_073612_Chrome.jpg

                        So kann man in der Visu nichts falsch machen:
                        Screenshot_20230227_073743_Fully Kiosk Browser.jpg

                        Aber eine andere Frage:
                        Bei jedem Start sende ich vorab noch die Saugleistung und Wassermenge über set_water_box_custom_mode und set_custom_mode.
                        Die Beiden Datenpunkte stehen in meiner Visualisierung zum dropdown bereit.

                        Das mache ich, da meine Frau das ggf zwischenzeitlich per App geändert haben könnte.

                        Ist es möglich die beiden Datenpunkte unter commands vom Adapter aus mit dem Roboter synchron zu halten?

                        So müsste man/ich es nicht immer mit senden und man sieht die aktuelle Einstellung in seiner Auswahl.

                        Zeigt eure Lovelace-Visualisierung klick
                        (Auch ideal um sich Anregungen zu holen)

                        Meine Tabellen für eure Visualisierung klick

                        S copystringC 2 Replies Last reply
                        2
                        • David G.D David G.

                          @copystring

                          So,

                          habe getestet. Es klappt.
                          Allerdings war es wohl ein Fehler meinerseits.

                          Ich muss (wie ich jetzt gemerkt habe) erst die Multimap der Etage laden, und dann die Reinigung starten.
                          Das bekomme ich aber leicht in einem Skript eingebaut.

                          EDIT:
                          Hab mir ein Blockly geschrieben, um sicherzugehen, dass ich nur Räume in einer Etage aktiv habe und wähle dementsprechend die entsprechende Map aus.

                          Screenshot_20230227_073612_Chrome.jpg

                          So kann man in der Visu nichts falsch machen:
                          Screenshot_20230227_073743_Fully Kiosk Browser.jpg

                          Aber eine andere Frage:
                          Bei jedem Start sende ich vorab noch die Saugleistung und Wassermenge über set_water_box_custom_mode und set_custom_mode.
                          Die Beiden Datenpunkte stehen in meiner Visualisierung zum dropdown bereit.

                          Das mache ich, da meine Frau das ggf zwischenzeitlich per App geändert haben könnte.

                          Ist es möglich die beiden Datenpunkte unter commands vom Adapter aus mit dem Roboter synchron zu halten?

                          So müsste man/ich es nicht immer mit senden und man sieht die aktuelle Einstellung in seiner Auswahl.

                          S Offline
                          S Offline
                          simplyclever
                          wrote on last edited by
                          #350

                          @david-g Könntest Du Blockly und VIS (Widgets?) teilen?

                          David G.D 1 Reply Last reply
                          0
                          • S simplyclever

                            @david-g Könntest Du Blockly und VIS (Widgets?) teilen?

                            David G.D Online
                            David G.D Online
                            David G.
                            wrote on last edited by
                            #351

                            @simplyclever

                            Anbei das Skript:

                            <xml xmlns="https://developers.google.com/blockly/xml">
                             <variables>
                               <variable id="m*1}PM*vX/e5QPUWCX/~">raume_og</variable>
                               <variable id="HGnKiadUT}LlnVPI#)V5">raume_ug</variable>
                               <variable id="WF[nL{a)J(;8bBQ3kw,Q">j</variable>
                             </variables>
                             <block type="variables_set" id="LJG9IQ:;c(+_sG54Nbpv" x="563" y="-1213">
                               <field name="VAR" id="m*1}PM*vX/e5QPUWCX/~">raume_og</field>
                               <value name="VALUE">
                                 <block type="selector" id="YMrJZw87j]=8);ry1@f]">
                                   <field name="TEXT">roborock.0.Devices.7UreppMhwYr4WlSbCtcsno.floors.1.*</field>
                                 </block>
                               </value>
                               <next>
                                 <block type="variables_set" id="H8H5NrBhth.kWD,lWmWC">
                                   <field name="VAR" id="HGnKiadUT}LlnVPI#)V5">raume_ug</field>
                                   <value name="VALUE">
                                     <block type="selector" id="+9@TR[f{`qLJ+Gt$L4f9">
                                       <field name="TEXT">roborock.0.Devices.7UreppMhwYr4WlSbCtcsno.floors.0.*</field>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="on_ext" id="/[tZ4DhA:zBka)VD;oq:">
                                       <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                       <field name="CONDITION">true</field>
                                       <field name="ACK_CONDITION"></field>
                                       <value name="OID0">
                                         <shadow type="field_oid" id=")9tNYU]I]2zJRDL$yJ!L">
                                           <field name="oid">default</field>
                                         </shadow>
                                         <block type="variables_get" id="f{{]lfXFJ7}HcU;T%14x">
                                           <field name="VAR" id="m*1}PM*vX/e5QPUWCX/~">raume_og</field>
                                         </block>
                                       </value>
                                       <statement name="STATEMENT">
                                         <block type="controls_forEach" id="Y,;q@xe$2!LnUQcP)|Yy">
                                           <field name="VAR" id="WF[nL{a)J(;8bBQ3kw,Q">j</field>
                                           <value name="LIST">
                                             <block type="variables_get" id="DU8hj`D=P}-_8~k~*fTS">
                                               <field name="VAR" id="HGnKiadUT}LlnVPI#)V5">raume_ug</field>
                                             </block>
                                           </value>
                                           <statement name="DO">
                                             <block type="control_ex" id="zD?!9SShbd,Ky#a%!AJ%">
                                               <field name="TYPE">false</field>
                                               <field name="CLEAR_RUNNING">FALSE</field>
                                               <value name="OID">
                                                 <shadow type="field_oid" id="Vqmc=1_*}x+nX$AOsaRb">
                                                   <field name="oid">Object ID</field>
                                                 </shadow>
                                                 <block type="variables_get" id="G9:X=`u[])`|5aU8+=Dw">
                                                   <field name="VAR" id="WF[nL{a)J(;8bBQ3kw,Q">j</field>
                                                 </block>
                                               </value>
                                               <value name="VALUE">
                                                 <shadow type="logic_boolean" id="[L!m2~:ZWQxe8@yU[7NP">
                                                   <field name="BOOL">FALSE</field>
                                                 </shadow>
                                               </value>
                                               <value name="DELAY_MS">
                                                 <shadow type="math_number" id="N.HMqS+m/3H14%B3F[1|">
                                                   <field name="NUM">0</field>
                                                 </shadow>
                                               </value>
                                             </block>
                                           </statement>
                                           <next>
                                             <block type="update" id="T5Nr6)3:_o*4OwlC,kkB">
                                               <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                               <field name="OID">roborock.0.Devices.7UreppMhwYr4WlSbCtcsno.commands.load_multi_map</field>
                                               <field name="WITH_DELAY">FALSE</field>
                                               <value name="VALUE">
                                                 <block type="math_number" id="lbmY(vKPJw?rI3Ly9ZVT">
                                                   <field name="NUM">1</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </next>
                                         </block>
                                       </statement>
                                       <next>
                                         <block type="on_ext" id="`yx429a:d#})9*}K:x5?">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                           <field name="CONDITION">true</field>
                                           <field name="ACK_CONDITION"></field>
                                           <value name="OID0">
                                             <shadow type="field_oid">
                                               <field name="oid">default</field>
                                             </shadow>
                                             <block type="variables_get" id="[M6zXe5%J(zRl=5D6@AI">
                                               <field name="VAR" id="HGnKiadUT}LlnVPI#)V5">raume_ug</field>
                                             </block>
                                           </value>
                                           <statement name="STATEMENT">
                                             <block type="controls_forEach" id="9b[KI}p/Vcqmi;AIOvoP">
                                               <field name="VAR" id="WF[nL{a)J(;8bBQ3kw,Q">j</field>
                                               <value name="LIST">
                                                 <block type="variables_get" id="^iD/8)NBfbWNoi)a1xWA">
                                                   <field name="VAR" id="m*1}PM*vX/e5QPUWCX/~">raume_og</field>
                                                 </block>
                                               </value>
                                               <statement name="DO">
                                                 <block type="control_ex" id="W5yI0~~A}BRZ;w]H-M5y">
                                                   <field name="TYPE">false</field>
                                                   <field name="CLEAR_RUNNING">FALSE</field>
                                                   <value name="OID">
                                                     <shadow type="field_oid">
                                                       <field name="oid">Object ID</field>
                                                     </shadow>
                                                     <block type="variables_get" id="[Tr|(mpClG/-*BP,,SfZ">
                                                       <field name="VAR" id="WF[nL{a)J(;8bBQ3kw,Q">j</field>
                                                     </block>
                                                   </value>
                                                   <value name="VALUE">
                                                     <shadow type="logic_boolean" id="j}b57r;.pBj=*o$_ZC^Y">
                                                       <field name="BOOL">FALSE</field>
                                                     </shadow>
                                                   </value>
                                                   <value name="DELAY_MS">
                                                     <shadow type="math_number" id="ArP;CZy8xNW6dzENFQ[A">
                                                       <field name="NUM">0</field>
                                                     </shadow>
                                                   </value>
                                                 </block>
                                               </statement>
                                               <next>
                                                 <block type="update" id="Wwrb?1viM#Hn+RTHv:J4">
                                                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                   <field name="OID">roborock.0.Devices.7UreppMhwYr4WlSbCtcsno.commands.load_multi_map</field>
                                                   <field name="WITH_DELAY">FALSE</field>
                                                   <value name="VALUE">
                                                     <block type="math_number" id="7/b3!/qa$]8DV[^/_HXa">
                                                       <field name="NUM">0</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                            </xml>
                            

                            Als Visu nutze ich Lovelace.
                            Hast du das auch?

                            Zeigt eure Lovelace-Visualisierung klick
                            (Auch ideal um sich Anregungen zu holen)

                            Meine Tabellen für eure Visualisierung klick

                            S 1 Reply Last reply
                            1
                            • David G.D David G.

                              @simplyclever

                              Anbei das Skript:

                              <xml xmlns="https://developers.google.com/blockly/xml">
                               <variables>
                                 <variable id="m*1}PM*vX/e5QPUWCX/~">raume_og</variable>
                                 <variable id="HGnKiadUT}LlnVPI#)V5">raume_ug</variable>
                                 <variable id="WF[nL{a)J(;8bBQ3kw,Q">j</variable>
                               </variables>
                               <block type="variables_set" id="LJG9IQ:;c(+_sG54Nbpv" x="563" y="-1213">
                                 <field name="VAR" id="m*1}PM*vX/e5QPUWCX/~">raume_og</field>
                                 <value name="VALUE">
                                   <block type="selector" id="YMrJZw87j]=8);ry1@f]">
                                     <field name="TEXT">roborock.0.Devices.7UreppMhwYr4WlSbCtcsno.floors.1.*</field>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="variables_set" id="H8H5NrBhth.kWD,lWmWC">
                                     <field name="VAR" id="HGnKiadUT}LlnVPI#)V5">raume_ug</field>
                                     <value name="VALUE">
                                       <block type="selector" id="+9@TR[f{`qLJ+Gt$L4f9">
                                         <field name="TEXT">roborock.0.Devices.7UreppMhwYr4WlSbCtcsno.floors.0.*</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="on_ext" id="/[tZ4DhA:zBka)VD;oq:">
                                         <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                         <field name="CONDITION">true</field>
                                         <field name="ACK_CONDITION"></field>
                                         <value name="OID0">
                                           <shadow type="field_oid" id=")9tNYU]I]2zJRDL$yJ!L">
                                             <field name="oid">default</field>
                                           </shadow>
                                           <block type="variables_get" id="f{{]lfXFJ7}HcU;T%14x">
                                             <field name="VAR" id="m*1}PM*vX/e5QPUWCX/~">raume_og</field>
                                           </block>
                                         </value>
                                         <statement name="STATEMENT">
                                           <block type="controls_forEach" id="Y,;q@xe$2!LnUQcP)|Yy">
                                             <field name="VAR" id="WF[nL{a)J(;8bBQ3kw,Q">j</field>
                                             <value name="LIST">
                                               <block type="variables_get" id="DU8hj`D=P}-_8~k~*fTS">
                                                 <field name="VAR" id="HGnKiadUT}LlnVPI#)V5">raume_ug</field>
                                               </block>
                                             </value>
                                             <statement name="DO">
                                               <block type="control_ex" id="zD?!9SShbd,Ky#a%!AJ%">
                                                 <field name="TYPE">false</field>
                                                 <field name="CLEAR_RUNNING">FALSE</field>
                                                 <value name="OID">
                                                   <shadow type="field_oid" id="Vqmc=1_*}x+nX$AOsaRb">
                                                     <field name="oid">Object ID</field>
                                                   </shadow>
                                                   <block type="variables_get" id="G9:X=`u[])`|5aU8+=Dw">
                                                     <field name="VAR" id="WF[nL{a)J(;8bBQ3kw,Q">j</field>
                                                   </block>
                                                 </value>
                                                 <value name="VALUE">
                                                   <shadow type="logic_boolean" id="[L!m2~:ZWQxe8@yU[7NP">
                                                     <field name="BOOL">FALSE</field>
                                                   </shadow>
                                                 </value>
                                                 <value name="DELAY_MS">
                                                   <shadow type="math_number" id="N.HMqS+m/3H14%B3F[1|">
                                                     <field name="NUM">0</field>
                                                   </shadow>
                                                 </value>
                                               </block>
                                             </statement>
                                             <next>
                                               <block type="update" id="T5Nr6)3:_o*4OwlC,kkB">
                                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                 <field name="OID">roborock.0.Devices.7UreppMhwYr4WlSbCtcsno.commands.load_multi_map</field>
                                                 <field name="WITH_DELAY">FALSE</field>
                                                 <value name="VALUE">
                                                   <block type="math_number" id="lbmY(vKPJw?rI3Ly9ZVT">
                                                     <field name="NUM">1</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </next>
                                           </block>
                                         </statement>
                                         <next>
                                           <block type="on_ext" id="`yx429a:d#})9*}K:x5?">
                                             <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                             <field name="CONDITION">true</field>
                                             <field name="ACK_CONDITION"></field>
                                             <value name="OID0">
                                               <shadow type="field_oid">
                                                 <field name="oid">default</field>
                                               </shadow>
                                               <block type="variables_get" id="[M6zXe5%J(zRl=5D6@AI">
                                                 <field name="VAR" id="HGnKiadUT}LlnVPI#)V5">raume_ug</field>
                                               </block>
                                             </value>
                                             <statement name="STATEMENT">
                                               <block type="controls_forEach" id="9b[KI}p/Vcqmi;AIOvoP">
                                                 <field name="VAR" id="WF[nL{a)J(;8bBQ3kw,Q">j</field>
                                                 <value name="LIST">
                                                   <block type="variables_get" id="^iD/8)NBfbWNoi)a1xWA">
                                                     <field name="VAR" id="m*1}PM*vX/e5QPUWCX/~">raume_og</field>
                                                   </block>
                                                 </value>
                                                 <statement name="DO">
                                                   <block type="control_ex" id="W5yI0~~A}BRZ;w]H-M5y">
                                                     <field name="TYPE">false</field>
                                                     <field name="CLEAR_RUNNING">FALSE</field>
                                                     <value name="OID">
                                                       <shadow type="field_oid">
                                                         <field name="oid">Object ID</field>
                                                       </shadow>
                                                       <block type="variables_get" id="[Tr|(mpClG/-*BP,,SfZ">
                                                         <field name="VAR" id="WF[nL{a)J(;8bBQ3kw,Q">j</field>
                                                       </block>
                                                     </value>
                                                     <value name="VALUE">
                                                       <shadow type="logic_boolean" id="j}b57r;.pBj=*o$_ZC^Y">
                                                         <field name="BOOL">FALSE</field>
                                                       </shadow>
                                                     </value>
                                                     <value name="DELAY_MS">
                                                       <shadow type="math_number" id="ArP;CZy8xNW6dzENFQ[A">
                                                         <field name="NUM">0</field>
                                                       </shadow>
                                                     </value>
                                                   </block>
                                                 </statement>
                                                 <next>
                                                   <block type="update" id="Wwrb?1viM#Hn+RTHv:J4">
                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                     <field name="OID">roborock.0.Devices.7UreppMhwYr4WlSbCtcsno.commands.load_multi_map</field>
                                                     <field name="WITH_DELAY">FALSE</field>
                                                     <value name="VALUE">
                                                       <block type="math_number" id="7/b3!/qa$]8DV[^/_HXa">
                                                         <field name="NUM">0</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </next>
                                               </block>
                                             </statement>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                              </xml>
                              

                              Als Visu nutze ich Lovelace.
                              Hast du das auch?

                              S Offline
                              S Offline
                              simplyclever
                              wrote on last edited by
                              #352

                              @david-g Danke! Ich benutze VIS. Aber evtl. hilft es anderen.

                              David G.D 1 Reply Last reply
                              0
                              • S simplyclever

                                @david-g Danke! Ich benutze VIS. Aber evtl. hilft es anderen.

                                David G.D Online
                                David G.D Online
                                David G.
                                wrote on last edited by
                                #353

                                @simplyclever

                                Gerne,

                                das was du auf dem Bild siehst ist easy und "nicht wert zu posten" in Lovelace.

                                Das hier ist eher interessant.
                                Screenshot_20230227_100259_Fully Kiosk Browser.jpg

                                Wenn man auf "Los" drückt öffnen sich das vorherige Bild. Oben links der Status der Basis als Popup. Oben rechts der Adapterstatus.
                                Bei den unteren Icons klappen die entsprechenden Dinge aus.
                                Das Poste ich, wenn ich mit allem fertig bin, im Lovelace Thread.
                                Da wird sich immer schön ausgetauscht.

                                Zeigt eure Lovelace-Visualisierung klick
                                (Auch ideal um sich Anregungen zu holen)

                                Meine Tabellen für eure Visualisierung klick

                                1 Reply Last reply
                                0
                                • David G.D Online
                                  David G.D Online
                                  David G.
                                  wrote on last edited by David G.
                                  #354

                                  Ich habe den Adapter heute mal auf der Arbeit in einer Ubuntu VM (über vmware esxi) installiert (den-version von vor 10min) um mir die Funktionen anzuschauen die am RPI nicht klappen.

                                  Hier möchte sich der Adapter nicht verbinden:

                                  
                                  roborock.0
                                  2023-02-27 14:04:35.458	info	Terminated (NO_ERROR): Without reason
                                  
                                  roborock.0
                                  2023-02-27 14:04:35.457	info	terminating
                                  
                                  roborock.0
                                  2023-02-27 14:04:35.453	warn	Restart initiated
                                  
                                  roborock.0
                                  2023-02-27 14:04:35.436	error	Connection timed out! Deleting UserData and trying again
                                  
                                  roborock.0
                                  2023-02-27 14:04:30.435	info	MQTT initialized
                                  
                                  roborock.0
                                  2023-02-27 14:04:29.442	info	starting. Version 0.0.10-alpha.0 (non-npm: copystring/ioBroker.roborock#dev) in /opt/iobroker/node_modules/iobroker.roborock, node: v14.19.3, js-controller: 4.0.21
                                  

                                  Zeigt eure Lovelace-Visualisierung klick
                                  (Auch ideal um sich Anregungen zu holen)

                                  Meine Tabellen für eure Visualisierung klick

                                  wendy2702W 1 Reply Last reply
                                  0
                                  • David G.D David G.

                                    Ich habe den Adapter heute mal auf der Arbeit in einer Ubuntu VM (über vmware esxi) installiert (den-version von vor 10min) um mir die Funktionen anzuschauen die am RPI nicht klappen.

                                    Hier möchte sich der Adapter nicht verbinden:

                                    
                                    roborock.0
                                    2023-02-27 14:04:35.458	info	Terminated (NO_ERROR): Without reason
                                    
                                    roborock.0
                                    2023-02-27 14:04:35.457	info	terminating
                                    
                                    roborock.0
                                    2023-02-27 14:04:35.453	warn	Restart initiated
                                    
                                    roborock.0
                                    2023-02-27 14:04:35.436	error	Connection timed out! Deleting UserData and trying again
                                    
                                    roborock.0
                                    2023-02-27 14:04:30.435	info	MQTT initialized
                                    
                                    roborock.0
                                    2023-02-27 14:04:29.442	info	starting. Version 0.0.10-alpha.0 (non-npm: copystring/ioBroker.roborock#dev) in /opt/iobroker/node_modules/iobroker.roborock, node: v14.19.3, js-controller: 4.0.21
                                    
                                    wendy2702W Online
                                    wendy2702W Online
                                    wendy2702
                                    wrote on last edited by
                                    #355

                                    @david-g sagte in Roborock Adapter tester gesucht:

                                    Arbeit in einer Ubuntu VM (über vmware esxi)

                                    Zu wenig infos.

                                    Welche Ubuntu Version?
                                    NodeJS?
                                    NPM?
                                    Log im Debug mode

                                    Bitte keine Fragen per PN, die gehören ins Forum!

                                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                    1 Reply Last reply
                                    0
                                    • David G.D Online
                                      David G.D Online
                                      David G.
                                      wrote on last edited by David G.
                                      #356

                                      @wendy2702

                                      Bleibt nun grün.
                                      Die Firewall hat den Adapter irgendwie geblockt. Mal sehen warum (hab Sie grad zum Test kurz deaktiviert).

                                      Zeigt eure Lovelace-Visualisierung klick
                                      (Auch ideal um sich Anregungen zu holen)

                                      Meine Tabellen für eure Visualisierung klick

                                      1 Reply Last reply
                                      0
                                      • David G.D David G.

                                        @copystring

                                        So,

                                        habe getestet. Es klappt.
                                        Allerdings war es wohl ein Fehler meinerseits.

                                        Ich muss (wie ich jetzt gemerkt habe) erst die Multimap der Etage laden, und dann die Reinigung starten.
                                        Das bekomme ich aber leicht in einem Skript eingebaut.

                                        EDIT:
                                        Hab mir ein Blockly geschrieben, um sicherzugehen, dass ich nur Räume in einer Etage aktiv habe und wähle dementsprechend die entsprechende Map aus.

                                        Screenshot_20230227_073612_Chrome.jpg

                                        So kann man in der Visu nichts falsch machen:
                                        Screenshot_20230227_073743_Fully Kiosk Browser.jpg

                                        Aber eine andere Frage:
                                        Bei jedem Start sende ich vorab noch die Saugleistung und Wassermenge über set_water_box_custom_mode und set_custom_mode.
                                        Die Beiden Datenpunkte stehen in meiner Visualisierung zum dropdown bereit.

                                        Das mache ich, da meine Frau das ggf zwischenzeitlich per App geändert haben könnte.

                                        Ist es möglich die beiden Datenpunkte unter commands vom Adapter aus mit dem Roboter synchron zu halten?

                                        So müsste man/ich es nicht immer mit senden und man sieht die aktuelle Einstellung in seiner Auswahl.

                                        copystringC Offline
                                        copystringC Offline
                                        copystring
                                        wrote on last edited by
                                        #357

                                        @david-g said in Roborock Adapter tester gesucht:

                                        @copystring

                                        So,

                                        habe getestet. Es klappt.
                                        Allerdings war es wohl ein Fehler meinerseits.

                                        Ich muss (wie ich jetzt gemerkt habe) erst die Multimap der Etage laden, und dann die Reinigung starten.
                                        Das bekomme ich aber leicht in einem Skript eingebaut.

                                        Genau. Die Karte muss ausgewählt sein damit dort entsprechenden gesaugt wird.

                                        EDIT:
                                        Hab mir ein Blockly geschrieben, um sicherzugehen, dass ich nur Räume in einer Etage aktiv habe und wähle dementsprechend die entsprechende Map aus.

                                        Es reicht tatsächlich aus nur die Karte auszuwählen. Den Rest macht der Adapter automatisch. Das bedeutet es werden nur die Räume zum Reinigen abgeschickt, welche auf auf der aktuellen Karte verfügbar sind. Dadurch muss man nicht jedes mal die zu reinigenden Räume ändern.

                                        Screenshot_20230227_073612_Chrome.jpg

                                        So kann man in der Visu nichts falsch machen:
                                        Screenshot_20230227_073743_Fully Kiosk Browser.jpg

                                        Aber eine andere Frage:
                                        Bei jedem Start sende ich vorab noch die Saugleistung und Wassermenge über set_water_box_custom_mode und set_custom_mode.
                                        Die Beiden Datenpunkte stehen in meiner Visualisierung zum dropdown bereit.

                                        Das mache ich, da meine Frau das ggf zwischenzeitlich per App geändert haben könnte.

                                        Ist es möglich die beiden Datenpunkte unter commands vom Adapter aus mit dem Roboter synchron zu halten?

                                        So müsste man/ich es nicht immer mit senden und man sieht die aktuelle Einstellung in seiner Auswahl.

                                        Ähm nein. Das baue ich bewusst nicht ein da die commands, wie der Name schon verrät, einfach nur Befehle sind. Dort wird absichtlich nichts gelesen weil der echte wert von z.B. water_box_custom_mode unter deviceStatus zu finden ist. Synchron ist also alles unter deviceStatus. Diese nehmen auch die Daten aus der App entsprechend an. Wenn du dann über den Adapter set_water_box_custom_mode ausführst taucht genau so unter deviceStatus auf wie aus der App.

                                        Unterstütze meine Arbeit gerne mit einer Spende über PayPal:
                                        https://paypal.me/copystring

                                        David G.D 2 Replies Last reply
                                        0
                                        • copystringC Offline
                                          copystringC Offline
                                          copystring
                                          wrote on last edited by copystring
                                          #358

                                          Ich brauche mal eure Hilfe.
                                          Es geht darum, die echten Werte der Verbrauchsmaterialien des Saugroboters zu bekommen.
                                          Bei mir sind das diese: Filter, Main Brush, Side Brush.
                                          In der aktuellen dev branch von gerade eben wird nicht mehr wie zuvor HomeData nur ein mal beim Einrichten des Adapters aktualisiert, sondern bei jedem Reconnect. Dadurch werden selbstverständlich einige weitere Daten zur Verfügung gestellt.
                                          In diesem Fall geht es um drei Werte im JSON String unter deviceStatus von HomeData.: 125, 126,127
                                          Diese haben bei mir folgende Bedeutung:

                                          • 125 = Main Brush
                                          • 126 = Side Brush
                                          • 127 = Filter

                                          Von jedem Wert dann jeweils 1 abziehen. Das sollte dann dem Wert in der App entsprechen.
                                          Klappt das bei euch auch würde ich das tatsächlich einbauen. Dadurch erhalten wir alle drei Stunden (oder bei Reconnect) die echten Werte in Prozent der Verbrauchsmaterialien, ohne für jeden Roboter eine eigene Berechnung durchführen zu müssen.

                                          Unterstütze meine Arbeit gerne mit einer Spende über PayPal:
                                          https://paypal.me/copystring

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          537

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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