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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Viessmann-Adapter mit vcontrol

NEWS

  • Wartung am 15.11. – Forum ab 22:00 Uhr nicht erreichbar
    BluefoxB
    Bluefox
    12
    2
    266

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

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

Viessmann-Adapter mit vcontrol

Viessmann-Adapter mit vcontrol

Scheduled Pinned Locked Moved ioBroker Allgemein
354 Posts 18 Posters 98.3k Views 17 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M MartyBr

    @hoizi1994
    Ich habe die Vitovent 300F. Die 200W hat andere Datenpunkte. Versuch mal die Werte zu bekommen. Sind die in deinem Handbuch beschrieben? Teste mal mit einem Wert. Bei mir war es auch ein langwieriges Recherchieren, bis ich die richtigen Werte gefunden hatte.
    Zeige mal deine xml-Dateien, vielleicht finde ich das was.

    H Offline
    H Offline
    Hoizi1994
    wrote on last edited by Hoizi1994
    #265

    @martybr @Issr4k

    so hab jetzt alles mal so beinander 😄

    leider startet der Adapter im Iobroker nicht da keine Verbindung zum Host ist, andere IP also diese eingetragen mit den SSH Zugangs Daten leider tut sich nix. Wie könnt ich prüfen an was es liegt per Telnet über SSH funktioniert alles soweit

    hat da wer ne idee?

    hat sich erledigt hab das problem gefunden danke trotzdem musste den adapter löschen und neu laden dann gings

    M 1 Reply Last reply
    0
    • H Hoizi1994

      @martybr @Issr4k

      so hab jetzt alles mal so beinander 😄

      leider startet der Adapter im Iobroker nicht da keine Verbindung zum Host ist, andere IP also diese eingetragen mit den SSH Zugangs Daten leider tut sich nix. Wie könnt ich prüfen an was es liegt per Telnet über SSH funktioniert alles soweit

      hat da wer ne idee?

      hat sich erledigt hab das problem gefunden danke trotzdem musste den adapter löschen und neu laden dann gings

      M Offline
      M Offline
      McBeath
      wrote on last edited by
      #266

      Hey Leute,
      Wie ich hier so lese habt ihr eure Viessmann mit Optolink und vcontrol ja am laufen.

      Hätte denn jemand für einen absoluten Anfänger eine step by step
      Anleitung wie und was ich installieren und konfigurieren muss?

      Hab einen Pi4 neben der Heizung und das Optolink Kabel ist vorhanden und angeschlossen.
      Auf dem Pi läuft der iobroker und der Viessmann Adapter ist drauf.

      Wie bekomme ich denn jetzt das Kabel zum Adapter durch gereicht?
      Vcontrol muss her und irgendwie konfiguriert werden!?!

      Wäre sehr dankbar für die Erleuchtung. 😊

      H 1 Reply Last reply
      0
      • M Offline
        M Offline
        MartyBr
        wrote on last edited by
        #267

        @mcbeath Hier ist eine gute Anleitung zur Installation der Software "VControld":
        https://github.com/openv/openv/wiki/vcontrold-mit-Raspberry-Pi

        Gruß
        Martin


        Intel NUCs mit Proxmox / Iobroker als VM unter Debian
        Raspeberry mit USB Leseköpfen für Smartmeter
        Homematic und Homematic IP

        ScroungerS 1 Reply Last reply
        0
        • M McBeath

          Hey Leute,
          Wie ich hier so lese habt ihr eure Viessmann mit Optolink und vcontrol ja am laufen.

          Hätte denn jemand für einen absoluten Anfänger eine step by step
          Anleitung wie und was ich installieren und konfigurieren muss?

          Hab einen Pi4 neben der Heizung und das Optolink Kabel ist vorhanden und angeschlossen.
          Auf dem Pi läuft der iobroker und der Viessmann Adapter ist drauf.

          Wie bekomme ich denn jetzt das Kabel zum Adapter durch gereicht?
          Vcontrol muss her und irgendwie konfiguriert werden!?!

          Wäre sehr dankbar für die Erleuchtung. 😊

          H Offline
          H Offline
          Hoizi1994
          wrote on last edited by
          #268

          @mcbeath hatte das selbe thema die vergangen 2 wochen auch vor mir 😄 war nicht so easy mMn bin aber aktuell nur soweit dass ich daten abfragen kann kannst mir ruhig auch nachtrichten schreiben wenn was unklar ist an der Installation 🙂

          M 1 Reply Last reply
          0
          • M MartyBr

            @mcbeath Hier ist eine gute Anleitung zur Installation der Software "VControld":
            https://github.com/openv/openv/wiki/vcontrold-mit-Raspberry-Pi

            ScroungerS Offline
            ScroungerS Offline
            Scrounger
            Developer
            wrote on last edited by
            #269

            @martybr
            Weißt du ob es generell möglich ist die Heizkreispumpe (Mischer) ein bzw. auszuschalten?
            Bei mir ist das die Adresse 048E, lesen geht ohne Probleme, aber schreiben will er nicht.

            vito.xml - Adresse 048E

            		<command name="getHK2_Heizkreispumpe_aktiv" protocmd="getaddr">
            			<addr>048E</addr>
            			<len>1</len>
            			<description>Heizstab Stufe 1 ein/aus</description>
            			<unit>BST2</unit>
            		</command>
            

            vcontrold.xml - Definition BST2

            		<unit name='Bitstatus_Boolean'>
            			<abbrev>BST2</abbrev>
            			<type>enum</type>
            			<enum bytes='00' text='0'/>
            			<enum bytes='01' text='1'/>
            			<enum bytes='02' text='NV'/>
            			<enum text='UNKNOWN'/>
            		</unit>
            

            <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

            <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

            M 1 Reply Last reply
            0
            • H Hoizi1994

              @mcbeath hatte das selbe thema die vergangen 2 wochen auch vor mir 😄 war nicht so easy mMn bin aber aktuell nur soweit dass ich daten abfragen kann kannst mir ruhig auch nachtrichten schreiben wenn was unklar ist an der Installation 🙂

              M Offline
              M Offline
              McBeath
              wrote on last edited by McBeath
              #270

              @hoizi1994
              Hey hoizi,
              Auf das Angebot komme ich doch gerne zurück. 😳
              Verbindung steht soweit, bekomme wohl noch keine Daten.
              Schätze es liegt an der ID in der vcontrold.xmd.

              Wer weis wo ich diese her bekomme?
              Vitokal A200 - VT 200 (WO1C)😕

              Habe was in der ecnDataPointType.xml der Vitosoft gefunden...

              <DataPointType>
                  <ID>V200GW1</ID>
                  <Description>Allgemeine Produktbeschreibung: Vitotronic 200 GW1</Description>
                  <Identification>20A4</Identification>
                  <IdentificationExtension>0100</IdentificationExtension>
                  <IdentificationExtensionTill>0106</IdentificationExtensionTill>
                  <Options>undefined</Options>
                  <EventOptimisation>0</EventOptimisation>
                  <ControllerType>2</ControllerType>
                  <ErrorType>1</ErrorType>
                </DataPointType>
                <DataPointType>
              

              Ist die 20A4 meine ID?

              M 1 Reply Last reply
              -1
              • M McBeath

                @hoizi1994
                Hey hoizi,
                Auf das Angebot komme ich doch gerne zurück. 😳
                Verbindung steht soweit, bekomme wohl noch keine Daten.
                Schätze es liegt an der ID in der vcontrold.xmd.

                Wer weis wo ich diese her bekomme?
                Vitokal A200 - VT 200 (WO1C)😕

                Habe was in der ecnDataPointType.xml der Vitosoft gefunden...

                <DataPointType>
                    <ID>V200GW1</ID>
                    <Description>Allgemeine Produktbeschreibung: Vitotronic 200 GW1</Description>
                    <Identification>20A4</Identification>
                    <IdentificationExtension>0100</IdentificationExtension>
                    <IdentificationExtensionTill>0106</IdentificationExtensionTill>
                    <Options>undefined</Options>
                    <EventOptimisation>0</EventOptimisation>
                    <ControllerType>2</ControllerType>
                    <ErrorType>1</ErrorType>
                  </DataPointType>
                  <DataPointType>
                

                Ist die 20A4 meine ID?

                M Offline
                M Offline
                McBeath
                wrote on last edited by McBeath
                #271

                Laut Github ist es wohl die "204D" meine ID.

                Gerät ...................... ID ............... Protokoll....Produkt...................................Beschreibung
                Vitotronic 200 .....204D............300,KW2....Vitotronic 200 (WO1C) .....Wärmepumpenregelung (Vitocal 2xx-G/3xx-G mit Vitotronic 200 (Typ WO1C)

                Und wenn ich die 204D in der Vcontrold.xml eintrage erhalte ich die Meldung "204D nicht definiert"

                Im Viessmann Adapter steht unter Informationen zur Geizungsanlage aber auch immer nur die "2098" drin.

                Bekommen ein paar Werte schonmal angezeigt aber die sind nicht zu gebrauchen. 😞
                Bauche wohl eine andere vito.xml?!?

                H 1 Reply Last reply
                0
                • ScroungerS Scrounger

                  @martybr
                  Weißt du ob es generell möglich ist die Heizkreispumpe (Mischer) ein bzw. auszuschalten?
                  Bei mir ist das die Adresse 048E, lesen geht ohne Probleme, aber schreiben will er nicht.

                  vito.xml - Adresse 048E

                  		<command name="getHK2_Heizkreispumpe_aktiv" protocmd="getaddr">
                  			<addr>048E</addr>
                  			<len>1</len>
                  			<description>Heizstab Stufe 1 ein/aus</description>
                  			<unit>BST2</unit>
                  		</command>
                  

                  vcontrold.xml - Definition BST2

                  		<unit name='Bitstatus_Boolean'>
                  			<abbrev>BST2</abbrev>
                  			<type>enum</type>
                  			<enum bytes='00' text='0'/>
                  			<enum bytes='01' text='1'/>
                  			<enum bytes='02' text='NV'/>
                  			<enum text='UNKNOWN'/>
                  		</unit>
                  
                  M Offline
                  M Offline
                  MartyBr
                  wrote on last edited by
                  #272

                  @scrounger sagte in Viessmann-Adapter mit vcontrol:

                  @martybr
                  Weißt du ob es generell möglich ist die Heizkreispumpe (Mischer) ein bzw. auszuschalten?
                  Bei mir ist das die Adresse 048E, lesen geht ohne Probleme, aber schreiben will er nicht.

                  vito.xml - Adresse 048E

                  		<command name="getHK2_Heizkreispumpe_aktiv" protocmd="getaddr">
                  			<addr>048E</addr>
                  			<len>1</len>
                  			<description>Heizstab Stufe 1 ein/aus</description>
                  			<unit>BST2</unit>
                  		</command>
                  

                  Der Name und die Beschreibung unterscheiden sich (Pumpe vs. Heizstab). Das ist aber nur ein kosmetischer Fehler. Schreiben musst du natürlich mit dem setHK2_Heizkreispumpe.

                  Bei meiner Anlage funktioniert zum Auslesen

                  <command name="getStatusPumpe" protocmd="getaddr">
                           <addr>048D</addr>
                           <len>1</len>
                           <unit>RT</unit>
                           <description>Status HK1: Heizkreispumpe (0..1)</description>
                  </command>
                  

                  mit folgender Definition:

                  <unit name='ReturnStatus'>
                  	   		<abbrev>RT</abbrev>
                  	   		<type>enum</type>
                  	   		<enum bytes='00' text='0'/>
                  	   		<enum bytes='01' text='1'/>
                           	<enum bytes='02' text='EIN'/>
                  	   		<enum text='NOT OK'/>
                  	</unit>
                  

                  Die >048D< scheint damit für den zweiten HK zu stehen. Das sieht also richtig aus.
                  Das schalten funktioniert bei mir (auch) nicht.
                  Ich muss mal die vito.xml um den Set-Befehl ergänzen. Vielleicht kann ich dann mehr dazu sagen.

                  Gruß
                  Martin


                  Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                  Raspeberry mit USB Leseköpfen für Smartmeter
                  Homematic und Homematic IP

                  1 Reply Last reply
                  0
                  • M McBeath

                    Laut Github ist es wohl die "204D" meine ID.

                    Gerät ...................... ID ............... Protokoll....Produkt...................................Beschreibung
                    Vitotronic 200 .....204D............300,KW2....Vitotronic 200 (WO1C) .....Wärmepumpenregelung (Vitocal 2xx-G/3xx-G mit Vitotronic 200 (Typ WO1C)

                    Und wenn ich die 204D in der Vcontrold.xml eintrage erhalte ich die Meldung "204D nicht definiert"

                    Im Viessmann Adapter steht unter Informationen zur Geizungsanlage aber auch immer nur die "2098" drin.

                    Bekommen ein paar Werte schonmal angezeigt aber die sind nicht zu gebrauchen. 😞
                    Bauche wohl eine andere vito.xml?!?

                    H Offline
                    H Offline
                    Hoizi1994
                    wrote on last edited by
                    #273

                    @mcbeath ein wenig weiter oben sind die xml datein von MartyBr die find ich top kann ich nahezu 1zu1 nehmen

                    1 Reply Last reply
                    0
                    • M MartyBr

                      @hoizi1994
                      Ich habe die Vitovent 300F. Die 200W hat andere Datenpunkte. Versuch mal die Werte zu bekommen. Sind die in deinem Handbuch beschrieben? Teste mal mit einem Wert. Bei mir war es auch ein langwieriges Recherchieren, bis ich die richtigen Werte gefunden hatte.
                      Zeige mal deine xml-Dateien, vielleicht finde ich das was.

                      H Offline
                      H Offline
                      Hoizi1994
                      wrote on last edited by
                      #274

                      @martybr said in Viessmann-Adapter mit vcontrol:

                      @hoizi1994
                      Ich habe die Vitovent 300F. Die 200W hat andere Datenpunkte. Versuch mal die Werte zu bekommen. Sind die in deinem Handbuch beschrieben? Teste mal mit einem Wert. Bei mir war es auch ein langwieriges Recherchieren, bis ich die richtigen Werte gefunden hatte.
                      Zeige mal deine xml-Dateien, vielleicht finde ich das was.

                      So das was ich rausgefunden habe sind nur die Datenpunkte um den volumenstrom der lüftung in % zu ändern

                      B005 habe ich bis jetzt nur 2 und 66 rausbekommen 66 war die intensivlüftung wenn mans an der steuerung manuell startet 2 dürfte der betriebsmodus für die zeitsteuerung sein oder so

                      Doch wie man in den Leistungsstufen unschaltet bekam ich noch nicht raus. Evtl. hast ein paar tipps wie ich so was rausfinden könnte

                      M 1 Reply Last reply
                      0
                      • H Hoizi1994

                        @martybr said in Viessmann-Adapter mit vcontrol:

                        @hoizi1994
                        Ich habe die Vitovent 300F. Die 200W hat andere Datenpunkte. Versuch mal die Werte zu bekommen. Sind die in deinem Handbuch beschrieben? Teste mal mit einem Wert. Bei mir war es auch ein langwieriges Recherchieren, bis ich die richtigen Werte gefunden hatte.
                        Zeige mal deine xml-Dateien, vielleicht finde ich das was.

                        So das was ich rausgefunden habe sind nur die Datenpunkte um den volumenstrom der lüftung in % zu ändern

                        B005 habe ich bis jetzt nur 2 und 66 rausbekommen 66 war die intensivlüftung wenn mans an der steuerung manuell startet 2 dürfte der betriebsmodus für die zeitsteuerung sein oder so

                        Doch wie man in den Leistungsstufen unschaltet bekam ich noch nicht raus. Evtl. hast ein paar tipps wie ich so was rausfinden könnte

                        M Offline
                        M Offline
                        MartyBr
                        wrote on last edited by MartyBr
                        #275

                        @hoizi1994 Ich habe auch nur die große Suchmaschine und mein Handbuch durchsucht.
                        Evtl. findest du in anderen Foren Infos über die 200W, z,B. FHEM:
                        https://forum.fhem.de/index.php?topic=104786.0

                        Das war auch bei meiner 300F eine Sucherei, bis ich die richtigen Werte gefunden habe.

                        Edit:
                        Schau mal hier:

                        
                        #       Lüftung
                        POLL, 01F7B00501, 1ByteU, 1,            Lueftung_Betriebsart                            , -
                        SET, Einstellung_Lueftung,   01F4B00501, 1ByteU , -        # kann man dann mit 66 auf Intensivbetrieb setzen
                        POLL, 01F70A7E01, 1ByteH, 1,            Lueftung_Betriebsprogramm                             , -
                        POLL, 01F70A0103, 2ByteS, 10,            Lueftung_Zulufttemperatur                             , -
                        POLL, 01F70A0203, 2ByteS, 10,            Lueftung_Ablufttemperatur                             , -
                        POLL, 01F70A0003, 2ByteS, 10,            Lueftung_AussentemperaturLueftung                             , -
                        POLL, 01F70A0403, 2ByteU, 1,  Lueftung_Zuluft_Volumenstrom, -
                        POLL, 01F70A0C03, 2ByteS, 1,  Lueftung_Elek_Vorheiz, -
                        POLL, 01F70A0D03, 2ByteU, 1,  Lueftung_Bypass, -
                        POLL, 01F70A0E03, 2ByteU, 1,  Lueftung_Filterstandzeit, -
                        POLL, 01F70A0303, 2ByteS,10 ,Lueftung_Fortlufttemperatur, -
                        POLL, 01F70A0503, 2ByteU,1  ,Lueftung_Fortluft_Volumenstrom, -
                        POLL, 01F70A0403, 2ByteU,1  ,Lueftung_Zuluft_Volumenstrom, -
                        

                        Hier kommt deine B005 vor: 01F4B00501

                        Versuche mal die Werte aus der Tabelle und lass vorne die ersten 4 Zeichen und hinten die letzten 2 Zeichen weg.

                        Gruß
                        Martin


                        Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                        Raspeberry mit USB Leseköpfen für Smartmeter
                        Homematic und Homematic IP

                        H 1 Reply Last reply
                        0
                        • M MartyBr

                          @hoizi1994 Ich habe auch nur die große Suchmaschine und mein Handbuch durchsucht.
                          Evtl. findest du in anderen Foren Infos über die 200W, z,B. FHEM:
                          https://forum.fhem.de/index.php?topic=104786.0

                          Das war auch bei meiner 300F eine Sucherei, bis ich die richtigen Werte gefunden habe.

                          Edit:
                          Schau mal hier:

                          
                          #       Lüftung
                          POLL, 01F7B00501, 1ByteU, 1,            Lueftung_Betriebsart                            , -
                          SET, Einstellung_Lueftung,   01F4B00501, 1ByteU , -        # kann man dann mit 66 auf Intensivbetrieb setzen
                          POLL, 01F70A7E01, 1ByteH, 1,            Lueftung_Betriebsprogramm                             , -
                          POLL, 01F70A0103, 2ByteS, 10,            Lueftung_Zulufttemperatur                             , -
                          POLL, 01F70A0203, 2ByteS, 10,            Lueftung_Ablufttemperatur                             , -
                          POLL, 01F70A0003, 2ByteS, 10,            Lueftung_AussentemperaturLueftung                             , -
                          POLL, 01F70A0403, 2ByteU, 1,  Lueftung_Zuluft_Volumenstrom, -
                          POLL, 01F70A0C03, 2ByteS, 1,  Lueftung_Elek_Vorheiz, -
                          POLL, 01F70A0D03, 2ByteU, 1,  Lueftung_Bypass, -
                          POLL, 01F70A0E03, 2ByteU, 1,  Lueftung_Filterstandzeit, -
                          POLL, 01F70A0303, 2ByteS,10 ,Lueftung_Fortlufttemperatur, -
                          POLL, 01F70A0503, 2ByteU,1  ,Lueftung_Fortluft_Volumenstrom, -
                          POLL, 01F70A0403, 2ByteU,1  ,Lueftung_Zuluft_Volumenstrom, -
                          

                          Hier kommt deine B005 vor: 01F4B00501

                          Versuche mal die Werte aus der Tabelle und lass vorne die ersten 4 Zeichen und hinten die letzten 2 Zeichen weg.

                          H Offline
                          H Offline
                          Hoizi1994
                          wrote on last edited by
                          #276

                          @martybr oke danke für die Info

                          Hätte da noch ne frage zu den .xml wie sollte die vcontrold aussehen wenn ich eine setadrr66 machen würde für die intensiv Lüftung

                          muss ich da von deiner vcontrold.xml noch was hinzufügen ?

                          für die Vito dachte ich an sowas oder sehe ich da was falsch?

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

                          bin hier leider ganz neu in dem Thema und finde nichts ähnliches im Inet

                          lg. und danke

                          M 1 Reply Last reply
                          0
                          • H Hoizi1994

                            @martybr oke danke für die Info

                            Hätte da noch ne frage zu den .xml wie sollte die vcontrold aussehen wenn ich eine setadrr66 machen würde für die intensiv Lüftung

                            muss ich da von deiner vcontrold.xml noch was hinzufügen ?

                            für die Vito dachte ich an sowas oder sehe ich da was falsch?

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

                            bin hier leider ganz neu in dem Thema und finde nichts ähnliches im Inet

                            lg. und danke

                            M Offline
                            M Offline
                            MartyBr
                            wrote on last edited by
                            #277

                            @hoizi1994
                            Ich hatte in meiner vcontrold.xml folgende Protokolle definiert:

                            <protocols>
                                  <protocol name='P300'>
                                      <pid>41</pid>
                                      <macros>
                                            <macro name='GETADDR'>
                                                <command>SEND 00 01</command>
                                            </macro>
                                      </macros>
                                      <commands>
                                            <command name="getaddr">
                                                 <send>GETADDR $addr $hexlen;RECV $len $unit</send>
                                            </command>
                                            <command name="setaddr">
                                                 <send>SEND 00 02 $addr $hexlen BYTES;RECV 1 SR</send>
                                            </command>
                                            <command name="setaddrValue">
                            						<send>SEND 00 02 $addr $hexlen;SEND BYTES $unit;RECV 1 SR</send>
                            				</command>
                                            <command name="setaddr0">
                                                 <send>SEND 00 02 $addr $hexlen 00;RECV 1 SR</send>
                                            </command>
                                            <command name="setaddr1">
                                                 <send>SEND 00 02 $addr $hexlen 01;RECV 1 SR</send>
                                            </command>
                                            <command name="setaddr2">
                                                 <send>SEND 00 02 $addr $hexlen 02;RECV 1 SR</send>
                                            </command>
                                            <command name="setaddr16">
                                                 <send>SEND 00 02 $addr $hexlen A0 00;RECV 2 SR</send>
                                            </command>
                                            <command name="setaddr17">
                                                 <send>SEND 00 02 $addr $hexlen AA 00;RECV 2 SR</send>
                                            </command>
                                            <command name="setaddr18">
                                                 <send>SEND 00 02 $addr $hexlen B4 00;RECV 2 SR</send>
                                            </command>
                                            <command name="setaddr19">
                                                 <send>SEND 00 02 $addr $hexlen BE 00;RECV 2 SR</send>
                                            </command>
                                            <command name="setaddr20">
                                                 <send>SEND 00 02 $addr $hexlen C8 00;RECV 2 SR</send>
                                            </command>
                                            <command name="setaddr21">
                                                 <send>SEND 00 02 $addr $hexlen D2 00;RECV 2 SR</send>
                                            </command>
                                            <command name="setaddr22">
                                                 <send>SEND 00 02 $addr $hexlen DC 00;RECV 2 SR</send>
                                            </command>
                                            <command name="setaddr23">
                                                 <send>SEND 00 02 $addr $hexlen E6 00;RECV 2 SR</send>
                                            </command>
                                            <command name="setaddr24">
                                                 <send>SEND 00 02 $addr $hexlen F0 00;RECV 2 SR</send>
                                            </command>
                                            <command name="setaddr25">
                                                 <send>SEND 00 02 $addr $hexlen FA 00;RECV 2 SR</send>
                                            </command>
                                            <command name="setaddr45">
                                                 <send>SEND 00 02 $addr $hexlen C2 01;RECV 2 SR</send>
                                            </command>
                                            <command name="setaddr55">
                                                 <send>SEND 00 02 $addr $hexlen 26 02;RECV 2 SR</send>
                                            </command>
                                            <command name="setfunc">
                            	   					<send>SEND 00 07 $addr 02 02;SEND BYTES $unit;RECV $len</send>
                            				</command>
                                        </commands>
                                  </protocol>
                                </protocols>
                            
                            

                            Vielleicht kannst du ja ein Protokoll übernehmen oder dir ein neues bauen.
                            Welche Werte musst du in B005 schreiben?

                            Gruß
                            Martin


                            Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                            Raspeberry mit USB Leseköpfen für Smartmeter
                            Homematic und Homematic IP

                            M 1 Reply Last reply
                            0
                            • M MartyBr

                              @hoizi1994
                              Ich hatte in meiner vcontrold.xml folgende Protokolle definiert:

                              <protocols>
                                    <protocol name='P300'>
                                        <pid>41</pid>
                                        <macros>
                                              <macro name='GETADDR'>
                                                  <command>SEND 00 01</command>
                                              </macro>
                                        </macros>
                                        <commands>
                                              <command name="getaddr">
                                                   <send>GETADDR $addr $hexlen;RECV $len $unit</send>
                                              </command>
                                              <command name="setaddr">
                                                   <send>SEND 00 02 $addr $hexlen BYTES;RECV 1 SR</send>
                                              </command>
                                              <command name="setaddrValue">
                              						<send>SEND 00 02 $addr $hexlen;SEND BYTES $unit;RECV 1 SR</send>
                              				</command>
                                              <command name="setaddr0">
                                                   <send>SEND 00 02 $addr $hexlen 00;RECV 1 SR</send>
                                              </command>
                                              <command name="setaddr1">
                                                   <send>SEND 00 02 $addr $hexlen 01;RECV 1 SR</send>
                                              </command>
                                              <command name="setaddr2">
                                                   <send>SEND 00 02 $addr $hexlen 02;RECV 1 SR</send>
                                              </command>
                                              <command name="setaddr16">
                                                   <send>SEND 00 02 $addr $hexlen A0 00;RECV 2 SR</send>
                                              </command>
                                              <command name="setaddr17">
                                                   <send>SEND 00 02 $addr $hexlen AA 00;RECV 2 SR</send>
                                              </command>
                                              <command name="setaddr18">
                                                   <send>SEND 00 02 $addr $hexlen B4 00;RECV 2 SR</send>
                                              </command>
                                              <command name="setaddr19">
                                                   <send>SEND 00 02 $addr $hexlen BE 00;RECV 2 SR</send>
                                              </command>
                                              <command name="setaddr20">
                                                   <send>SEND 00 02 $addr $hexlen C8 00;RECV 2 SR</send>
                                              </command>
                                              <command name="setaddr21">
                                                   <send>SEND 00 02 $addr $hexlen D2 00;RECV 2 SR</send>
                                              </command>
                                              <command name="setaddr22">
                                                   <send>SEND 00 02 $addr $hexlen DC 00;RECV 2 SR</send>
                                              </command>
                                              <command name="setaddr23">
                                                   <send>SEND 00 02 $addr $hexlen E6 00;RECV 2 SR</send>
                                              </command>
                                              <command name="setaddr24">
                                                   <send>SEND 00 02 $addr $hexlen F0 00;RECV 2 SR</send>
                                              </command>
                                              <command name="setaddr25">
                                                   <send>SEND 00 02 $addr $hexlen FA 00;RECV 2 SR</send>
                                              </command>
                                              <command name="setaddr45">
                                                   <send>SEND 00 02 $addr $hexlen C2 01;RECV 2 SR</send>
                                              </command>
                                              <command name="setaddr55">
                                                   <send>SEND 00 02 $addr $hexlen 26 02;RECV 2 SR</send>
                                              </command>
                                              <command name="setfunc">
                              	   					<send>SEND 00 07 $addr 02 02;SEND BYTES $unit;RECV $len</send>
                              				</command>
                                          </commands>
                                    </protocol>
                                  </protocols>
                              
                              

                              Vielleicht kannst du ja ein Protokoll übernehmen oder dir ein neues bauen.
                              Welche Werte musst du in B005 schreiben?

                              M Offline
                              M Offline
                              McBeath
                              wrote on last edited by
                              #278

                              @Hoizi1994
                              Ich danke dir für die infos bzüglich der vito.xml und vcontrold.xml von martybr 👍

                              @martybr
                              Hallo Martybr
                              ich hätte da mal eine frage zu den JAZ werten, die sind bei mir um den Faktor 10
                              zuhoch. Sprich aus 3,5 wird im IOB eine 35.
                              Kann man das in der vito.xml irgendwo anpassen?

                              Primärkreis Temperatur Eingang ist da (5,9 °C)
                              Primärkreis Temperatur Ausgang nicht (0°C)
                              Wo kann ich die korrekten Adressen finden?

                              Ich habe einen Exprot aller Datapoint der A200 von der Vitosoft.
                              Wenn mal die da vielleicht herleiten kann?!?

                              1 Reply Last reply
                              0
                              • H Offline
                                H Offline
                                Hoizi1994
                                wrote on last edited by Hoizi1994
                                #279

                                @martybr said in Viessmann-Adapter mit vcontrol:

                                @hoizi1994
                                Ich hatte in meiner vcontrold.xml folgende Protokolle definiert:

                                <protocols>
                                      <protocol name='P300'>
                                          <pid>41</pid>
                                          <macros>
                                                <macro name='GETADDR'>
                                                    <command>SEND 00 01</command>
                                                </macro>
                                          </macros>
                                          <commands>
                                                <command name="getaddr">
                                                     <send>GETADDR $addr $hexlen;RECV $len $unit</send>
                                                </command>
                                                <command name="setaddr">
                                                     <send>SEND 00 02 $addr $hexlen BYTES;RECV 1 SR</send>
                                                </command>
                                                <command name="setaddrValue">
                                						<send>SEND 00 02 $addr $hexlen;SEND BYTES $unit;RECV 1 SR</send>
                                				</command>
                                                <command name="setaddr0">
                                                     <send>SEND 00 02 $addr $hexlen 00;RECV 1 SR</send>
                                                </command>
                                                <command name="setaddr1">
                                                     <send>SEND 00 02 $addr $hexlen 01;RECV 1 SR</send>
                                                </command>
                                                <command name="setaddr2">
                                                     <send>SEND 00 02 $addr $hexlen 02;RECV 1 SR</send>
                                                </command>
                                                <command name="setaddr16">
                                                     <send>SEND 00 02 $addr $hexlen A0 00;RECV 2 SR</send>
                                                </command>
                                                <command name="setaddr17">
                                                     <send>SEND 00 02 $addr $hexlen AA 00;RECV 2 SR</send>
                                                </command>
                                                <command name="setaddr18">
                                                     <send>SEND 00 02 $addr $hexlen B4 00;RECV 2 SR</send>
                                                </command>
                                                <command name="setaddr19">
                                                     <send>SEND 00 02 $addr $hexlen BE 00;RECV 2 SR</send>
                                                </command>
                                                <command name="setaddr20">
                                                     <send>SEND 00 02 $addr $hexlen C8 00;RECV 2 SR</send>
                                                </command>
                                                <command name="setaddr21">
                                                     <send>SEND 00 02 $addr $hexlen D2 00;RECV 2 SR</send>
                                                </command>
                                                <command name="setaddr22">
                                                     <send>SEND 00 02 $addr $hexlen DC 00;RECV 2 SR</send>
                                                </command>
                                                <command name="setaddr23">
                                                     <send>SEND 00 02 $addr $hexlen E6 00;RECV 2 SR</send>
                                                </command>
                                                <command name="setaddr24">
                                                     <send>SEND 00 02 $addr $hexlen F0 00;RECV 2 SR</send>
                                                </command>
                                                <command name="setaddr25">
                                                     <send>SEND 00 02 $addr $hexlen FA 00;RECV 2 SR</send>
                                                </command>
                                                <command name="setaddr45">
                                                     <send>SEND 00 02 $addr $hexlen C2 01;RECV 2 SR</send>
                                                </command>
                                                <command name="setaddr55">
                                                     <send>SEND 00 02 $addr $hexlen 26 02;RECV 2 SR</send>
                                                </command>
                                                <command name="setfunc">
                                	   					<send>SEND 00 07 $addr 02 02;SEND BYTES $unit;RECV $len</send>
                                				</command>
                                            </commands>
                                      </protocol>
                                    </protocols>
                                
                                

                                Vielleicht kannst du ja ein Protokoll übernehmen oder dir ein neues bauen.
                                Welche Werte musst du in B005 schreiben?

                                Einen wert von 66 muss ich schreiben

                                Wenn ich hier die setaddr55 kopiere und auf 66 ändere müsste das doch passen oder was bedeuted das hinterer hexlen usw? muss da auch was gändert werden

                                edit: sollte 1 bite sein der B005

                                M 1 Reply Last reply
                                0
                                • H Hoizi1994

                                  @martybr said in Viessmann-Adapter mit vcontrol:

                                  @hoizi1994
                                  Ich hatte in meiner vcontrold.xml folgende Protokolle definiert:

                                  <protocols>
                                        <protocol name='P300'>
                                            <pid>41</pid>
                                            <macros>
                                                  <macro name='GETADDR'>
                                                      <command>SEND 00 01</command>
                                                  </macro>
                                            </macros>
                                            <commands>
                                                  <command name="getaddr">
                                                       <send>GETADDR $addr $hexlen;RECV $len $unit</send>
                                                  </command>
                                                  <command name="setaddr">
                                                       <send>SEND 00 02 $addr $hexlen BYTES;RECV 1 SR</send>
                                                  </command>
                                                  <command name="setaddrValue">
                                  						<send>SEND 00 02 $addr $hexlen;SEND BYTES $unit;RECV 1 SR</send>
                                  				</command>
                                                  <command name="setaddr0">
                                                       <send>SEND 00 02 $addr $hexlen 00;RECV 1 SR</send>
                                                  </command>
                                                  <command name="setaddr1">
                                                       <send>SEND 00 02 $addr $hexlen 01;RECV 1 SR</send>
                                                  </command>
                                                  <command name="setaddr2">
                                                       <send>SEND 00 02 $addr $hexlen 02;RECV 1 SR</send>
                                                  </command>
                                                  <command name="setaddr16">
                                                       <send>SEND 00 02 $addr $hexlen A0 00;RECV 2 SR</send>
                                                  </command>
                                                  <command name="setaddr17">
                                                       <send>SEND 00 02 $addr $hexlen AA 00;RECV 2 SR</send>
                                                  </command>
                                                  <command name="setaddr18">
                                                       <send>SEND 00 02 $addr $hexlen B4 00;RECV 2 SR</send>
                                                  </command>
                                                  <command name="setaddr19">
                                                       <send>SEND 00 02 $addr $hexlen BE 00;RECV 2 SR</send>
                                                  </command>
                                                  <command name="setaddr20">
                                                       <send>SEND 00 02 $addr $hexlen C8 00;RECV 2 SR</send>
                                                  </command>
                                                  <command name="setaddr21">
                                                       <send>SEND 00 02 $addr $hexlen D2 00;RECV 2 SR</send>
                                                  </command>
                                                  <command name="setaddr22">
                                                       <send>SEND 00 02 $addr $hexlen DC 00;RECV 2 SR</send>
                                                  </command>
                                                  <command name="setaddr23">
                                                       <send>SEND 00 02 $addr $hexlen E6 00;RECV 2 SR</send>
                                                  </command>
                                                  <command name="setaddr24">
                                                       <send>SEND 00 02 $addr $hexlen F0 00;RECV 2 SR</send>
                                                  </command>
                                                  <command name="setaddr25">
                                                       <send>SEND 00 02 $addr $hexlen FA 00;RECV 2 SR</send>
                                                  </command>
                                                  <command name="setaddr45">
                                                       <send>SEND 00 02 $addr $hexlen C2 01;RECV 2 SR</send>
                                                  </command>
                                                  <command name="setaddr55">
                                                       <send>SEND 00 02 $addr $hexlen 26 02;RECV 2 SR</send>
                                                  </command>
                                                  <command name="setfunc">
                                  	   					<send>SEND 00 07 $addr 02 02;SEND BYTES $unit;RECV $len</send>
                                  				</command>
                                              </commands>
                                        </protocol>
                                      </protocols>
                                  
                                  

                                  Vielleicht kannst du ja ein Protokoll übernehmen oder dir ein neues bauen.
                                  Welche Werte musst du in B005 schreiben?

                                  Einen wert von 66 muss ich schreiben

                                  Wenn ich hier die setaddr55 kopiere und auf 66 ändere müsste das doch passen oder was bedeuted das hinterer hexlen usw? muss da auch was gändert werden

                                  edit: sollte 1 bite sein der B005

                                  M Offline
                                  M Offline
                                  MartyBr
                                  wrote on last edited by
                                  #280

                                  @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.

                                  Gruß
                                  Martin


                                  Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                                  Raspeberry mit USB Leseköpfen für Smartmeter
                                  Homematic und Homematic IP

                                  H 1 Reply Last reply
                                  0
                                  • M MartyBr

                                    @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 Offline
                                    H Offline
                                    Hoizi1994
                                    wrote on last edited by
                                    #281

                                    @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
                                    0
                                    • H Hoizi1994

                                      @martybr

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

                                      lg.

                                      M Offline
                                      M Offline
                                      MartyBr
                                      wrote on last edited by
                                      #282

                                      @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

                                      Gruß
                                      Martin


                                      Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                                      Raspeberry mit USB Leseköpfen für Smartmeter
                                      Homematic und Homematic IP

                                      H 1 Reply Last reply
                                      0
                                      • M MartyBr

                                        @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 Offline
                                        H Offline
                                        Hoizi1994
                                        wrote on last edited by Hoizi1994
                                        #283

                                        @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
                                        0
                                        • H 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 Offline
                                          M Offline
                                          MartyBr
                                          wrote on last edited by
                                          #284

                                          @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.

                                          Gruß
                                          Martin


                                          Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                                          Raspeberry mit USB Leseköpfen für Smartmeter
                                          Homematic und Homematic IP

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


                                          Support us

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

                                          154

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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