Ankündigung

Einklappen
Keine Ankündigung bisher.

Neue Integration für Helios/Vallox KWL's (sogenannte pre-2014 Modelle mit RS485)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Neue Integration für Helios/Vallox KWL's (sogenannte pre-2014 Modelle mit RS485)

    Nur kurz zur Info: Es gab ja hier außer mir noch etliche weitere User mit einer Helios Pro oder Vallox SE KWL (sogenannte pre-2014-Modelle, die mit dem proprietären RS485 Busprotokoll; vor EasyControls). Dafür gab es bisher schon seit vielen Jahren im SmartHomeNG-Bereich ein Plugin von mir.

    Ich hab das zugrunde liegende Python-Script kürzlich komplett überarbeitet und in dem Zuge gleich auf Socket- statt Serial-Kommunikation umgestellt. Das ganze Gefrickel mit virtuellen seriellen Ports per socat/netcat zur Verbindung mit dem RS485-Netzwerk-Adapter ist somit nicht mehr notwendig. Die Kommunikation läuft direkt zwischen dem Script und Adapter/Konverter - IP und Portangabe reichen.

    Diese sogenannte 'HA Custom Integration' läuft bei mir seit fast zwei Wochen stabil (parallel zum shNG Plugin) und liest im Minutentakt Daten aus der KWL. Eine Schreibroutine (z.B. für eigene Automationen zum automatischen oder zeitgesteuerten Setzen von Lüftungsstufen) ist natürlich auch dabei.

    Gestern und heute habe ich dafür ein öffentliches Git Repro erstellt und alle notwendigen Vorarbeiten zur Aufnahme als reguläre HACS-Integration gemacht. Natürlich ist die Integration nach so kurzer Zeit bei HACS noch nicht gelistet, nicht mal das Logo wurde bisher formal freigegeben. Aber die manuelle Installation über HACS (drei Punkte rechts oben) sowie die automatische Information über und Installation von neuen Releases per HACS funktionieren und wurden von mir ausgiebig getestet.

    Falls jemand Interesse daran hat - hier steht alles weitere. Viel Spaß und frohe Bastelfeiertage!

    /tom

    #2
    Wow, super!

    Ich lasse meine über einen 0-10V Aktor laufen, hatte aber schon ewig den Wunsch sie umfangreicher einzubinden. Das gibt mir wieder einen Schub für die Weihnachtsfeiertage.

    Hast du einen LAN-RS485-Adapter, den du empfehlen kannst?

    LG

    Kommentar


      #3
      Freut mich, dass noch jemand die Integration brauchen kann.
      • Der USR-TCP232-310 läuft seit Ende 2016 bei mir 24/7 ohne Ausfälle. Zur Zeit sind sowohl SmartHomeNG als auch HomeAssistant damit verbunden und pollen alle 60s von der Helios KWL. Ich glaube aber, es gibt den nicht mehr im dieser Ausführung - Google wirft nur das Nachfolgemodell raus (410).
      • Den Waveshare RS485 TO ETH (B) habe ich rein aus Interesse kurz angetestet (habe die POE Version, aber die POE Spannungsversorgung nicht ausprobiert). Funktioniert auch gut. Habe ihn aber nicht im operativen Einsatz.
      • Mein derzeitiger Favorit ist der USR-DR134 - er ist aber zur Zeit noch aus China auf dem Weg zu mir. Ich habe das 'Schwestermodell' USR-DR132 für RS232 in einem anderen Projekt im Einsatz (Trovis Heizungsregler) - klein aber fein, wie der Waveshare für die Hutschiene, und die grüne Klemmleiste kannst Du vom Adapter abziehen und 'gemütlich' und ohne Frickelei wie eine Wagoklemme ohne zu Schrauben verkabeln und danach wieder anstöpseln. Ich hoffe, das Ding ist bis Weihnachten da, dann kann ich mehr dazu sagen.
      Im Grunde sollte aber jeder aktuelle RS485 Adapter gehen - da das Protokoll vom shNG Plugin bzw. der HA Integration komplett als 'Master' übernommen wird, muss das Teil nur auf der einen Seite LAN und auf der anderen RS485 können; selbst Modbus wird nicht benötigt, da es sich hier um ein anderes Protokoll handelt.

      Viel Erfolg!

      /tom
      Zuletzt geändert von Tom Bombadil; 16.12.2024, 17:53.

      Kommentar


        #4
        Habe mir jetzt den Lipstick bestellt, hoffe dass der in den Ferien ankommt.

        Kannst du den Bypass manuell schalten damit?

        LG

        Kommentar


          #5
          Nein, Bypass von außen steuern ist in der Firmware der KWL leider nicht vorgesehen. Wurde schon häufig kritisiert.

          Das einzige, was Dir zur Verfügung steht, ist die Starttemperatur der Bypassfunktion. Siehe auch hier auf S. 10 ganz unten - Sommer-/Wintermodus kannst Du mit der Integration einstellen, die Grenztemperatur auch, aber es gibt keine (zumindest keine dokumentierte) Anlagenfunktion für Bypassklappe auf/zu.

          /tom

          Kommentar


            #6
            Zitat von Janncsi Beitrag anzeigen
            Habe mir jetzt den Lipstick bestellt, hoffe dass der in den Ferien ankommt.
            Nur kurz zur Info: Habe den "Lipstick" heute in Betrieb genommen - lief auf Anhieb, und ist erwartungsgemäß deutlich performanter als mein 8 Jahre alter USR Adapter. Ich poste das Anschlussschema sowie Screenshots von den Einstellungen aller von mir erfolgreich getesteten Adapter (USR alt, Waveshare, USR neu/Lipstick) später im Wiki.

            /tom

            p.s. Nicht lachen: Mit NYM 5x1,5² lässt sich das Ding am besten verkabeln, da die Ports offensichtlich für 1,5² ausgelegt sind. Drähte einfach wie in eine Wago reinschieben, fertig (am besten direkt am Klemmkasten der KWL). Da die Installateure vor >10 Jahren für die 12m Modbus zwischen Fernbedienung und KWL ebenfalls NYM genommen haben, hatte ich hinsichtlich der Funktion aber auch keine Bedenken; läuft fehlerfrei.

            Kommentar


              #7
              Ich könnte mich so ärgern....habe den Lipstick heute erhalten und sofort angeschlossen. Dummerweise hatte ich die Lüftung nicht vom Strom getrennt und beim Einkürzen der Modbus-Leitung A und B in Kontakt gehabt. Kleiner Funken und nun läuft gar nichts mehr, auch das originale Bedienpanel ist tot.

              Installiert bekommen habe ich aber alles, wie in deiner Anleitung beschrieben....

              Kommentar


                #8
                Ach Du Schxxxxxxxxxxxxxxxxxxxxxxxxxxx ..... : (((((((((((

                Klingt fast so, als hättest Du irgendwie die +24V Versorgungsspannung auf den Bus gebracht. Das mag der gar nicht.

                Läuft die Grundlüftung wenigstens noch an? Mal ne Weile ausgelassen und neu versucht? Im Handbuch auf S. 19 steht was von Elektronik - aber nicht, ob es "nur" die Buselektronik ist.

                Ich drücke Dir gaaaanz fest die Daumen, dass es nur eine kaputte Sicherung ist. Mainboards und Fernbedienungen sind nach meiner Erinnerung nicht ganz preiswert, und Heinemann als (Original-)Hersteller dieser Helios/Vallox OEM-Geräte gibt's schon seit Jahren nicht mehr ...

                /tom

                Kommentar


                  #9
                  In der Anleitung steht extra, dass + nicht falsch angeschlossen werden darf, da es zu unmittelbaren Schäden kommt. Und so scheint es bei mir nun auch zu sein. Grund genug gerade für mich endlich die Steuerung komplett zu überbrücken....

                  Hatte noch einen MDT AIO rumliegen, die Motoren auf 230V und mit dem 0-10V Signal steuerbar gemacht. Ich baue jetzt noch alles ordentlich, aber für heute läuft die Anlage erstmal mit variabler Geschwindigkeit

                  Kommentar


                    #10
                    Ok, zumindest kein Totalschaden. 0-10V läuft gemäß Doku über andere Eingänge auf dem Mainboard (siehe auch im Wiki, das gerade im Aufbau ist). Insofern: Puhhhhh, geht noch, und lässt sich noch (alternativ) steuern. Fernbedienung samt RS485 auf dem Mainboard sind vermutlich Schrott, da I/O's durch die 24V hin sind ...

                    /tom

                    Kommentar


                      #11
                      Für die Mitbastler und Interessierten (insbesondere die, bei denen mittlerweile die Fernbedienung an der Wand das Zeitliche gesegnet hat):

                      Ich habe gestern mal wieder ein neues Release der Integration freigegeben. Es wurde zwar auch viel 'unter der Motorhaube' geschraubt, aber für den Endanwender gibt es diesmal hauptsächlich Neuerungen auf dem Dashboard:
                      • Eine 'Softcontrol', die 1:1 wie die originale Fernbedienung an der Wand aussieht und genau so bedient wird (alle Buttons sind (inter-)aktiv). Diese kann auch z.B. auf dem Smartphone dargestellt werden (ja, richtig gelesen); Leute mit kaputter FB bzw. defektem Display sind also wieder 'im Spiel', und zwar vom Sofa aus.
                        yy1 - Copy.png
                      • Eine zweite 'Softcontrol' ermöglicht die schnelle Umschaltung der Lüftungsstufe und implementiert eine vollständige Stoß- und Kaminlüftung (umschaltbar); ich überlege derzeit, ob/wie ich diese mit der ersten Softcontrol zu einem einzigen kompletten 'Steuergerät' zusammenfassen kann.
                        yy4.png
                      • Es wird jetzt anhand der Gebäudedaten, Ventilatorkurven etc. eine individuelle Luftmengenberechnung durchgeführt, die auch grafisch dargestellt werden kann (Tabelle + Gauge).
                        b.pnga.png​​
                      Die Integration ist mittlerweile bei HACS als 'default' gelistet - sie taucht also bei der HACS Suche nach 'Helios' oder 'Vallox' auf und muss nicht mehr umständlich als 'custom repository' installiert werden. Das zugehörige Wiki enthält sehr ausführliche Beschreibungen und in der 'Tinkerers Corner' auch Hinweise zu Reparaturen und Wartungen, z.B. Austausch von summenden / lauten Kugellagern.

                      Viel Spaß - Fragen oder Unklarheiten klären wir gern direkt im Repo in den Discussions.

                      /tom
                      Zuletzt geändert von Tom Bombadil; 23.06.2025, 09:55.

                      Kommentar


                        #12
                        Hallo Tom, erstmal vielen Dank für Deine Arbeit. Das ist genau das, was ich suche. Leider funktioniert es bei mir nicht. Ich hatte auch schon auf Github geschrieben. Es kommen bei mir in HA einfach keine Daten an, obwohl ich alles wie beschrieben installiert habe. Ich bin vollkommen ratlos und hoffe, dass Du eine Idee hast, woran es liegen könnte.

                        HA (neuste Version) auf Synology NAS
                        Helios KWL 500 Pro
                        PUSR DR164 Wifi

                        Im Protokoll von HA finde ich nur : Setup of helios_vallox_ventilation is taking over 10 seconds.

                        Ich würde mich über Hilfe/Unterstützung sehr freuen.

                        Kommentar


                          #13
                          Wie schon auf Git geschrieben - es ist sonderbar, dass in den beiden einzigen Fällen, wo es bisher nicht funktioniert hat, der USR DR164 im Spiel ist.

                          Und das Verhalten ist ebenfalls identisch - der Paketsniffer läuft und schreibt/liest sauber Protokolle zur/von der KWL, die Integration meldet aber gleich beim Start 'Connection failed: Timed out'. Dabei bauen beide auf fast die gleiche Art und Weise eine Socketverbindung zum USR auf, die Integration bekommt nur ein paar mehr Einstellungen für den Socket:

                          sniffer.py (funktioniert):
                          Code:
                          def connect_and_receive(ip, port):
                              # make connection to device and start reveiving data
                              try:
                                  client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
                                  client_socket.connect((ip, port))
                          vent_functions.py (die Integration - da, wo es beim Verbindungsaufbau knallt):
                          Code:
                              # connect to bus upon start and re-connect if needed
                              def _connect(self):
                                  [...]
                                  try:
                                      self._socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
                                      self._socket.settimeout(1.5)
                                      self._socket.connect((self._ip, self._port))
                                      self._socket.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
                                      self._socket.setsockopt(socket.SOL_SOCKET, socket.SO_RCVBUF, 1024)
                                      self._socket.setsockopt(socket.SOL_TCP, socket.TCP_USER_TIMEOUT, 1500)
                                      self._socket.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
                          Du kannst mal in <ha-root>/custom_components/helios_vallox_ventilation/vent_functions.py das 'self._socket.settimeout' von 1.5 auf 5 oder 10 erhöhen, aber ich fürchte, das wird nicht viel bringen. Spaßeshalber auch mal die 4 Zeilen mit self._socket.setsockopt löschen - danach ist es dann 1:1 der Code aus dem Sniffer (vielleicht passt die Buffergröße diesem speziellen Adapter nicht, oder die NODELAY Option).

                          Ansonsten bräuchte ich mal wie schon geschrieben die Debug-Logs, vielleicht fällt mir da was auf ...

                          /tom

                          Kommentar


                            #14
                            Hallo Tom,
                            danke für die Hinweise, das werde ich gleich mal ausprobieren.

                            Ich habe den Logg-Level gestern auf DEBUG gesetzt, aber in den Protokollen taucht bis auf

                            Logger: homeassistant.setup
                            Quelle: runner.py:154
                            Erstmals aufgetreten: 09:10:46 (1 Vorkommnis)
                            Zuletzt protokolliert: 09:10:46
                            Setup of helios_vallox_ventilation is taking over 10 seconds.

                            gar nichts auf. Läuft die Integration daher vielleicht gar nicht?
                            Ich bin jetzt nicht so der Profi in HA und vielleicht bin ich auch einfach nur zu blöd die Protokolle abzufragen.

                            Ich gehe über

                            ​Einstellungen/System/Protokolle.

                            Gruß

                            Kommentar


                              #15
                              Siehe hier im zugehörigen Thread auf Github, da hatte ich das beschrieben. Die Logeinträge findest Du dann in <ha-root>/home-assistant.log:

                              image.png

                              (Der Screenshot ist aus dem VS Code Add-on, das ich jedem empfehle - falls Du das nicht hast, sieht Dein Editor ggf. anders aus.)

                              Du solltest aber erst mal wie oben beschrieben die Datei editieren, das war's vielleicht schon.

                              Viel Erfolg, lass von Dir hören!

                              /tom

                              Kommentar

                              Lädt...
                              X