Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Viessmann-Adapter mit vcontrol

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Viessmann-Adapter mit vcontrol

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      MartyBr @Hoizi1994 last edited by

      @hoizi1994
      Probiere doch setaddr1 aus. Hier ist die Länge auf 1 Byte definiert.

      Also:

       <command name="setIntensivLueftung" protocmd="setaddr1">
          	<addr>B005</addr>
          	<len>1</len>
          	<unit>ST</unit>
          	<description>Intensiv Lueftung</description>
      </command>
      

      Ist nur meine Vermutung, habe ich nicht getestet.

      H 1 Reply Last reply Reply Quote 0
      • H
        Hoizi1994 @MartyBr last edited by

        @martybr

        wenn ich getLueftung bei Intensivlüftung mache kommt ein wert von 66 sollte dann die setaddr nicht auch 66 haben?

        lg.

        M 1 Reply Last reply Reply Quote 0
        • M
          MartyBr @Hoizi1994 last edited by

          @hoizi1994 Du musst hier den Namen "setaddrxxx" vom Wert unterscheiden. Wenn du als Wert "66" bekommst, dann benötigst du auch eine Definition die zumindest 2 byte definiert.
          Wie list du den Wert "getLueftung" aus? Kannst du nicht direkt mit den gleichen Adressen eine Definition "setLueftung" machen und dort z.B. als Wert die 66 eintragen?

          Zeige mal die Passage aus der vcontrold.cml und der vito.xml

          H 1 Reply Last reply Reply Quote 0
          • H
            Hoizi1994 @MartyBr last edited by Hoizi1994

            @martybr

            so lese ich aus
            vito:

             <command name="getLueftung" protocmd="getaddr">
                	<addr>B005</addr>
                	<len>1</len>
                	<unit>ST</unit>
                	<description>Lueftungsmodus</description>
            </command>
            

            wenn ich setaddr1 verwende hüpft der auf wert 3 und schaltet sich auf abschaltbetrieb

            vcontrold

                        <command name="setaddr6">
                             <send>SEND 00 02 $addr $hexlen 03;RECV 1 SR</send>
                        </command>
            

            müsste ich bei der vcontrold hexlen auf 66 ?

            M 1 Reply Last reply Reply Quote 0
            • M
              MartyBr @Hoizi1994 last edited by

              @hoizi1994
              Setze doch mal in der vito.xml

               <command name="setLueftung" protocmd="setaddr">
                  	<addr>B005</addr>
                  	<len>1</len>
                  	<unit>ST</unit>
                  	<description>Lueftungsmodus</description>
              </command>
              

              und dann in dem Datenpunkt unter Viessmann.0/set dort einen Wert.

              H 1 Reply Last reply Reply Quote 0
              • H
                Hoizi1994 @MartyBr last edited by Hoizi1994

                @martybr im adapter von iobroker?

                da tut sich nix

                M 1 Reply Last reply Reply Quote 0
                • M
                  MartyBr @Hoizi1994 last edited by

                  @hoizi1994 Hast du die vito.xml entsprechend ergänzt? also den getxx und der setxx Command eingetragen und die neue vito.xml in der Viessmann-App neu eingelesen?

                  Zeige bitte deine vito.xml mit den beiden Einträgen.

                  H 1 Reply Last reply Reply Quote 0
                  • H
                    Hoizi1994 @MartyBr last edited by

                    @martybr

                    so sahs jetzt aus den wert habe ich im adapter eingegeben

                     <command name="getLueftung" protocmd="getaddr">
                                <addr>B005</addr>
                                <len>1</len>
                                <unit>ST</unit>
                                <description>Lueftungsmodus</description>
                        </command>
                    
                     <command name="setLueftung" protocmd="setaddr">
                                <addr>B005</addr>
                                <len>1</len>
                                <unit>ST</unit>
                                <description>Lueftungsmodus</description>
                        </command>
                    M 1 Reply Last reply Reply Quote 0
                    • M
                      MartyBr @Hoizi1994 last edited by

                      @hoizi1994
                      Was mir noch dazu einfällt ist: Hast du den Wert mit Bestätigt = Ja gesetzt?
                      Ansonsten bin ich da auch überfragt. Meine 300F hat andere Datenpunkte und ich steuere über die App. In iobroker lese ich die Werte aus und baue mir Grafiken.

                      2023_11_13_18_02_chart.svg

                      H 1 Reply Last reply Reply Quote 0
                      • H
                        Hoizi1994 @MartyBr last edited by

                        @martybr nein ohne bestätigt

                        M 1 Reply Last reply Reply Quote 0
                        • M
                          MartyBr @Hoizi1994 last edited by

                          @hoizi1994 Teste mal mit Bestätigung. Bei Adaptern muss man mit Bestätigung den Wert setzen, so dass dieser die Änderung erkennt.

                          H 1 Reply Last reply Reply Quote 0
                          • H
                            Hoizi1994 @MartyBr last edited by

                            @martybr könnte hier ein anderer unit wert sinnmachen? mit best. hat auch nix verändert

                            M 1 Reply Last reply Reply Quote 0
                            • M
                              MartyBr @Hoizi1994 last edited by

                              @hoizi1994
                              Du könntest folgende Units testen:
                              Bsp.

                              <command name="getBetriebsart" protocmd="getaddr">
                                       <addr>B000</addr>
                                       <len>1</len>
                                       <unit>BA</unit>
                                       <description>Heizkreis 1: Betriebsart (0..4)</description>
                              </command>
                              <command name="setBetriebsart" protocmd="setaddr">
                              			<addr>B000</addr>
                              			<len>1</len>
                              			<unit>BA</unit>
                              			<description>Setze Betriebsart (0..4)</description>
                              </command>
                              <command name="setBetriebsart0" protocmd="setaddr0">
                                              <addr>B000</addr>
                                              <len>1</len>
                                              <unit>BA</unit>
                                              <description>Abschaltbetrieb</description>
                              </command>
                              <command name="setBetriebsart1" protocmd="setaddr1">
                                              <addr>B000</addr>
                                              <len>1</len>
                                              <unit>BA</unit>
                                              <description>Warmwasser</description>
                              </command>
                              <command name="setBetriebsart2" protocmd="setaddr2">
                                              <addr>B000</addr>
                                              <len>1</len>
                                              <unit>BA</unit>
                                              <description>Heizen und Warmwasser</description>
                              </command>
                              
                              <command name="get1xWW" protocmd="getaddr">
                                              <addr>B020</addr>
                                              <len>1</len>
                                              <unit>RT</unit>
                                              <description>1 malige Warmwasserbereitung (2 == ein, 0 == aus)</description>
                              </command>
                              <command name="set1xWW" protocmd="setaddr2">
                                              <addr>B020</addr>
                                              <len>1</len>
                                              <unit>RT</unit>
                                              <description>1 malige Warmwasserbereitung (2 == ein, 0 == aus)</description>
                              </command>
                              <command name="setHeaterforWW" protocmd="setaddrValue">
                                      <addr>6015</addr>
                                      <len>1</len>
                                      <unit>XX</unit>
                                      <description>Druchlauferhitzer für Warmwasser aktivieren</description>
                              </command>
                              <command name="setHeaterforRoomtemp" protocmd="setaddrValue">
                                      <addr>7902</addr>
                                      <len>1</len>
                                      <unit>XX</unit>
                                      <description>Durchlauferhitzer für Heizung aktivieren</description>
                              </command>
                              <command name="setHeater" protocmd="setaddrValue">
                                      <addr>7907</addr>
                                      <len>1</len>
                                      <unit>XX</unit>
                                      <description>Leistung Durchlauferhitzer (1=3, 2=6 oder 3=9kW)</description>
                              </command>
                              

                              Im Bereich Bxxx lese und setze ich über die Unit >BA<

                              <unit name='BetriebsArt'>
                              	   	<abbrev>BA</abbrev>
                              	   	<type>enum</type>
                              	   	<enum bytes='00' text='Abschaltbetrieb'/>
                              	   	<enum bytes='01' text='Warmwasser'/>
                              	   	<enum bytes='02' text='Heizen und Warmwasser'/>
                              	   	<enum bytes='03' text='3'/>
                              	   	<enum bytes='04' text='dauernd reduziert'/>
                              	   	<enum bytes='05' text='dauernd normal'/>
                              	   	<enum bytes='06' text='normal Abschalt'/>
                               	   	<enum bytes='07' text='nur Kuehlen'/>
                               	   	<enum bytes="42" text="3"/>
                                    	<enum bytes="82" text="4"/>
                              		<enum text='UNKNOWN'/>
                              	</unit>
                              

                              oder

                              <unit name="Einstellwert">
                                    	<abbrev>XX</abbrev>
                                    	<calc get="V" set="V"/>
                                    	<type>uchar</type>
                                    	<entity/>
                              </unit>
                              

                              Ich kenne die Datensatzstruktur der 200W nicht. Vielleicht kann hier jemand aus dem Forum weiterhelfen.

                              M 1 Reply Last reply Reply Quote 0
                              • M
                                McBeath @MartyBr last edited by McBeath

                                Hallo zusammen, ich wollte mal fragen, ob bei euch die Verbindung auch sporadisch abbricht?
                                Bei mir ist von Zeit zu Zeit die verbindung von Vcontrold zum Oprolink dahin.

                                Habe jetzt soweit raus, das mit einem USBreset und anschließendem Adapter neustart wieder da alles im Lot ist.
                                Was ich aber noch immer manuell ausfühern muss.
                                Habe noch nicht raus wie ich das per Skript resalisieren kann.
                                (Ählich verhält es sich momentan mit dem USB300 EnOcean Stick am Pi4 mir ser2net)

                                Meine neue konstelation sieht so aus, Optolink am Pi4 und der IOB im Docker auf der Diskstatio.
                                Als ich das direkt im IOB des Pi4 und über Mqtt zur Diskstaion hatte, ist das nicht vorgekommen. 😕

                                M 1 Reply Last reply Reply Quote 0
                                • M
                                  MartyBr @McBeath last edited by

                                  @mcbeath
                                  Bei mir hatte das Update (oder eher die Neuinstallation) auf Bookworm geholfen. Danach keine Abbrüche mehr.
                                  Ansonsten schau die "linux-Control" an. Damit kannst du einen Linux-Rechner aus ioBroker steuern und Befehle absetzen.

                                  H M 2 Replies Last reply Reply Quote 0
                                  • H
                                    Hoizi1994 @MartyBr last edited by

                                    @martybr hi martin hab da ne frage kannst du mit dem Debug text was anfangen

                                    momentan geht bei mir nix und wollte die Raumtemp anpassen da wir gerade auf Urlaub sind und mir die zu weit runter fällt

                                    seit neuem geht nix mehr hättst du da evtl nen tipp? kann nur über vpn zugreifen aufn Raspi

                                    DEBUG:Tue Nov 28 09:23:15 2023 : Command: getTempVLSoll
                                    DEBUG:Tue Nov 28 09:23:15 2023 : Process 1744 tries to aquire lock

                                    M 1 Reply Last reply Reply Quote 0
                                    • M
                                      MartyBr @Hoizi1994 last edited by

                                      @hoizi1994
                                      Hallo, ich kann nur vermuten. Die Fehlermeldung klingt nach einer Sperre durch einen anderen Prozess. Bist du vielleicht mit SSH und telnet auf dem System?
                                      Ich würde den Rechner neu booten.

                                      H 1 Reply Last reply Reply Quote 0
                                      • H
                                        Hoizi1994 @MartyBr last edited by Hoizi1994

                                        @martybr ja bin ich mit putty auf telnet

                                        wie kann ich denn mit Telnet den Befehl setTempRaumSollRed auf 18 setzten?

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          MartyBr last edited by MartyBr

                                          @hoizi1994

                                          So:

                                          pi@raspberrypi:~ $ telnet localhost 3002
                                          Trying ::1...
                                          Trying 127.0.0.1...
                                          Connected to localhost.
                                          Escape character is '^]'.
                                          vctrld>setTempRaumSollRed 18
                                          OK
                                          vctrld>getTempRaumSollRed
                                          18.000000 °C
                                          

                                          P.S.
                                          Ich habe mich von Vcontrld verabschiedet. Ich nutze nun die Viessmannapi mit dem erweiterten Advance Zugriff. Hintergrund ist eine komplette Umstellung der Heizungssteuerung.

                                          H 1 Reply Last reply Reply Quote 0
                                          • H
                                            Hoizi1994 @MartyBr last edited by

                                            @martybr ok danke perfekt

                                            Ja i bin auch am überlegen sobalds Vitoconnect wieder offiziell verfügbar ist umzusteigen xD

                                            M 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

                                            778
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            17
                                            348
                                            53494
                                            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