Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Script zum Steuern von Blauberg Wohnrauzmlüftern

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Script zum Steuern von Blauberg Wohnrauzmlüftern

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

      Servus zusammen,

      ich arbeite gerade an einem Script mit dem ich meine Wohnraumlüfter von Blauberg steuern kann. Ich habe in jedem Raum in meinem Haus so einen Lüfter. Jeder dieser Lüfter hängt über WLAN im Netzwerk und kann über eine (absolut gruselige) App gesteuert werden. Die Lüfter lassen sich aber auch über UDP steuern und abfragen.

      Ich habe das Script soweit, dass ich die Funktionen schreibend steuern kann, also ich kann jedem Lüfter sagen, auf welcher Lüftungsstufe er laufen soll und in welchem Modus (Wärmerückgewinnung, Abluft, Zuluft).

      Bis jetzt hatte ich das alles in Node Red, aber ich ziehe gerade alles was ich in Node Red hatte nach IOBroker um.

      Mein größtes Problem ist die UDP Kommunikation an sich. Wie gesagt habe ich es schon hinbekommen einen UDP Socket zu öffnen und darüber eine Nachricht an den Lüfter zu schicken. Nun kann ich die Lüfter aber auch über die App steuern oder mit den Knöpfen die sich direkt am Lüfter befinden. Wenn ich das tue, dann sind meine Datenpunkte im IOBroker aber nicht mehr synchron mit dem Lüfterstatus. Nun ist es so, dass der Lüfter auch jedesmal über UDP eine Nachricht schickt, wenn sich was am Lüfter ändert und genau darum geht es mir: Wie fange ich diese UDP Nachrichten ab? Ich habe mal mit Wireshark auf meinem WLAN gelauscht um zu schauen was der Lüfter so treibt. Das sieht dann so aus:

      46454f21-e983-48c5-8302-acd0716101ca-image.png

      Die 192.168.10.60 ist die IP des Lüfters. Scheinbar pollt der Lüfter einmal pro Sekunde seinen Status per UDP. Ich versuche das mit folgendem Script abzufangen:

      var PORT = 4001;
      var dgram = require('dgram');
      var client = dgram.createSocket({ type: 'udp4', reuseAddr: true })
      
      client.on('listening', function () {
          var address = client.address();
          console.log('UDP Client listening on ' + address.address + ":" + address.port);
          client.setBroadcast(true)
          client.setMulticastTTL(128);
          client.addMembership('0.0.0.0');
          
      });
      
      client.on('message', function (message, remote) {
          console.log('From: ' + remote.address + ':' + remote.port + ' - ' + message);
      });
      
      client.bind(PORT);
      

      Ich bekomme aber einen Fehler:
      20c15888-4ba2-41d4-bed1-39def15642bf-image.png

      Wie mache ich es richtig?

      Falls es eine Rolle spielt: Mein IOBroker läuft in einer UbuntuVM. Der Host ist eine Synology Diskstation RS1221.

      mickym D 2 Replies Last reply Reply Quote 0
      • mickym
        mickym Most Active @diplinge last edited by mickym

        @diplinge Warum nutzt Du nicht den NodeRed Adapter im iobroker? NodeRed ist sogut in den iobroker integriert, dass ich dies als Logikmaschine nutze bevor ich Programmcode schreibe.

        D 1 Reply Last reply Reply Quote 0
        • D
          diplinge @mickym last edited by

          @mickym Ich habe über 20 Jahre Java entwickelt und sehe es genau anders herum. Ich schreibe lieber gut dokumentierten Code statt hunderte Kästchen zusammenzuklicken über die ich wenig Kontrolle habe und bei denen dann keiner mehr richtig durchblickt. Aus dem gleichen Grund nutze ich im IOBroker auch kein Blockly.

          1 Reply Last reply Reply Quote 0
          • D
            diplinge @diplinge last edited by

            OK, mal ne blöde Frage: Wird der UDP Traffic der über WLAN von den Lüftern kommt überhaupt ins LAN weitergeleitet? Bei meinem Wireshark musste ich dafür nämlich erst mein Notebook über WLAN verbinden, damit er den WLAN Traffic mithören konnte. Über den LAN Adapter kam nämlich nichts. Ist doch eigentlich alles in einem Netzwerk oder? Mit Netzwerken kenne ich mich leider nicht so gut aus.

            1 Reply Last reply Reply Quote 0
            • I
              insect last edited by

              Hi @diplinge!
              Da ich nun auch ein paar Blauberg reversierende Einzelraumlüftungsanlagen Vento Expert A50-1 S10 W V.2 und Expert DUO A30-1 S10 W V.2 eingebaut habe, bin ich auch an einer Integration in iobroker interessiert.

              Ich möchte Dir ein paar Links geben, die Dir evtl. weiterhelfen oder in die richtige Richtung schubsen könnten.
              Ich bin gerne bereit, Entwicklungsstände zu testen. Kleinere Anpassungen zu Skripts traue ich mir auch zu.

              Es gibt eine Adapteranfrage bei den Adapter-Requests auf github.
              Da werden schon einige Dinge genannt. Die Links funktionieren aber nicht alle...

              Kennst Du das blaubergventojs? Vielleicht kannst Du was damit anfangen.

              Auch hier wurde schonmal was mit JS gemacht, aber wohl leider nicht bis zum Ende?!?
              Es ist kein Adapter für iobroker, auch wenn es so scheint.

              Wenn Du mit JS nicht weiterkommst, könnte man es mit Python probieren: pyEcoventV2

              Mit Java wurde auch schon was umgesetzt. vento-remote-arm32v6

              Und zum Schluss noch was für mqtt vent_to_mqtt

              Viele Grüße,
              insect

              1 Reply Last reply Reply Quote 0
              • D
                diplinge last edited by

                Servus,

                ich habe nun einen funktionierenden Adapter gebaut, bzw. aktuell bin ich noch an der Entwicklung. Ihr findet es in meinem Github Repository: https://github.com/intellicasa/ioBroker.blauberg-ventilation

                Es können bereits einzelne Werte geändert werden und der Adapter fragt alle konfigurierten Lüfter alle x Sekunden nach den aktuellen Werten.

                Ich werde das in den nächsten Tagen noch vervollständigen und hoffe, dass ich spätestens bis nächste Woche eine Releaseversion im IOBroker Repo habe

                Grüße,
                Daniel

                Peoples 2 Replies Last reply Reply Quote 0
                • Peoples
                  Peoples @diplinge last edited by

                  @diplinge
                  Hi,
                  Ich habe mir den Adapter installiert, alles eingetragen aber die Lüfter werden nicht gefunden. Im Debug kommt auch kein Fehler.

                  Ich habe diesen Lüfter:
                  VENTO Expert A50-1 S10 W V.2

                  1 Reply Last reply Reply Quote 0
                  • Peoples
                    Peoples @diplinge last edited by

                    @diplinge

                    ich habe den Adapter mittlerweile schon einige Zeit in Betrieb und immer beim schalten erhalte ich einen Fehler mit "Parameter:1".

                    Ebenfalls scheint es so als wäre der Typ einiger States nicht (mehr) richtig. Wenn man bspw. ON/OFF auf 1 setzt, geht der Lüfter wie gewünscht an, kurz darauf steht aber true im Datenpunkt. Ich gehe davon aus dass der Adapter mit dem Gerät synct und dort dann true steht was wiederum ausgelesen wird.
                    Der State boolean erzeugt dann einen Fehler, gleiches habe ich bei RMP des ersten Lüfters.

                    Hier mal ein Log-Auszug:

                    2024-05-29 09:11:50.749 - silly: blauberg-ventilation.0 (202429) States user redis pmessage blauberg-ventilation.0.vents.*/blauberg-ventilation.0.vents.wohnzimmer.control.On/Off:{"val":1,"ack":false,"ts":1716966710747,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1716966710747}
                    2024-05-29 09:11:50.749 - debug: blauberg-ventilation.0 (202429) ID: vents.wohnzimmer.control.On/Off
                    2024-05-29 09:11:50.749 - error: blauberg-ventilation.0 (202429) Parameter: 1
                    2024-05-29 09:11:55.314 - info: blauberg-ventilation.0 (202429) State value to set for "blauberg-ventilation.0.vents.wohnzimmer.control.On/Off" has to be type "number" but received type "boolean"
                    

                    Issue auf Git ist erstellt

                    Zu Letzt noch die Frage ob du den Adapter noch erweitern wirst, um die Funktionen die du in der "main.js" auf Git aus kommentiert hast?

                    1 Reply Last reply Reply Quote 0
                    • N-b-dy
                      N-b-dy Developer last edited by

                      Auch wenn das ein altes Thema ist, ggf. finden sich hier gewillte Tester 🙂 https://forum.iobroker.net/topic/78967/test-adapter-oxxify-fan-control-v0-0-x-github-latest

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

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      568
                      Online

                      31.9k
                      Users

                      80.2k
                      Topics

                      1.3m
                      Posts

                      5
                      9
                      596
                      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