Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Hm-rpc 1.2.0

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Hm-rpc 1.2.0

    This topic has been deleted. Only users with topic management privileges can see it.
    • N
      nobody last edited by

      Hallo Bluefox,

      ich hab die Version 1.3.0 installiert und mit mehreren Aktoren ausprobiert.

      Mit einfachen Schaltaktoren klappt die Übertragung in beide Richtungen.

      Problem ist auch hier der Jalousie-Aktor. Damit klappt es bei mir leider noch nicht.

      Wenn ich den Wert für level in VIS ändere, wird dieser korrekt übertragen.

      Wenn ich die Jalousie von Hand oder in der Homematic ändere, kam jedoch nur eine Änderung auf 0 (komplett zu) durch. Alle anderen Änderungen werden nicht übertragen.

      Gruß

      Markus

      1 Reply Last reply Reply Quote 0
      • N
        nobody last edited by

        Ich hab jetzt auch den Grund gefunden, warum die Level-Werte falsch sind:

        Es fehlt die Sonderlogik für Unit=100% in der neuen Version.

        Statt 45% oder 100% wird nun als Level 0.45 % oder 1 % eingetragen.

        632_levelbug.png

        1 Reply Last reply Reply Quote 0
        • P
          pix last edited by

          @Bluefox:

          Da kommen unerwartete Daten vom CCU.

          Kannst du /opt/iobroker/node_modules/iobroker.hm-rpc/node_modules/binrpc/lib/server.js ändern (ab Zeile 70):

          von

           `// reorder WORKING datapoint
                      for (var i = 0; i < request.params[0].length; i++) {
                          if (request.params[0][i].params[2] === 'WORKING') {
                              request.params[0][0] = request.params[0].splice(i, 1, request.params[0][0])[0];
                          }
                      }` 
          
          auf 
          `~~[code]~~	    // reorder WORKING datapoint
                      for (var i = 0; i < request.params[0].length; i++) {
                          if (request.params[0][i].params && request.params[0][i].params[2] === 'WORKING') {
                              request.params[0][0] = request.params[0].splice(i, 1, request.params[0][0])[0];
                          }
                      }` 
          Erledigt. HM-RPC und HM-REGA vorher angehalten. Warte Änderungen ab.
          
          Danke,
          
          Pix
          
          ~~[color]~~
          
          EDIT:[/color]
          
          XML Verbindung brachte weiterhin Fehler:
          `~~[code]~~2016-06-24 11:57:19.970  - [31merror[39m: hm-rpc.0 Error: XML-RPC fault: ping: unknown method name[/code]`
          Umstellung auf BIN-RPC funktionierte danach tadellos. Keine Fehler ausser dem obligatorischen 
          `~~[code]~~2016-06-24 11:58:40.865  - [33mwarn[39m: hm-rpc.1 No image for "HM-TC-IT-WM-W-EU" found.[/code]`
           :lol: 
          
          Somit sind auch Fehler beim Auslesen der Stromzähler und beim Schreiben der LED16-Anzeige wieder korrigiert.
          
          Danke![/code][/code][/i][/i][/code][/i]
          ``` ` 
          1 Reply Last reply Reply Quote 0
          • Bluefox
            Bluefox last edited by

            @nobody:

            Ich hab jetzt auch den Grund gefunden, warum die Level-Werte falsch sind:

            Es fehlt die Sonderlogik für Unit=100% in der neuen Version.

            Statt 45% oder 100% wird nun als Level 0.45 % oder 1 % eingetragen.

            filename="levelbug.png" index="0">~~ `
            Kannst du das Objekt hier Posten?

            1 Reply Last reply Reply Quote 0
            • N
              nobody last edited by

              Was benötigst du genau?

              Hier erstmal ein Export eines Jalousieaktors von der Admin-Seite:

              ! {"hm-rpc.0.MEQ0735184.1":{"_id":"hm-rpc.0.MEQ0735184.1","type":"channel","common":{"name":"HM-LC-Bl1PBU-FMMEQ0735184:1","role":"blind","icon":"/icons/PushButton-2ch-wm_thumb.png"},"native":{"ADDRESS":"MEQ0735184:1","AES_ACTIVE":0,"DIRECTION":2,"FLAGS":1,"INDEX":1,"LINK_SOURCE_ROLES":"","LINK_TARGET_ROLES":"SWITCHWEATHER_CS","PARAMSETS":["LINK","MASTER","VALUES"],"PARENT":"MEQ0735184","PARENT_TYPE":"HM-LC-Bl1PBU-FM","TYPE":"BLIND","VERSION":8}},"hm-rpc.0.MEQ0735184.0":{"_id":"hm-rpc.0.MEQ0735184.0","type":"channel","common":{"name":"RolloWohnzOst1:0","icon":"/icons/PushButton-2ch-wm_thumb.png"},"native":{"ADDRESS":"MEQ0735184:0","AES_ACTIVE":0,"DIRECTION":0,"FLAGS":3,"INDEX":0,"LINK_SOURCE_ROLES":"","LINK_TARGET_ROLES":"","PARAMSETS":["MASTER","VALUES"],"PARENT":"MEQ0735184","PARENT_TYPE":"HM-LC-Bl1PBU-FM","TYPE":"MAINTENANCE","VERSION":8}},"hm-rpc.0.MEQ0735184":{"_id":"hm-rpc.0.MEQ0735184","type":"device","common":{"name":"RolloWohnzOst1","role":"blind","icon":"/icons/PushButton-2ch-wm_thumb.png"},"native":{"ADDRESS":"MEQ0735184","AVAILABLE_FIRMWARE":"2.8","CHILDREN":["MEQ0735184:0","MEQ0735184:1"],"FIRMWARE":"2.8","FLAGS":1,"INTERFACE":"LEQ0418982","PARAMSETS":["MASTER"],"PARENT":"","RF_ADDRESS":4093332,"ROAMING":0,"RX_MODE":1,"TYPE":"HM-LC-Bl1PBU-FM","UPDATABLE":1,"VERSION":8}},"hm-rpc.0.MEQ0735184.0.AES_KEY":{"type":"state","common":{"def":0,"type":"number","read":true,"write":false,"min":0,"max":127,"role":"value","name":"RolloWohnzOst1:0.AES_KEY"},"native":{"DEFAULT":0,"FLAGS":0,"ID":"AES_KEY","MAX":127,"MIN":0,"OPERATIONS":1,"TAB_ORDER":8,"TYPE":"INTEGER","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.0.AES_KEY"},"hm-rpc.0.MEQ0735184.0.CONFIG_PENDING":{"type":"state","common":{"def":false,"type":"boolean","read":true,"write":false,"role":"indicator","name":"RolloWohnzOst1:0.CONFIG_PENDING"},"native":{"DEFAULT":false,"FLAGS":9,"ID":"CONFIG_PENDING","MAX":true,"MIN":false,"OPERATIONS":5,"TAB_ORDER":2,"TYPE":"BOOL","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.0.CONFIG_PENDING"},"hm-rpc.0.MEQ0735184.0.DEVICE_IN_BOOTLOADER":{"type":"state","common":{"def":false,"type":"boolean","read":true,"write":false,"name":"RolloWohnzOst1:0.DEVICE_IN_BOOTLOADER"},"native":{"DEFAULT":false,"FLAGS":9,"ID":"DEVICE_IN_BOOTLOADER","MAX":true,"MIN":false,"OPERATIONS":5,"TAB_ORDER":6,"TYPE":"BOOL","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.0.DEVICE_IN_BOOTLOADER"},"hm-rpc.0.MEQ0735184.0.DUTYCYCLE":{"type":"state","common":{"def":false,"type":"boolean","read":true,"write":false,"role":"value","name":"RolloWohnzOst1:0.DUTYCYCLE"},"native":{"DEFAULT":false,"FLAGS":9,"ID":"DUTYCYCLE","MAX":true,"MIN":false,"OPERATIONS":5,"TAB_ORDER":3,"TYPE":"BOOL","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.0.DUTYCYCLE"},"hm-rpc.0.MEQ0735184.0.RSSI_DEVICE":{"type":"state","common":{"def":0,"type":"number","read":true,"write":false,"min":-2147483648,"max":2147483647,"role":"value","name":"RolloWohnzOst1:0.RSSI_DEVICE"},"native":{"DEFAULT":0,"FLAGS":1,"ID":"RSSI_DEVICE","MAX":2147483647,"MIN":-2147483648,"OPERATIONS":5,"TAB_ORDER":4,"TYPE":"INTEGER","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.0.RSSI_DEVICE"},"hm-rpc.0.MEQ0735184.0.RSSI_PEER":{"type":"state","common":{"def":0,"type":"number","read":true,"write":false,"min":-2147483648,"max":2147483647,"role":"value.rssi","name":"RolloWohnzOst1:0.RSSI_PEER"},"native":{"DEFAULT":0,"FLAGS":1,"ID":"RSSI_PEER","MAX":2147483647,"MIN":-2147483648,"OPERATIONS":5,"TAB_ORDER":5,"TYPE":"INTEGER","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.0.RSSI_PEER"},"hm-rpc.0.MEQ0735184.0.STICKY_UNREACH":{"type":"state","common":{"def":false,"type":"boolean","read":true,"write":true,"role":"indicator.unreach","name":"RolloWohnzOst1:0.STICKY_UNREACH"},"native":{"DEFAULT":false,"FLAGS":25,"ID":"STICKY_UNREACH","MAX":true,"MIN":false,"OPERATIONS":7,"TAB_ORDER":1,"TYPE":"BOOL","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.0.STICKY_UNREACH"},"hm-rpc.0.MEQ0735184.0.UNREACH":{"type":"state","common":{"def":false,"type":"boolean","read":true,"write":false,"role":"indicator.unreach","name":"RolloWohnzOst1:0.UNREACH"},"native":{"DEFAULT":false,"FLAGS":9,"ID":"UNREACH","MAX":true,"MIN":false,"OPERATIONS":5,"TAB_ORDER":0,"TYPE":"BOOL","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.0.UNREACH"},"hm-rpc.0.MEQ0735184.0.UPDATE_PENDING":{"type":"state","common":{"def":false,"type":"boolean","read":true,"write":false,"name":"RolloWohnzOst1:0.UPDATE_PENDING"},"native":{"DEFAULT":false,"FLAGS":9,"ID":"UPDATE_PENDING","MAX":true,"MIN":false,"OPERATIONS":5,"TAB_ORDER":7,"TYPE":"BOOL","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.0.UPDATE_PENDING"},"hm-rpc.0.MEQ0735184.1.DIRECTION":{"type":"state","common":{"def":0,"type":"number","read":true,"write":false,"min":0,"max":3,"states":{"0":"NONE","1":"UP","2":"DOWN","3":"UNDEFINED"},"role":"indicator.direction","name":"HM-LC-Bl1PBU-FMMEQ0735184:1.DIRECTION"},"native":{"DEFAULT":0,"FLAGS":3,"ID":"DIRECTION","MAX":3,"MIN":0,"OPERATIONS":5,"TAB_ORDER":3,"TYPE":"ENUM","UNIT":"","VALUE_LIST":["NONE","UP","DOWN","UNDEFINED"]},"_id":"hm-rpc.0.MEQ0735184.1.DIRECTION"},"hm-rpc.0.MEQ0735184.1.INHIBIT":{"type":"state","common":{"def":false,"type":"boolean","read":true,"write":true,"role":"state.inhibit","name":"HM-LC-Bl1PBU-FMMEQ0735184:1.INHIBIT"},"native":{"CONTROL":"NONE","DEFAULT":false,"FLAGS":1,"ID":"INHIBIT","MAX":true,"MIN":false,"OPERATIONS":7,"TAB_ORDER":2,"TYPE":"BOOL","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.1.INHIBIT"},"hm-rpc.0.MEQ0735184.1.INSTALL_TEST":{"type":"state","common":{"def":false,"type":"boolean","read":false,"write":true,"role":"indicator","name":"HM-LC-Bl1PBU-FMMEQ0735184:1.INSTALL_TEST"},"native":{"DEFAULT":false,"FLAGS":3,"ID":"INSTALL_TEST","MAX":true,"MIN":false,"OPERATIONS":2,"TAB_ORDER":4,"TYPE":"ACTION","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.1.INSTALL_TEST"},"hm-rpc.0.MEQ0735184.1.LEVEL":{"type":"state","common":{"def":0,"type":"number","read":true,"write":true,"min":0,"max":100,"unit":"%","role":"level.blind","workingID":"WORKING","name":"HM-LC-Bl1PBU-FMMEQ0735184:1.LEVEL"},"native":{"CONTROL":"BLIND.LEVEL","DEFAULT":0,"FLAGS":1,"ID":"LEVEL","MAX":1,"MIN":0,"OPERATIONS":7,"TAB_ORDER":0,"TYPE":"FLOAT","UNIT":"100%"},"_id":"hm-rpc.0.MEQ0735184.1.LEVEL"},"hm-rpc.0.MEQ0735184.1.STOP":{"type":"state","common":{"def":false,"type":"boolean","read":false,"write":true,"role":"action.stop","name":"HM-LC-Bl1PBU-FMMEQ0735184:1.STOP"},"native":{"CONTROL":"BLIND.STOP","DEFAULT":false,"FLAGS":1,"ID":"STOP","MAX":true,"MIN":false,"OPERATIONS":2,"TAB_ORDER":1,"TYPE":"ACTION","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.1.STOP"},"hm-rpc.0.MEQ0735184.1.WORKING":{"type":"state","common":{"def":false,"type":"boolean","read":true,"write":false,"role":"indicator.working","name":"HM-LC-Bl1PBU-FMMEQ0735184:1.WORKING"},"native":{"DEFAULT":false,"FLAGS":3,"ID":"WORKING","MAX":true,"MIN":false,"OPERATIONS":5,"TAB_ORDER":5,"TYPE":"BOOL","UNIT":""},"_id":"hm-rpc.0.MEQ0735184.1.WORKING"},"hm-rpc.0.MEQ0735184.0.CONFIG_PENDING_ALARM":{"type":"state","common":{"name":"AL-MEQ0735184:0.CONFIG_PENDING","type":"boolean","role":"indicator.alarm","read":true,"write":true,"def":false},"native":{"Name":"AL-MEQ0735184:0.CONFIG_PENDING","TypeName":"ALARM","DP":"12759"},"_id":"hm-rpc.0.MEQ0735184.0.CONFIG_PENDING_ALARM"},"hm-rpc.0.MEQ0735184.0.DEVICE_IN_BOOTLOADER_ALARM":{"type":"state","common":{"name":"AL-MEQ0735184:0.DEVICE_IN_BOOTLOADER","type":"boolean","role":"indicator.alarm","read":true,"write":true,"def":false},"native":{"Name":"AL-MEQ0735184:0.DEVICE_IN_BOOTLOADER","TypeName":"ALARM","DP":"12763"},"_id":"hm-rpc.0.MEQ0735184.0.DEVICE_IN_BOOTLOADER_ALARM"},"hm-rpc.0.MEQ0735184.0.DUTYCYCLE_ALARM":{"type":"state","common":{"name":"AL-MEQ0735184:0.DUTYCYCLE","type":"boolean","role":"indicator.alarm","read":true,"write":true,"def":false},"native":{"Name":"AL-MEQ0735184:0.DUTYCYCLE","TypeName":"ALARM","DP":"12767"},"_id":"hm-rpc.0.MEQ0735184.0.DUTYCYCLE_ALARM"},"hm-rpc.0.MEQ0735184.0.STICKY_UNREACH_ALARM":{"type":"state","common":{"name":"AL-MEQ0735184:0.STICKY_UNREACH","type":"boolean","role":"indicator.alarm","read":true,"write":true,"def":false},"native":{"Name":"AL-MEQ0735184:0.STICKY_UNREACH","TypeName":"ALARM","DP":"12773"},"_id":"hm-rpc.0.MEQ0735184.0.STICKY_UNREACH_ALARM"},"hm-rpc.0.MEQ0735184.0.UNREACH_ALARM":{"type":"state","common":{"name":"AL-MEQ0735184:0.UNREACH","type":"boolean","role":"indicator.alarm","read":true,"write":true,"def":false},"native":{"Name":"AL-MEQ0735184:0.UNREACH","TypeName":"ALARM","DP":"12777"},"_id":"hm-rpc.0.MEQ0735184.0.UNREACH_ALARM"},"hm-rpc.0.MEQ0735184.0.UPDATE_PENDING_ALARM":{"type":"state","common":{"name":"AL-MEQ0735184:0.UPDATE_PENDING","type":"boolean","role":"indicator.alarm","read":true,"write":true,"def":false},"native":{"Name":"AL-MEQ0735184:0.UPDATE_PENDING","TypeName":"ALARM","DP":"12781"},"_id":"hm-rpc.0.MEQ0735184.0.UPDATE_PENDING_ALARM"}}

              1 Reply Last reply Reply Quote 0
              • N
                nobody last edited by

                Ich hab mal noch ein wenig nachgeforscht. Das Problem ist der folgende Code-Abschnitt:

                
                    event: function (err, params) {
                        adapter.log.debug(adapter.config.type + 'rpc <- event ' + JSON.stringify(params));
                        var val;
                        var channel = params[1].replace(':', '.');
                        var name = params[0] + '.' + channel + '.' + params[2];
                
                        if (dpTypes[name] && dpTypes[name].UNIT === '100%') {
                            val = (params[3] * 100);
                        } else {
                            val = params[3];
                        }
                
                

                Es wird versucht, mit dem Namen in dpTypes den Eintrag zu finden. Problem ist nur, dass kein Eintrag gefunden wird.

                Hier der relevante Ausschnitt für einen der Aktoren:

                ! name: raspberrypi.hm-rpc.0.LEQ1438264.1.LEVEL New value:1
                ! dpTypes: {"hm-rpc.0.LEQ1438264.0.AES_KEY":{"UNIT":"","TYPE":"INTEGER"},"hm-rpc.0.LEQ1438264.0.CONFIG_PENDING":{"UNIT":"","TYPE":"BOOL"},"hm-rpc.0.LEQ1438264.0.DEVICE_IN_BOOTLOADER":{"UNIT":"","TYPE":"BOOL"},"hm-rpc.0.LEQ1438264.0.DUTYCYCLE":{"UNIT":"","TYPE":"BOOL"},"hm-rpc.0.LEQ1438264.0.RSSI_DEVICE":{"UNIT":"","TYPE":"INTEGER"},"hm-rpc.0.LEQ1438264.0.RSSI_PEER":{"UNIT":"","TYPE":"INTEGER"},"hm-rpc.0.LEQ1438264.0.STICKY_UNREACH":{"UNIT":"","TYPE":"BOOL"},"hm-rpc.0.LEQ1438264.0.UNREACH":{"UNIT":"","TYPE":"BOOL"},"hm-rpc.0.LEQ1438264.0.UPDATE_PENDING":{"UNIT":"","TYPE":"BOOL"},"hm-rpc.0.LEQ1438264.1.DIRECTION":{"UNIT":"","TYPE":"ENUM"},"hm-rpc.0.LEQ1438264.1.INHIBIT":{"UNIT":"","TYPE":"BOOL"},"hm-rpc.0.LEQ1438264.1.INSTALL_TEST":{"UNIT":"","TYPE":"ACTION"},"hm-rpc.0.LEQ1438264.1.LEVEL":{"UNIT":"100%","TYPE":"FLOAT"},"hm-rpc.0.LEQ1438264.1.STOP":{"UNIT":"","TYPE":"ACTION"},"hm-rpc.0.LEQ1438264.1.WORKING":{"UNIT":"","TYPE":"BOOL"}}

                Update:

                Der Name, mit dem gesucht wird, enthält den Host-Namen der Instanz raspberrypi.hm-rpc.0.LEQ1438264.1.LEVEL,

                Im Array sind die Werte aber nur ohne Host-Namen drin: hm-rpc.0.LEQ1438264.1.LEVEL

                mfg

                Markus

                1 Reply Last reply Reply Quote 0
                • N
                  nobody last edited by

                  Hallo bluefox,

                  ich hab jetzt die hm-rpc.js so abgeändert, dass in den Methoden für das Setzen und Übertagen der Werte beim Zugriff auf dpTypes der Hostname ergänzt wird. Jetzt funktioniert bei mir die Übertagung wieder in beide Richtungen.

                  Keine Ahnung, ob die Änderung so in deinem Interesse ist, aber vielleicht hilft die Datei ja bei der Fehlerbereinigung.

                  Markus
                  632_hm-rpc.js

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

                    Ich habe da was geändert, was ich nicht ändern sollte. Jetzt gibt es neue Version.

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

                      Geht jetzt ?

                      1 Reply Last reply Reply Quote 0
                      • N
                        nobody last edited by

                        Hallo bluefox,

                        Ja geht jetzt wieder.

                        Vielen Dank.

                        Gesendet von meinem GT-N8000 mit Tapatalk

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

                          Hmm, Update installiert und Reboot gemacht. Die Jalousien haben danach Level "null". Nach der ersten Betätigung egal ob Iobroker oder am Gerät stimmt es.

                          Grüße Brati

                          Gesendet via Tapatalk.

                          1 Reply Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators last edited by

                            Ist so! 😄

                            Dazu gibt's schon mehrere Postings.

                            Gruß

                            Rainer

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

                              Ok, kann ich mit leben.

                              Gesendet via Tapatalk.

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              857
                              Online

                              31.7k
                              Users

                              79.8k
                              Topics

                              1.3m
                              Posts

                              12
                              63
                              6617
                              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