Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Homematic CCU3 Direktverbindungen steuern

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Homematic CCU3 Direktverbindungen steuern

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

      Hi,

      weiß jemand, ob es möglich ist, aus ioBroker heraus die Konfiguration von Direktverbindungen zu ändern?

      Mein konkreter Anwendugnsfall:
      ioBroker ist mittles HM.RPC und HM.REGA Adapter mit einer PIvCCU3 verbunden. In meiner CCU3 habe ich einen HmIP-BDT (Einbaudimmer).
      Bei diesem habe ich die Möglichkeit, über die CCU das StatusOn Level vorzugeben.
      Dieses Level möchte ich mittels Skript (egal ob Javascript, Blocky oder sonstwas) anpassen.
      Der Einsatzzweck ist ein dynamischer Nachtmodus. Dabei soll in der Nacht, das Licht im Badezimmer nur auf 20% angehen, am Tag aber auf 100%. Über die CCU wäre das zwar Zeitgesteuert möglich, aber ich möchte das gerne an meinen zentralen Nachtmodus knüpfen.
      Leider fehlt mir aber der Weg, diesen Wert anzupassen.

      In der CCU sieht die Einstellung so aus:
      656d0dd6-8971-479a-b748-63e63c567bd3-image.png

      Diese Direktverknüpfung aufzuheben und das Schalten komplett über ioBroker zu realisieren wäre zwar eine Möglichkeit, möchte ich aber auch vermeiden, da der Schalter sonst nicht mehr autark funktioniert. Dazu hatte ich erst die Tage einen 2-Tägigen Ausfall der PivCCU, was aufgrund dieser Funktion halb so wild war und selbst meine skeptische Frau kaum gestört hatte 🙂

      Bei der Umsetzung hatte ich auf die Javascript SendTo Funktion gehofft, welche ich schon nutze um z.B. die Tastensperre zu aktivieren. Leider habe ich jedoch keine Möglichkeit gefunden, diesen Wert damit zu steuern, da es ja nicht direkt ein Kanalwert ist.

      Ich hoffe, mein Anliegen ist verständlich beschrieben.
      Vielen Dank vorab!

      Cheers!

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

        @tschagga sagte in Homematic CCU3 Direktverbindungen steuern:

        aus ioBroker heraus die Direktverbindungen zu steuern?

        das würde ja denn Sinn von DVs pervertieren!

        Die Informationen für die DVs liegen in den beteiligten Geräten.
        Daher funktionieren DVs auch bei ausgefallener CCU

        T 1 Reply Last reply Reply Quote 0
        • T
          Tschagga @Homoran last edited by

          @homoran
          Ok habe ich vielleicht falsch formuliert.... Ich meinte natürlich die Konfiguration der Direktverbindung zu ändern.

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

            @tschagga sagte in Homematic CCU3 Direktverbindungen steuern:

            Ich meinte natürlich die Konfiguration der Direktverbindung zu ändern.

            Auch das geht nicht. Genauso wie die Konfiguration der Geräte selber, muss das auf der CCU passieren.
            ggf. geht das mit dem Homematic Manager

            T 1 Reply Last reply Reply Quote 0
            • T
              Tschagga @Homoran last edited by

              @homoran
              Danke für die Antwort.
              Wie schon beschrieben, habe ich mittels SendTo Funktion bereits Konfigurationen in der CCU angepasst, also muss ich deiner Antwort höflichst widersprechen. Es ist generell möglich Gerätekonfigurationen in der CCU aus ioBroker zu ändern. Nur eben nicht direkt in den Datenpunkten des HM.RPC Adapters.

              Dass es keine eingebaute Funktion dazu gibt ist mir natürlich auch klar. Und wenn es ein Homematic Manager schafft, scheint es ja eine Art Schnittstelle zu geben, über die das umzusetzen wäre.

              Homoran paul53 2 Replies Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @Tschagga last edited by

                @tschagga sagte in Homematic CCU3 Direktverbindungen steuern:

                Und wenn es ein Homematic Manager schafft,

                und der HMM-Adapter ist inzwischen gar nicht mehr im Repo
                der HMM, der dort eingesetzt wurde, sollte als Ersatz für die doch anfällige ReGa dienen.

                Natürlich kann man irgendwie
                @tschagga sagte in Homematic CCU3 Direktverbindungen steuern:

                mittels SendTo Funktion bereits Konfigurationen in der CCU angepasst,

                auf die Daten zugreifen.

                T 1 Reply Last reply Reply Quote 0
                • T
                  Tschagga @Homoran last edited by

                  @homoran said in Homematic CCU3 Direktverbindungen steuern:

                  Natürlich kann man irgendwie
                  @tschagga sagte in Homematic CCU3 Direktverbindungen steuern:

                  mittels SendTo Funktion bereits Konfigurationen in der CCU angepasst,

                  auf die Daten zugreifen.

                  Also... genau darum geht es mir ja.
                  Ich dachte mit meiner Einleitung sollte klar gewesen sein, dass mir bewusst ist, dass keine einfache fertige Lösung dafür gibt und ich das auch nicht erwarte.
                  Aber gleich mal zu schreiben "geht nicht" ist halt auch nur die halbe Wahrheit.

                  Ich würde mich freuen, wenn jemand nähere Informationen dazu hat, wie man abseits der Standards auf derartige Konfigurationen zugreifen kann.

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

                    @tschagga sagte in Homematic CCU3 Direktverbindungen steuern:

                    Aber gleich mal zu schreiben "geht nicht" ist halt auch nur die halbe Wahrheit.

                    da ging es noch um den Threadtitel, diese DVs zu steuern!
                    Und ja, es geht nicht (mit Standardmitteln = Adapter/DPs) für Normaluser.
                    Für "Nerds" ist bekanntlich nichts unmöglich. Aber nicht für "ioBroker allgemein"

                    T 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @Tschagga last edited by paul53

                      @tschagga sagte: wenn es ein Homematic Manager schafft

                      Dann schau mal mit diesem, wie der Link-Parameter ohne dt. Übersetzung benannt ist.

                      1 Reply Last reply Reply Quote 0
                      • T
                        Tschagga @Homoran last edited by

                        @homoran said in Homematic CCU3 Direktverbindungen steuern:

                        da ging es noch um den Threadtitel, diese DVs zu steuern!
                        Und ja, es geht nicht (mit Standardmitteln = Adapter/DPs) für Normaluser.
                        Für "Nerds" ist bekanntlich nichts unmöglich. Aber nicht für "ioBroker allgemein"

                        Da hier offensichtlich mehr Wert auf Formulierungen im Titel anstatt auf die ausführliche Beschreibung im Post gelegt wird, scheint es hier wirklich das falsche Forum zu sein.
                        Ich versuche mein Glück woanders...

                        Homoran foxriver76 2 Replies Last reply Reply Quote 0
                        • Homoran
                          Homoran Global Moderator Administrators @Tschagga last edited by Homoran

                          @tschagga Verzeihung, was ist denn jetzt?

                          @tschagga sagte in Homematic CCU3 Direktverbindungen steuern:

                          Ok habe ich vielleicht falsch formuliert....

                          @tschagga sagte in Homematic CCU3 Direktverbindungen steuern:

                          scheint es hier wirklich das falsche Forum zu sein.

                          ich kann es ja gerne in ein anderes Unterforum verschieben, wenn ich weiß worum es hier geht?
                          javascript?
                          Adapter-Entwicklung?

                          Da würden sich dann auch die "richtigen" Ansprechpartner tummeln

                          1 Reply Last reply Reply Quote 0
                          • foxriver76
                            foxriver76 Developer @Tschagga last edited by

                            @tschagga Ich glaube tatsächlich, dass im HM Forum eher Cracks in dem Bereich unterwegs sind, lt. der Doku würde ich sagen, dass es evtl. mit putParamset geht, die Parameter neben MASTER und VALUES kann man wohl mit getLinkPeers abfragen.

                            Falls du es hin bekommst, wäre es nen interessanter Use Case für die sendTo Doku.

                            T 1 Reply Last reply Reply Quote 0
                            • T
                              Tschagga @foxriver76 last edited by

                              @foxriver76 said in Homematic CCU3 Direktverbindungen steuern:

                              @tschagga Ich glaube tatsächlich, dass im HM Forum eher Cracks in dem Bereich unterwegs sind, lt. der Doku würde ich sagen, dass es evtl. mit putParamset geht, die Parameter neben MASTER und VALUES kann man wohl mit getLinkPeers abfragen.

                              Falls du es hin bekommst, wäre es nen interessanter Use Case für die sendTo Doku.

                              @foxriver76 DANKE! Genau das habe ich gebraucht.
                              Nach einer Doku wie dieser hatte ich gesucht aber warum auch immer, hatte ich diese nicht gefunden...

                              Damit habe ich es fast hinbekommen.... Ich kann den Wert in der CCU setzen, aber an den Dimmer wird es wohl (noch) nicht automatisch übermittelt... Zumindest taucht unter "Service Messages" dann ein Eintrag mit "Configuration data ready for transmission" auf., Aus der CCU kann ich diese aber nicht anstoßen. Vielleicht hast du da direkt eine Idee? Ansonsten muss ich morgen weiter schauen....

                              Gerne stelle ich meine Lösung dann auch in der angesprochenen SendTo Doku bereit... wo finde ich diese denn?

                              Homoran foxriver76 2 Replies Last reply Reply Quote 0
                              • Homoran
                                Homoran Global Moderator Administrators @Tschagga last edited by

                                @tschagga sagte in Homematic CCU3 Direktverbindungen steuern:

                                aber an den Dimmer wird es wohl (noch) nicht automatisch übermittelt... Zumindest taucht unter "Service Messages" dann ein Eintrag mit "Configuration data ready for transmission" auf.

                                Ich gehe mal von der manuellen Parametrierung aus.
                                Der Dimmer wird wohl mit 230V versorgt.
                                Dann sollten "eigentlich" die Parameter automatisch übertragen werden.

                                Hast du mal das Licht geschaltet, ob dies die Übertragung anstößt?

                                Oder ist gar die Kommunikation der CCU zum Dimmer gestört?

                                1 Reply Last reply Reply Quote 0
                                • foxriver76
                                  foxriver76 Developer @Tschagga last edited by foxriver76

                                  @tschagga evtl. restoreConfigToDevice

                                  Mit sendTo Doku meine ich den Abschnitt hier: https://github.com/ioBroker/ioBroker.hm-rpc#custom-commands

                                  T 1 Reply Last reply Reply Quote 0
                                  • T
                                    Tschagga @foxriver76 last edited by

                                    @foxriver76

                                    Ich glaube die ausstehende Übertragung war durch meine zahlreichen Tests verursacht... Hab es auch mit restoreConfigToDevice leider nicht weg bekommen. Musste den Aktor komplett aus der CCU löschen und neu anlernen.
                                    Seither funktioniert es aber auch so 🙂

                                    async function SetOnLevel(varDimmerID, varButtonID, varValue) {
                                        sendTo('hm-rpc.1', 'putParamset', {ID: varDimmerID, paramType: varButtonID, params:{'SHORT_ON_LEVEL':varValue}}, res => {
                                            log(JSON.stringify(res));
                                        });
                                    }
                                    await SetOnLevel('0008DD89A25BA1:4', '0008DD89A25BA1:2', 0.2); //20%
                                    await SetOnLevel('0008DD89A25BA1:4', '0008DD89A25BA1:2', 1); //100%
                                    

                                    Das ist der Javascript Code aus meinem Blocky Skript.

                                    Obwohl das Skript seinen Zweck erfüllt, bekomme ich bei der Ausführung jedoch folgenden Fehler im ioBroker Log: {"result":"","error":null}

                                    In die GitHub Doku musst du es dann ja ergänzen... Würde mich aber freuen, mein Beispiel dort zu finden 🙂

                                    1 Reply Last reply Reply Quote 0
                                    • foxriver76
                                      foxriver76 Developer last edited by

                                      @tschagga cool, ist ja kein Fehler den du bekommst, das ist das was du im Skript loggst. Error: null ist gut, heißt quasi fehlerfrei 😉

                                      T 1 Reply Last reply Reply Quote 0
                                      • T
                                        Tschagga @foxriver76 last edited by

                                        @foxriver76 said in Homematic CCU3 Direktverbindungen steuern:

                                        @tschagga cool, ist ja kein Fehler den du bekommst, das ist das was du im Skript loggst. Error: null ist gut, heißt quasi fehlerfrei 😉

                                        Dachte es ist eine Error-Rückmeldung ohne "Inhalt". Aber dann ist das ja gut so 🙂

                                        Damit es auch für das Allgemein Forum gerecht wird, hier das fertige Blocky Skript:
                                        Ich habe den Wert für die Nachtschaltung noch in einen DP gelegt, dass ich den über das Tablet anpassen kann:

                                        2b873233-76aa-4759-b213-75f34cd6edd6-image.png

                                        <xml xmlns="https://developers.google.com/blockly/xml">
                                          <variables>
                                            <variable id="W{lteMI.3@7t208`tW_l">varDimmerID</variable>
                                            <variable id="m~~W5;#V@2UCTooK)6+7">varButtonID</variable>
                                            <variable id="$sZRi787RiX}),q4OH[d">varLevel</variable>
                                          </variables>
                                          <block type="procedures_defcustomnoreturn" id="$on?8]Isk#;*j?tw+$]~" x="37" y="38">
                                            <mutation statements="false">
                                              <arg name="varDimmerID" varid="W{lteMI.3@7t208`tW_l"></arg>
                                              <arg name="varButtonID" varid="m~~W5;#V@2UCTooK)6+7"></arg>
                                              <arg name="varLevel" varid="$sZRi787RiX}),q4OH[d"></arg>
                                            </mutation>
                                            <field name="NAME">SetOnLevel</field>
                                            <field name="SCRIPT">c2VuZFRvKCdobS1ycGMuMScsICdwdXRQYXJhbXNldCcsIHtJRDogdmFyRGltbWVySUQsIHBhcmFtVHlwZTogdmFyQnV0dG9uSUQsIHBhcmFtczp7J1NIT1JUX09OX0xFVkVMJzogdmFyTGV2ZWx9fSwgcmVzID0+IHsNCiAgICBsb2coSlNPTi5zdHJpbmdpZnkocmVzKSk7DQp9KTs=</field>
                                            <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                          </block>
                                          <block type="on" id="!tk#sJ(.Z=Gw}XP2#@:d" x="37" y="62">
                                            <field name="OID">0_userdata.0.Central.Mode.Nachtmodus</field>
                                            <field name="CONDITION">ne</field>
                                            <field name="ACK_CONDITION"></field>
                                            <statement name="STATEMENT">
                                              <block type="controls_if" id="r[fw;TVWdJ-*pse=~Fa~">
                                                <mutation else="1"></mutation>
                                                <value name="IF0">
                                                  <block type="logic_compare" id="OiTFf3bKhvt9uv:==rv7">
                                                    <field name="OP">EQ</field>
                                                    <value name="A">
                                                      <block type="get_value" id="9(t)9X|(Z^.@//(hg))(">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">0_userdata.0.Central.Mode.Nachtmodus</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="logic_boolean" id="))jXag[9aV1].V+eKDY3">
                                                        <field name="BOOL">TRUE</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO0">
                                                  <block type="procedures_callcustomnoreturn" id="a5AcUtrxfwVu!D!m0Tw7">
                                                    <mutation name="SetOnLevel">
                                                      <arg name="varDimmerID"></arg>
                                                      <arg name="varButtonID"></arg>
                                                      <arg name="varLevel"></arg>
                                                    </mutation>
                                                    <value name="ARG0">
                                                      <block type="text" id="AIfclamMF}K]gY1l,{u9">
                                                        <field name="TEXT">0008DD89A25BA1:4</field>
                                                      </block>
                                                    </value>
                                                    <value name="ARG1">
                                                      <block type="text" id="0g-7u52!g/:_!)7lwqJ@">
                                                        <field name="TEXT">0008DD89A25BA1:2</field>
                                                      </block>
                                                    </value>
                                                    <value name="ARG2">
                                                      <block type="math_rndfixed" id="U|yQ~@9~ZI:A;Q)VMb5w">
                                                        <field name="n">1</field>
                                                        <value name="x">
                                                          <shadow type="math_number" id="`5Zh(VCvRj04bV7}=gzH">
                                                            <field name="NUM">3.1234</field>
                                                          </shadow>
                                                          <block type="math_arithmetic" id="U?@FfuVVrjtx%@Re1UB9">
                                                            <field name="OP">DIVIDE</field>
                                                            <value name="A">
                                                              <shadow type="math_number" id=":rd9%Ls0Wfb*}2cM0f|R">
                                                                <field name="NUM">1</field>
                                                              </shadow>
                                                              <block type="get_value" id="*zn*D-Ia)]?dqU,Bavtk">
                                                                <field name="ATTR">val</field>
                                                                <field name="OID">0_userdata.0.Rooms.Badezimmer.LevelNight</field>
                                                              </block>
                                                            </value>
                                                            <value name="B">
                                                              <shadow type="math_number" id="_uoNa|j6o0zg-os.x/j,">
                                                                <field name="NUM">100</field>
                                                              </shadow>
                                                            </value>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </statement>
                                                <statement name="ELSE">
                                                  <block type="procedures_callcustomnoreturn" id="#g;$:7K+_aB7JQ0BZYIh">
                                                    <mutation name="SetOnLevel">
                                                      <arg name="varDimmerID"></arg>
                                                      <arg name="varButtonID"></arg>
                                                      <arg name="varLevel"></arg>
                                                    </mutation>
                                                    <value name="ARG0">
                                                      <block type="text" id="IJ3m2$BZg%cV[xXlbb4F">
                                                        <field name="TEXT">0008DD89A25BA1:4</field>
                                                      </block>
                                                    </value>
                                                    <value name="ARG1">
                                                      <block type="text" id="diJL%Kfl642V#Lc0RBLp">
                                                        <field name="TEXT">0008DD89A25BA1:2</field>
                                                      </block>
                                                    </value>
                                                    <value name="ARG2">
                                                      <block type="math_number" id="0dgZTvVzE0cr{?,g[_~^">
                                                        <field name="NUM">1</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </statement>
                                              </block>
                                            </statement>
                                          </block>
                                        </xml>
                                        

                                        Danke an @foxriver76 für den entscheidenden Hinweis für die Umsetzung! Und bei der Gelegenheit auch generell ein großes Danke für deinen Beitrag des HM Adapters! 🙂

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

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate
                                        FAQ Cloud / IOT
                                        HowTo: Node.js-Update
                                        HowTo: Backup/Restore
                                        Downloads
                                        BLOG

                                        415
                                        Online

                                        31.9k
                                        Users

                                        80.3k
                                        Topics

                                        1.3m
                                        Posts

                                        4
                                        18
                                        585
                                        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