Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Roborock Adapter tester gesucht

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Roborock Adapter tester gesucht

    This topic has been deleted. Only users with topic management privileges can see it.
    • copystring
      copystring @DonToben last edited by

      @dontoben said in Roborock Adapter tester gesucht:

      @copystring

      Mit dem letzten dev branch habe ich ständig folgende Meldungen.

      2023-04-16 00:00:11.387 - warn: roborock.0 (31163) MQTT connection close.
      2023-04-16 00:00:11.396 - warn: roborock.0 (31163) MQTT connection reconnect.
      2023-04-16 00:00:11.471 - info: roborock.0 (31163) State value to set for "roborock.0.Devices.5Im6TX0cm6mgxaWxHaEos7.updateStatus.updatable" has to be type "string" but received type "boolean"
      2023-04-16 00:00:21.899 - error: roborock.0 (31163) Failed to execute get_room_mapping. Error: Error: Request with id 6866 timed out after 10 seconds for response.102
      2023-04-16 00:08:21.905 - error: roborock.0 (31163) Failed to execute get_water_box_custom_mode. Error: Error: Request with id 5048 timed out after 10 seconds for response.102
      2023-04-16 00:17:21.905 - error: roborock.0 (31163) Failed to execute get_consumable. Error: Error: Request with id 8491 timed out after 10 seconds for response.102
      2023-04-16 00:17:21.906 - error: roborock.0 (31163) Failed to execute get_carpet_clean_mode. Error: Error: Request with id 2782 timed out after 10 seconds for response.102
      2023-04-16 00:21:21.907 - error: roborock.0 (31163) Failed to execute get_room_mapping. Error: Error: Request with id 2447 timed out after 10 seconds for response.102
      2023-04-16 00:22:21.906 - error: roborock.0 (31163) Failed to execute get_room_mapping. Error: Error: Request with id 6434 timed out after 10 seconds for response.102
      2023-04-16 00:24:21.906 - error: roborock.0 (31163) Failed to execute get_status. Error: Error: Request with id 9671 timed out after 10 seconds for response.102
      2023-04-16 00:24:21.908 - error: roborock.0 (31163) Failed to execute get_carpet_mode. Error: Error: Request with id 4780 timed out after 10 seconds for response.102
      2023-04-16 00:44:21.914 - error: roborock.0 (31163) Failed to execute get_carpet_mode. Error: Error: Request with id 7326 timed out after 10 seconds for response.102
      2023-04-16 00:54:21.916 - error: roborock.0 (31163) Failed to execute get_status. Error: Error: Request with id 8849 timed out after 10 seconds for response.102
      2023-04-16 01:02:21.924 - error: roborock.0 (31163) Failed to execute get_carpet_mode. Error: Error: Request with id 2613 timed out after 10 seconds for response.102
      2023-04-16 01:04:21.924 - error: roborock.0 (31163) Failed to execute get_water_box_custom_mode. Error: Error: Request with id 9896 timed out after 10 seconds for response.102
      2023-04-16 01:24:21.935 - error: roborock.0 (31163) Failed to execute get_network_info. Error: Error: Request with id 2610 timed out after 10 seconds for response.102
      2023-04-16 01:39:21.945 - error: roborock.0 (31163) Failed to execute get_carpet_mode. Error: Error: Request with id 4178 timed out after 10 seconds for response.102
      2023-04-16 02:26:25.831 - info: host.raspberrypi Delete log file iobroker.2023-04-08.log.gz
      2023-04-16 02:29:21.967 - error: roborock.0 (31163) Failed to execute get_network_info. Error: Error: Request with id 9757 timed out after 10 seconds for response.102
      2023-04-16 02:29:21.968 - error: roborock.0 (31163) Failed to execute get_carpet_mode. Error: Error: Request with id 9992 timed out after 10 seconds for response.102
      2023-04-16 02:31:21.970 - error: roborock.0 (31163) Failed to execute get_room_mapping. Error: Error: Request with id 5967 timed out after 10 seconds for response.102
      2023-04-16 02:45:21.976 - error: roborock.0 (31163) Failed to execute get_carpet_mode. Error: Error: Request with id 6739 timed out after 10 seconds for response.102
      2023-04-16 03:00:11.388 - warn: roborock.0 (31163) MQTT connection close.
      2023-04-16 03:00:11.389 - warn: roborock.0 (31163) MQTT connection reconnect.
      2023-04-16 03:00:11.611 - info: roborock.0 (31163) State value to set for "roborock.0.Devices.5Im6TX0cm6mgxaWxHaEos7.updateStatus.updatable" has to be type "string" but received type "boolean"
      2023-04-16 03:02:21.981 - error: roborock.0 (31163) Failed to execute get_network_info. Error: Error: Request with id 7462 timed out after 10 seconds for response.102
      2023-04-16 03:02:21.983 - error: roborock.0 (31163) Failed to execute get_water_box_custom_mode. Error: Error: Request with id 9020 timed out after 10 seconds for response.102
      2023-04-16 03:05:21.983 - error: roborock.0 (31163) Failed to execute get_status. Error: Error: Request with id 9954 timed out after 10 seconds for response.102
      2023-04-16 03:05:21.984 - error: roborock.0 (31163) Failed to execute get_consumable. Error: Error: Request with id 3501 timed out after 10 seconds for response.102
      2023-04-16 03:05:21.984 - error: roborock.0 (31163) Failed to execute get_network_info. Error: Error: Request with id 6613 timed out after 10 seconds for response.102
      2023-04-16 03:05:21.985 - error: roborock.0 (31163) Failed to execute get_carpet_mode. Error: Error: Request with id 3573 timed out after 10 seconds for response.102
      2023-04-16 03:05:21.986 - error: roborock.0 (31163) Failed to execute get_carpet_clean_mode. Error: Error: Request with id 4264 timed out after 10 seconds for response.102
      2023-04-16 03:05:21.986 - error: roborock.0 (31163) Failed to execute get_water_box_custom_mode. Error: Error: Request with id 6112 timed out after 10 seconds for response.102
      2023-04-16 03:05:21.987 - error: roborock.0 (31163) Failed to execute get_room_mapping. Error: Error: Request with id 9996 timed out after 10 seconds for response.102
      2023-04-16 03:36:21.998 - error: roborock.0 (31163) Failed to execute get_consumable. Error: Error: Request with id 8101 timed out after 10 seconds for response.102
      2023-04-16 03:36:21.999 - error: roborock.0 (31163) Failed to execute get_carpet_clean_mode. Error: Error: Request with id 1292 timed out after 10 seconds for response.102
      2023-04-16 03:40:22.002 - error: roborock.0 (31163) Failed to execute get_status. Error: Error: Request with id 5963 timed out after 10 seconds for response.102
      2023-04-16 03:51:22.009 - error: roborock.0 (31163) Failed to execute get_consumable. Error: Error: Request with id 4946 timed out after 10 seconds for response.102
      2023-04-16 03:54:22.010 - error: roborock.0 (31163) Failed to execute get_consumable. Error: Error: Request with id 1316 timed out after 10 seconds for response.102
      2023-04-16 03:54:22.011 - error: roborock.0 (31163) Failed to execute get_carpet_clean_mode. Error: Error: Request with id 1181 timed out after 10 seconds for response.102
      2023-04-16 03:55:22.011 - error: roborock.0 (31163) Failed to execute get_consumable. Error: Error: Request with id 2767 timed out after 10 seconds for response.102
      2023-04-16 03:58:22.015 - error: roborock.0 (31163) Failed to execute get_status. Error: Error: Request with id 2554 timed out after 10 seconds for response.102
      2023-04-16 03:58:22.016 - error: roborock.0 (31163) Failed to execute get_carpet_mode. Error: Error: Request with id 2289 timed out after 10 seconds for response.102
      2023-04-16 03:58:22.018 - error: roborock.0 (31163) Failed to execute get_room_mapping. Error: Error: Request with id 4789 timed out after 10 seconds for response.102
      2023-04-16 04:03:22.022 - error: roborock.0 (31163) Failed to execute get_room_mapping. Error: Error: Request with id 9611 timed out after 10 seconds for response.102
      2023-04-16 04:25:22.038 - error: roborock.0 (31163) Failed to execute get_carpet_mode. Error: Error: Request with id 2463 timed out after 10 seconds for response.102
      2023-04-16 04:34:22.040 - error: roborock.0 (31163) Failed to execute get_status. Error: Error: Request with id 5493 timed out after 10 seconds for response.102
      2023-04-16 04:57:22.053 - error: roborock.0 (31163) Failed to execute get_status. Error: Error: Request with id 1654 timed out after 10 seconds for response.102
      2023-04-16 05:06:22.063 - error: roborock.0 (31163) Failed to execute get_carpet_clean_mode. Error: Error: Request with id 3276 timed out after 10 seconds for response.102
      2023-04-16 05:25:22.074 - error: roborock.0 (31163) Failed to execute get_status. Error: Error: Request with id 1712 timed out after 10 seconds for response.102
      2023-04-16 05:25:22.074 - error: roborock.0 (31163) Failed to execute get_carpet_mode. Error: Error: Request with id 6715 timed out after 10 seconds for response.102
      2023-04-16 06:00:00.070 - info: alexa2.0 (31244) Scheduled restart.
      2023-04-16 06:00:00.092 - info: roborock.0 (31163) Scheduled restart.
      2023-04-16 06:00:00.101 - info: alexa2.0 (31244) terminating
      

      Der Server von Roborock antwortet halt nicht immer. Das kann ja verschiedene Gründe haben. Der Adapter erkennt eben, dass der Server nicht antwortete. Das musste ich einbauen, weil es sonst Nachrichten gab, die durcheinandergekommen sind.

      S 1 Reply Last reply Reply Quote 0
      • S
        socke85 @copystring last edited by

        Ich habe den Adapter installiert und habe nur einen leeren Ordner in den Objekten unter Instanzen taucht er nicht auf. Installiert mit der URL: https://github.com/copystring/ioBroker.roborock.git

        js 4.0.24 NPM:
        v8.19.2

        Habt ihr einen Tipp für mich?

        1 Reply Last reply Reply Quote 0
        • R
          RandyAndy last edited by RandyAndy

          Eigentlich finde ich den Adapter als solches ja interessant. Ich habe Ihn auch mehrfach installiert/geupdated. Inzwischen habe ich Ihn aber wieder gelöscht. Plötzlich war der Plan der Wohnung verdoppelt. Das Roboter hat sich dann auch komisch verhalten. Ich kann natürlich nicht sagen ob dies der Adpter ist oder nicht. Nach der Deinstallation (ist nun auch schon 2-3 Wochen her) ist wieder alles normal.
          Da man die Cloud immer noch braucht ist mir dann die App doch lieber, da man ja eigentlich mit dem Adpater nicht mehr machen kann. Der Adpater wäre erst dann interessant wenn er den Cloud-Zwang aufhebt, dann würde ich mich wieder damit beschäftigen.

          copystring O 2 Replies Last reply Reply Quote 0
          • copystring
            copystring @RandyAndy last edited by

            @randyandy said in Roborock Adapter tester gesucht:

            Eigentlich finde ich den Adapter als solches ja interessant. Ich habe Ihn auch mehrfach installiert/geupdated. Inzwischen habe ich Ihn aber wieder gelöscht. Plötzlich war der Plan der Wohnung verdoppelt. Das Roboter hat sich dann auch komisch verhalten. Ich kann natürlich nicht sagen ob dies der Adpter ist oder nicht. Nach der Deinstallation (ist nun auch schon 2-3 Wochen her) ist wieder alles normal.
            Da man die Cloud immer noch braucht ist mir dann die App doch lieber, da man ja eigentlich mit dem Adpater nicht mehr machen kann. Der Adpater wäre erst dann interessant wenn er den Cloud-Zwang aufhebt, dann würde ich mich wieder damit beschäftigen.

            Klar. Der Adapter kann nicht jedem gefallen. Das ist auch OK so. Wenn du allerdings eine Lösung möchtest, welche ohne Cloud klarkommt, dann musst du dir Valetudo auf dem Roboter installieren. Eine custom Firmware, welche die Cloudanbindung auflöst und ausschließlich lokal funktioniert. Damit wird allerdings kein Multilevel Reinigen unterstützt. Man kann also nur eine Karte haben, welche man dann entsprechend tauschen muss, wenn man das Stockwerk wechselt.

            1 Reply Last reply Reply Quote 0
            • O
              oxident @RandyAndy last edited by oxident

              @randyandy Ich denke, man sollte den Adapter auch nicht als Konkurrenz zur App sehen. Eher als Ergänzung: Wer will, der kann z. B. mit dem Wandschalter die Reinigung starten, beim Aufschließen der Haustür den Roboter die Reinigung abbrechen lassen usw.

              Diese ganzen Möglichkeiten sind doch eigentlich das, was ein -Smart- home ausmachen.

              copystring David G. 2 Replies Last reply Reply Quote 0
              • copystring
                copystring @oxident last edited by copystring

                @oxident said in Roborock Adapter tester gesucht:

                @randyandy Ich denke, man sollte den Adapter auch nicht als Konkurrenz zur App sehen. Eher als Ergänzung: Wer will, der kann z. B. mit dem Wandschalter die Reinigung starten, beim Aufschließen der Haustür den Roboter die Reinigung abbrechen lassen usw.

                Diese ganzen Möglichkeiten sind doch eigentlich das, was ein -Smart- home ausmachen.

                Dem kann ich mich nur anschließen. Bei uns lasse ich den Roboter automatisch reinigen sobald alle das Haus verlassen. Das Haus weiß immer wann jemand zu Hause ist.

                1 Reply Last reply Reply Quote 0
                • David G.
                  David G. @oxident last edited by David G.

                  @oxident sagte in Roborock Adapter tester gesucht:

                  Ich denke, man sollte den Adapter auch nicht als Konkurrenz zur App sehen.

                  Das finde ich nicht.
                  Meine Frau nutzt die App, ich ausnahmslos den Adapter.

                  Ich behaupte, über meine Visualisierung bestimmt 95% dessen was die App kann ab abzubilden.
                  Mir fehlt nur die Zonenreinigung (nutze ich auch nicht), da diese am Raspi nicht klappt.

                  1 Reply Last reply Reply Quote 0
                  • S
                    Spampunk @copystring last edited by

                    @copystring Ich warte ja wie auf Weihnachten, dass Dein Adapter im ioBroker Repository aufgenommen wird.

                    Bis dahin: gibt es auf GitHub eine Version, die als stable betrachtet werden kann? Dann würde ich die gerne installieren.

                    Ich bin halt ein wenig vorsichtig, da mein S5Max zurzeit noch mit Xiaomi unterwegs ist und der Wechsel zu Roborock bedeutet, sowohl den Sauger, als auch meine (umfangreiche) Visualisierung umzustellen.

                    LG,
                    Timo

                    David G. 1 Reply Last reply Reply Quote 0
                    • David G.
                      David G. @Spampunk last edited by

                      @spampunk sagte in Roborock Adapter tester gesucht:

                      Ich warte ja wie auf Weihnachten, dass Dein Adapter im ioBroker Repository aufgenommen wird.

                      Ist von @copystring ja schon beantragt.
                      Aus seiner Sicht ist der Adapter also schon stable.

                      Wenn du das "Wagnis" eingehen möchtest, kannst du es eigentlich auch jetzt schon machen.

                      Bei mir läuft der Adapter absolut rund (bis auf Systembedingt die Zonenreinigung und warum auch immer die Kamera).

                      1 Reply Last reply Reply Quote 0
                      • B
                        bernhaddl last edited by bernhaddl

                        Hallo zusammen, bei mir werden einige Räume immer in beiden Geschossen angelegt. Nach dem Löschen der Ordner und Adapterneustart passt alles, aber sobald ich in der App die Geschosse einmal gewechselt habe herrscht wieder komplettes durcheinander.

                        Hat noch jemand das Problem?

                        Zwischenablage.jpg

                        Die Karten werden bei mir auch nicht angezeigt:

                        Zwischenablage.jpg

                        1 Reply Last reply Reply Quote 0
                        • S
                          socke85 last edited by

                          @copystring Ich habe den Adapter installiert und habe nur einen leeren Ordner in den Objekten unter Instanzen taucht er nicht auf. Installiert mit der URL: https://github.com/copystring/ioBroker.roborock.git

                          js 4.0.24 NPM:
                          v8.19.2

                          Habt ihr einen Tipp für mich?

                          Thomas Braun 1 Reply Last reply Reply Quote 0
                          • Thomas Braun
                            Thomas Braun Most Active @socke85 last edited by

                            @socke85

                            Bei Installationen via github muss eine Instanz manuell hinzugefügt werden.

                            1 Reply Last reply Reply Quote 0
                            • S
                              Spampunk last edited by Spampunk

                              So, der Adapter ist installiert und "Rocky" dreht seine ersten Runden. Was mir sofort positiv aufgefallen ist: die Karte wird auf Anhieb angezeigt. Super!

                              Jetzt implementiere ich die Funktionen nach und nach in meine VIS. Dabei sind zwei Fragen aufgetaucht.

                              1.: Wie teile ich Rocky mit, dass er eine Koordinate anfahren soll (Pin and Go)? Das brauche ich, um Rocky zum Mülleimer und zur Treppe fahren zu lassen

                              2.: In der MiHome-App gab es ein JSON für die History. In diesem Adapter wird dies wohl über einzelne DPs gelöst.
                              a) wie bekomme ich die DPs wohl am elegantesten in eine Tabellenform?
                              b) ist angedacht, die History ebenfalls als JSON bereitzustellen?

                              Viele Grüße und 'Rock on!'
                              Timo

                              David G. 1 Reply Last reply Reply Quote 0
                              • David G.
                                David G. @Spampunk last edited by David G.

                                @spampunk

                                Bei 1 kann ich dir nicht helfen.
                                Zu 2 habe ich ein Blockly, das kann ich nachher posten.

                                EDIT:

                                Hier das Blockly für die Tabelle:

                                <block xmlns="https://developers.google.com/blockly/xml" type="on" id="Ruo}`*7{]@lv,G||k[5F" x="563" y="-2837">
                                 <field name="OID">roborock.0.Devices.7UreppMhwYr4WlSbCtcsno.cleaningInfo.Records.0.begin</field>
                                 <field name="CONDITION">ne</field>
                                 <field name="ACK_CONDITION"></field>
                                 <statement name="STATEMENT">
                                   <block type="variables_set" id="NRcp3}*(xBh~.L?iM%;S">
                                     <field name="VAR" id="h}rL)I-8sHoq.[zJdPK]">tabelle_verlauf</field>
                                     <value name="VALUE">
                                       <block type="text" id="5*LYOa4m$_)t::D}0=X^">
                                         <field name="TEXT"></field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="timeouts_wait" id="pohoes$T^jh[)?@N%PJK">
                                         <field name="DELAY">1000</field>
                                         <field name="UNIT">ms</field>
                                         <next>
                                           <block type="controls_for" id="]lCeE-A7;%nV7@[eyz|+">
                                             <field name="VAR" id="?}`D,Q:1JX1anZ3(}F6t">i</field>
                                             <value name="FROM">
                                               <shadow type="math_number" id="L.$!L`Hbcwo#8v;CKDXP">
                                                 <field name="NUM">0</field>
                                               </shadow>
                                             </value>
                                             <value name="TO">
                                               <shadow type="math_number" id="Kr[I3SwJad,@Q!^!Kdim">
                                                 <field name="NUM">16</field>
                                               </shadow>
                                             </value>
                                             <value name="BY">
                                               <shadow type="math_number" id="LB0`:#oNe-?S36]k3eje">
                                                 <field name="NUM">1</field>
                                               </shadow>
                                             </value>
                                             <statement name="DO">
                                               <block type="variables_set" id="oMd*Kvo;-(xJ(h-f*L5O">
                                                 <field name="VAR" id="m;b}4/$30au!4fZQV[B2">record</field>
                                                 <value name="VALUE">
                                                   <block type="text_join" id="3ibWx`!5[:,x9iIuY0`c">
                                                     <mutation items="3"></mutation>
                                                     <value name="ADD0">
                                                       <block type="text" id="_ll[v`8Z]7ve1J,AGE,_">
                                                         <field name="TEXT">roborock.0.Devices.7UreppMhwYr4WlSbCtcsno.cleaningInfo.Records.</field>
                                                       </block>
                                                     </value>
                                                     <value name="ADD1">
                                                       <block type="variables_get" id="}.*AzvbxB99YLkFH1Z/J">
                                                         <field name="VAR" id="?}`D,Q:1JX1anZ3(}F6t">i</field>
                                                       </block>
                                                     </value>
                                                     <value name="ADD2">
                                                       <block type="text" id="}Y)c;yBQRFI5WAc+R5+l">
                                                         <field name="TEXT">.</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="variables_set" id="AvICYUV5iaDXBb[0A)H^">
                                                     <field name="VAR" id="h}rL)I-8sHoq.[zJdPK]">tabelle_verlauf</field>
                                                     <value name="VALUE">
                                                       <block type="text_join" id="YwI{EL;QX7+]n]$kV!B2">
                                                         <mutation items="8"></mutation>
                                                         <value name="ADD0">
                                                           <block type="variables_get" id="!/.6[kVyqp+3Aoe8a!]u">
                                                             <field name="VAR" id="h}rL)I-8sHoq.[zJdPK]">tabelle_verlauf</field>
                                                           </block>
                                                         </value>
                                                         <value name="ADD1">
                                                           <block type="text" id=".KB2_dSXq~^gIulL~3wl">
                                                             <field name="TEXT">&lt;tr&gt;&lt;td&gt;</field>
                                                           </block>
                                                         </value>
                                                         <value name="ADD2">
                                                           <block type="convert_from_date" id="^U?pwn=Kmkxa^LsAptT!">
                                                             <mutation xmlns="http://www.w3.org/1999/xhtml" format="true" language="false"></mutation>
                                                             <field name="OPTION">custom</field>
                                                             <field name="FORMAT">TT.MM.JJ SS:mm</field>
                                                             <value name="VALUE">
                                                               <block type="get_value_var" id="|k]Z|5_@uef=Camc)~V-">
                                                                 <field name="ATTR">val</field>
                                                                 <value name="OID">
                                                                   <shadow type="text">
                                                                     <field name="TEXT"></field>
                                                                   </shadow>
                                                                   <block type="text_join" id="i|kSl4ST,3R_fx~npG#C">
                                                                     <mutation items="2"></mutation>
                                                                     <value name="ADD0">
                                                                       <block type="variables_get" id="4ZeP`7?M@|iy(@Y=loBL">
                                                                         <field name="VAR" id="m;b}4/$30au!4fZQV[B2">record</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="ADD1">
                                                                       <block type="text" id="uV.z=-V`tH?(4`GHQh$9">
                                                                         <field name="TEXT">begin</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="ADD3">
                                                           <block type="text" id="sD(T9E:4x*?9[Ls2@d@W">
                                                             <field name="TEXT">&lt;/td&gt;&lt;td&gt;</field>
                                                           </block>
                                                         </value>
                                                         <value name="ADD4">
                                                           <block type="get_value_var" id="h|E^5F.{f~+V2?k{-?Ff">
                                                             <field name="ATTR">val</field>
                                                             <value name="OID">
                                                               <shadow type="text">
                                                                 <field name="TEXT"></field>
                                                               </shadow>
                                                               <block type="text_join" id="hFUMp2M8_DUHZ$yf@3DH">
                                                                 <mutation items="2"></mutation>
                                                                 <value name="ADD0">
                                                                   <block type="variables_get" id="0qG=4|}Nry0`AMcLn$#g">
                                                                     <field name="VAR" id="m;b}4/$30au!4fZQV[B2">record</field>
                                                                   </block>
                                                                 </value>
                                                                 <value name="ADD1">
                                                                   <block type="text" id="+:lC=5J^|Nm!kxy|5%v-">
                                                                     <field name="TEXT">duration</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="ADD5">
                                                           <block type="text" id="Il}fUcmft!cFG9hOhP(w">
                                                             <field name="TEXT"> min&lt;/td&gt;&lt;td&gt;</field>
                                                           </block>
                                                         </value>
                                                         <value name="ADD6">
                                                           <block type="get_value_var" id="$I,?)68K$xS@{;3;?%2[">
                                                             <field name="ATTR">val</field>
                                                             <value name="OID">
                                                               <shadow type="text" id="z9yGyugL%]AxL:uH#JM+">
                                                                 <field name="TEXT"></field>
                                                               </shadow>
                                                               <block type="text_join" id="Q$;wg)2]F5GPS2UZvsQR">
                                                                 <mutation items="2"></mutation>
                                                                 <value name="ADD0">
                                                                   <block type="variables_get" id=",YV3PeaqITaalwzc!ek9">
                                                                     <field name="VAR" id="m;b}4/$30au!4fZQV[B2">record</field>
                                                                   </block>
                                                                 </value>
                                                                 <value name="ADD1">
                                                                   <block type="text" id="JDPQn3BYtuNve;~]u~ZC">
                                                                     <field name="TEXT">area</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="ADD7">
                                                           <block type="text" id="YV,7@$]vl_;@5_I8QFCI">
                                                             <field name="TEXT">m²&lt;/td&gt;&lt;tr&gt;</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </next>
                                               </block>
                                             </statement>
                                             <next>
                                               <block type="update" id="6hw`Ebtd`,a=CEDOn!QK">
                                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                 <field name="OID">0_userdata.0.VIS.Mobbie.Tabelle_Verlauf</field>
                                                 <field name="WITH_DELAY">FALSE</field>
                                                 <value name="VALUE">
                                                   <block type="text_join" id="#9Z0fHy}(2XUZ{-B@6G?">
                                                     <mutation items="3"></mutation>
                                                     <value name="ADD0">
                                                       <block type="text" id="|3Lhp9j{X:9sOHBNFJ4K">
                                                         <field name="TEXT">&lt;table width=100%&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Beginn&lt;/td&gt;&lt;td&gt;&lt;b&gt;Dauer&lt;/td&gt;&lt;td&gt;&lt;b&gt;Fläche&lt;/td&gt;&lt;tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;hr&gt;&lt;/td&gt;&lt;tr&gt;</field>
                                                       </block>
                                                     </value>
                                                     <value name="ADD1">
                                                       <block type="variables_get" id="]N1-HC1=:84|vW(FQy~i">
                                                         <field name="VAR" id="h}rL)I-8sHoq.[zJdPK]">tabelle_verlauf</field>
                                                       </block>
                                                     </value>
                                                     <value name="ADD2">
                                                       <block type="text" id="q)G1uj*%v6DmwE)H1q=u">
                                                         <field name="TEXT">&lt;/table&gt;</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </statement>
                                </block>
                                

                                S 1 Reply Last reply Reply Quote 0
                                • S
                                  Spampunk @David G. last edited by Spampunk

                                  @david-g
                                  Vielen Dank, Dein Blockly ist ein guter Ansetzpunkt. Du machst da also eine HTML-Tabelle draus. Nach gleichem Schema lässt sich auch ein JSON daraus basteln. Dann brauche ich meine VIS nicht umzustricken.

                                  Natürlich wäre ich glücklich - nein - extrem begeistert, wenn das der Adapter nativ mit sich bringen würde ^^

                                  Bleibt die Frage mit dem Pin & Go noch offen.

                                  Edit:
                                  UUUUIHHH, gerade das Webinterface-Feature entdeckt. RESPEKT, @copystring ! Das wertet den Adapter noch einmal zusätzlich auf. Könnte man alternativ die Zonen- und GoTo-Buttons auch als DPs in den Adapter integrieren? Die weiteren Buttons sind ja schon so ansteuerbar. Vorteil wäre, dass man das Interface an sein Design anpassen könnte.

                                  Noch eine Sache, die mir aufgefallen ist: Bei meinem S5MAX wird der DP 'set_water_box_custom_mode' nicht angezeigt, obwohl ich ihn in der App einstellen kann.

                                  Beste Grüße,
                                  Timo

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

                                    @spampunk said in Roborock Adapter tester gesucht:

                                    b) ist angedacht, die History ebenfalls als JSON bereitzustellen?

                                    In der neuen dev Version habe ich einen neuen JSON Datenpunkt für den Verlauf erstellt.
                                    Die Daten sind jedoch nicht verarbeitet und kommen so direkt von Roborock. z. B. musst dir die Einheiten und Zeiten noch umrechnen.

                                    Bleibt die Frage mit dem Pin & Go noch offen.

                                    Ebenfalls in der aktuelle dev Version ist jetzt neu der app_goto_target befehl.
                                    Woher bekommst du die Koordinate? Über das Webinterface. Im Browser die Konsole öffnen und mit der Maus dort hinklicken, wohin später der Roboter fahren soll. In der Konsole steht dann sowas wie das hier: Robot coords: [23713,25488]. [23713,25488]dann nehmen und über app_goto_target senden. Ob du dir dann deine verschiedenen Koordinaten in Scripte oder Blockly speicherst und absendest, ist dann dir überlassen.

                                    Edit:
                                    UUUUIHHH, gerade das Webinterface-Feature entdeckt. RESPEKT, @copystring ! Das wertet den Adapter noch einmal zusätzlich auf. Könnte man alternativ die Zonen- und GoTo-Buttons auch als DPs in den Adapter integrieren? Die weiteren Buttons sind ja schon so ansteuerbar. Vorteil wäre, dass man das Interface an sein Design anpassen könnte.

                                    Danke. 🙂
                                    Zonenreinigung ist bereits im Adapter eingebaut über app_zoned_clean. Die Koordinaten kannst du ebenfalls der Konsole im Browser ablesen.

                                    Noch eine Sache, die mir aufgefallen ist: Bei meinem S5MAX wird der DP 'set_water_box_custom_mode' nicht angezeigt, obwohl ich ihn in der App einstellen kann.

                                    Ebenfalls in der dev Version eingebaut.

                                    Hab ich noch etwas übersehen?
                                    Über eine Rückmeldung freue ich mich sehr. Hier die dev Version: https://github.com/copystring/ioBroker.roborock/tree/dev

                                    Edit: app_zoned_clean mal aus den commands löschen. Das war fehlerhaft. Dann den Adapter neu starten. Dadurch wird der Befehl sauber neu erstellt.

                                    S 1 Reply Last reply Reply Quote 0
                                    • S
                                      Spampunk @copystring last edited by Spampunk

                                      @copystring
                                      Ich bin wirklich sehr begeistert und beeindruckt!
                                      Der Dev-Adapter bietet viel zum Ausprobieren und von den Features, die ich mir vorgestellt habe. Wenn ich Dir eine Rückmeldung zu meinen Eindrücken und Fragen geben darf:

                                      1. Records: um die einzelnen Codes besser verstehen zu können, ist hier eine Tabelle. Es wäre super, wenn die Datenpunkte die Erläuterungen darstellen würden z.B. Clean Type | full(1).

                                      Das JSON ist vollkommen i.O. Die Unix Timestamps kann ich selbst umrechnen, die Sekunden usw. auch. Super, dass Du das implementiert hast!

                                      2. Goto: Auch hier wunderbar, dass Du den DP eingefügt hast, um mittels Skript oder so einen Punkt anfahren zu können. Allerdings habe ich noch nicht verstanden, wie ich an die Koordinate komme. Die Koordinaten vom Mihome-Adapter funktionieren aber auch noch, so dass ich die einfach übernommen habe.

                                      Edit: jetzt hab ich es geschnallt! Google ist dein Freund 🙂 Konsole gefunden, Koordinaten auch - ein Traum!

                                      3. Webinterface: Das ist ein echt tolles Feature, um Zonen zu zeichnen und Pin&Go zu verwenden. Ich würde mir nur wünschen, dass die Karte solo verfügbar wäre. Damit könnte man die Buttons dann im eigenen Style gestalten und auch die Karte drehen. Bei mir steht sie z.B. auf dem Kopf. Ich kann das HTML-Widget mit dem iFrame drehen, aber dann drehe ich auch die Buttons...

                                      So sieht das dann bei mir aus (ohne Drehung):
                                      fa585f3e-182f-4654-aada-c908c21683ac-image.png

                                      4. set_water_box_custom_mode: Scheint auch zu funktionieren, danke, dass Du das eingerichtet hast. In den DPs sollten auch noch die Beschreibungen rein. Hier aus dem Mihome Adapter:
                                      bd4d2fe2-f313-42a1-bfb2-943c5d4a498b-image.png

                                      5. reset_consumables und diverse Commands: Den DPs würde ich die Rolle 'Button' anstatt 'Value' zuteilen. Aber das ist bereits Kritik auf hohem Niveau 😉

                                      Was hat es denn mit dem DP roborock.0.Devices.xxx.map.mapData auf sich?'

                                      Feature Request: Kann man in der Karte/Webinterface auch die einzelnen Räume anklickbar machen zur Raumreinigung?

                                      Soweit ich das bisher überblicke, funktioniert alles Weitere einwandfrei.

                                      LG Timo

                                      copystring 1 Reply Last reply Reply Quote 0
                                      • copystring
                                        copystring @Spampunk last edited by

                                        @spampunk said in Roborock Adapter tester gesucht:

                                        1. Records: um die einzelnen Codes besser verstehen zu können, ist hier eine Tabelle. Es wäre super, wenn die Datenpunkte die Erläuterungen darstellen würden z.B. Clean Type | full(1).

                                        Ich verstehe nicht ganz was du mir damit sagen möchtest. Kannst du mir das nochmal genauer erklären? Das Github XiaomiRobotVacuumProtocol kenne ich bereits.

                                        Ich würde mir nur wünschen, dass die Karte solo verfügbar wäre.

                                        Die Karte ist unter roborock.0.Devices.XXX.map.mapBase64 solo verfügbar. Du kannst dir damit dein eigenes Webinterface bauen und die Karte drehen. Es ist allerdings nur ein Bild ohne irgendwelche Funktionen. Die musst dir dann selber auf deine Seite in HTML/JS bauen.

                                        4. set_water_box_custom_mode: Scheint auch zu funktionieren, danke, dass Du das eingerichtet hast. In den DPs sollten auch noch die Beschreibungen rein. Hier aus dem Mihome Adapter:
                                        bd4d2fe2-f313-42a1-bfb2-943c5d4a498b-image.png

                                        Ist in der neuen dev eingebaut.

                                        5. reset_consumables und diverse Commands: Den DPs würde ich die Rolle 'Button' anstatt 'Value' zuteilen. Aber das ist bereits Kritik auf hohem Niveau 😉

                                        Ähm, ja, das könnte man tatsächlich machen. Dafür müsste ziemlich viele Werte abändern, worauf ich aktuell keine Lust habe. 🙂 Aber an sich wäre das schon richtig und mit etwas Fleißarbeit verbunden.

                                        Was hat es denn mit dem DP roborock.0.Devices.xxx.map.mapData auf sich?'

                                        Das ist die Karte, bevor daraus ein Bild gemacht wurde. Der Adapter baut daraus ein Bild und speichert es unter mapBase64Truncated und mapBase64 ab.

                                        Feature Request: Kann man in der Karte/Webinterface auch die einzelnen Räume anklickbar machen zur Raumreinigung?

                                        Ja, die Idee hatte ich auch schon, ist aber viel Arbeit. Kommt aber irgendwann, wenn ich mal wieder etwas mehr Zeit habe. Dafür müsste der gesamte Code zum Erstellen der Karte neu geschrieben werden.

                                        S 1 Reply Last reply Reply Quote 0
                                        • S
                                          Spampunk @copystring last edited by

                                          @copystring said in Roborock Adapter tester gesucht:

                                          @spampunk said in Roborock Adapter tester gesucht:

                                          1. Records: um die einzelnen Codes besser verstehen zu können, ist hier eine Tabelle. Es wäre super, wenn die Datenpunkte die Erläuterungen darstellen würden z.B. Clean Type | full(1).

                                          Ich verstehe nicht ganz was du mir damit sagen möchtest. Kannst du mir das nochmal genauer erklären? Das Github XiaomiRobotVacuumProtocol kenne ich bereits.

                                          Wie unter 4, dass dort eine Beschreibung der Nummernwerte im DP erfolgt.

                                          Ich würde mir nur wünschen, dass die Karte solo verfügbar wäre.

                                          Die Karte ist unter roborock.0.Devices.XXX.map.mapBase64 solo verfügbar. Du kannst dir damit dein eigenes Webinterface bauen und die Karte drehen. Es ist allerdings nur ein Bild ohne irgendwelche Funktionen. Die musst dir dann selber auf deine Seite in HTML/JS bauen.

                                          Das hab ich mir gedacht 🙂 Kann ich da eventuell auf Deinen Code aufbauen und wo finde ich ihn? Ich bin ja nur ein Hobby-ioBroker-Skriptkiddy, der sich rudimentär und bei Bedarf in HTML/JS/CSS eingearbeitet hat.

                                          4. set_water_box_custom_mode: Scheint auch zu funktionieren, danke, dass Du das eingerichtet hast. In den DPs sollten auch noch die Beschreibungen rein. Hier aus dem Mihome Adapter:
                                          bd4d2fe2-f313-42a1-bfb2-943c5d4a498b-image.png

                                          Ist in der neuen dev eingebaut.

                                          👍

                                          5. reset_consumables und diverse Commands: Den DPs würde ich die Rolle 'Button' anstatt 'Value' zuteilen. Aber das ist bereits Kritik auf hohem Niveau 😉

                                          Ähm, ja, das könnte man tatsächlich machen. Dafür müsste ziemlich viele Werte abändern, worauf ich aktuell keine Lust habe. 🙂 Aber an sich wäre das schon richtig und mit etwas Fleißarbeit verbunden.

                                          Das kann ich gerne machen, wenn Du mir zeigst, wie. Ist das beim Adapterbau so ähnlich wie im Objekte-Tree auf der Admin-Oberfläche? Also ein JSON? Das kriege ich hin. Bei der Gelegenheit kann ich dann auch die Bezeichnungen einpflegen.

                                          Was hat es denn mit dem DP roborock.0.Devices.xxx.map.mapData auf sich?'

                                          Das ist die Karte, bevor daraus ein Bild gemacht wurde. Der Adapter baut daraus ein Bild und speichert es unter mapBase64Truncated und mapBase64 ab.

                                          Feature Request: Kann man in der Karte/Webinterface auch die einzelnen Räume anklickbar machen zur Raumreinigung?

                                          Ja, die Idee hatte ich auch schon, ist aber viel Arbeit. Kommt aber irgendwann, wenn ich mal wieder etwas mehr Zeit habe. Dafür müsste der gesamte Code zum Erstellen der Karte neu geschrieben werden.

                                          Ja, auch das habe ich mir schon gedacht. Ich behelfe mir da wohl weiterhin mit Layer über der Karte. Das funktioniert recht gut, auch wenn es ein wenig hemdsärmelig ist.

                                          LG Timo

                                          copystring 1 Reply Last reply Reply Quote 0
                                          • A
                                            ArnoD last edited by

                                            @copystring
                                            Habe heute die neue dev Version installiert und erhalte jetzt beim Start von der Instanz eine Warnung im LOG:

                                            admin.0	2023-04-22 13:02:49.234	warn	This object will not be created in future versions. Please report this to the developer.
                                            admin.0 2023-04-22 13:02:49.233	warn	Object roborock.0.Devices.xxxxxxxxxxxxxxxxxxxxxxx.commands.app_set_dryer_status is invalid: Default value has to be type "boolean" but received type "object"
                                            

                                            Wenn man dann versucht app_set_dryer_status zu ändern kommt folgender Fehler:
                                            dafc06de-44eb-4b37-8902-f2f63978c268-grafik.png

                                            copystring 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            944
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            51
                                            766
                                            138781
                                            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