Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. ratatoesk

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    R
    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 7
    • Best 1
    • Groups 1

    ratatoesk

    @ratatoesk

    Starter

    1
    Reputation
    4
    Profile views
    7
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    ratatoesk Follow
    Starter

    Best posts made by ratatoesk

    • RE: UDPRAW von Hyperion zu IOBroker

      Oh, garnicht aufgefallen das Interesse 🙂

      Also, wie oft Hyperion die Daten sendet, kann man ja einstellen, mit 2 Datensätzen die Sekunde habe ich da gute Erfahrungen gemacht mit einem TS0505B Zigbee Controller. Wenn man darüber hinaus geht, beginnen sich die Daten, wahrscheinlich im Zigbee Adapter anzustauen, und die Farbwechsel beginnen hinterher zu hinken, bis man teil eine Minute vor schwarzem Bild warten darf, bis die LEDs aufgeholt haben. Ich weiß jetzt nicht wie der Zigbee Adapter die daten sendet, durch MQTT mit Quality of Service "At most once" würde sich das Problem lösen, und dadurch auch mehr Performance möglich sein.

      Bei 2-3 Datensätzen von Hyperion je Sekunde, sehe ich jetzt weniger einen Sinn dort noch extra die Daten zu Filtern. Auch wenn man somit vielleicht die Schreibzugriffe auf die SD Karte bissl reduziert 😅

      posted in JavaScript
      R
      ratatoesk

    Latest posts made by ratatoesk

    • RE: UDPRAW von Hyperion zu IOBroker

      @1rfsnet Hyperion sendet die Daten ja als hex Werte, die dann in rgb umgewandelt werden, und diese könntest du direkt vergleichen, und dann nach dem Set state eine halbe Sekunde pause einfügen

      posted in JavaScript
      R
      ratatoesk
    • RE: UDPRAW von Hyperion zu IOBroker

      @1rfsnet Hyperion.png

      In der Konfiguration der Aufnahme Hardware

      posted in JavaScript
      R
      ratatoesk
    • RE: UDPRAW von Hyperion zu IOBroker

      Oh, garnicht aufgefallen das Interesse 🙂

      Also, wie oft Hyperion die Daten sendet, kann man ja einstellen, mit 2 Datensätzen die Sekunde habe ich da gute Erfahrungen gemacht mit einem TS0505B Zigbee Controller. Wenn man darüber hinaus geht, beginnen sich die Daten, wahrscheinlich im Zigbee Adapter anzustauen, und die Farbwechsel beginnen hinterher zu hinken, bis man teil eine Minute vor schwarzem Bild warten darf, bis die LEDs aufgeholt haben. Ich weiß jetzt nicht wie der Zigbee Adapter die daten sendet, durch MQTT mit Quality of Service "At most once" würde sich das Problem lösen, und dadurch auch mehr Performance möglich sein.

      Bei 2-3 Datensätzen von Hyperion je Sekunde, sehe ich jetzt weniger einen Sinn dort noch extra die Daten zu Filtern. Auch wenn man somit vielleicht die Schreibzugriffe auf die SD Karte bissl reduziert 😅

      posted in JavaScript
      R
      ratatoesk
    • RE: UDPRAW von Hyperion zu IOBroker

      Script läuft jetzt nachdem ich es in eine neue datei geschrieben habe 🤷‍♂️

      Hier jetzt der Code, leider gehen nur 3-4Hz sonst kommt IoBroker nicht mehr hinterher den State zu setzen, aber für die Umgebungsbeleuchtung ausreichend.

      //UDP Socket öffnen
      const dgram = require('dgram');
      
      const socket = dgram.createSocket('udp4');
      
      //Error Handhabung
      socket.on("error", function (err) {
          log("Socket error: " + err);
          socket.close();
      });
       
      //Receive message
      socket.on('message',function(message,rinfo) {
      //Packet als HEX - Farbe setzen
         setState("Lampe.color"/*Color*/, ("#" + message.toString("hex")));
      
      //Helligkeitswerte berechnen
          var br;
          var bg;
          var bb;
          var i = "0x" +(message.toString("hex")); // 16711952
          r = (i >> 16) & 0xFF;       // or `(i & 0xFF0000) >> 16`
          g = (i >>  8) & 0xFF;      // or `(i & 0x00FF00) >>  8`
          b =  i        & 0xFF;         // or ` i & 0x0000FF       `
        br =  Math.round((r /255) *100);
        bg =  Math.round((g /255) *100);
        bb =  Math.round((b /255) *100);
      
      //Helligkeit der Intensivsten Farbe als Globale Helligkeit setzen
        if (br >= bg && br >=bb) {setState("Lampe.brightness"/*Brightness*/, br)}
        else if (bg >= bb) {setState("Lampe.brightness"/*Brightness*/, bg)}
        else {setState("Lampe.brightness"/*Brightness*/, bb)};
      
        
      
        });
       
      
      socket.on('listening', function() {
          const address = socket.address();
          log(`server listening on ${address.address}:${address.port}`);
       });
      
      
      socket.bind(5568);
      
      onStop(() => { 
          socket.close();
      });
      
      

      Klar, Licht was sich direkt mit Hyperion ansteuern lässt ist da deutlich angenehmer und Funktioniert besser, aber es gehen dank Iobroker als Schnittstelle halt alle Lampen, auch wenn die sicher auf Dauer ersetzt werden.

      posted in JavaScript
      R
      ratatoesk
    • RE: UDPRAW von Hyperion zu IOBroker

      @ratatoesk Okay, ich bin so weit gekommen... die Konsole zeigt mir jetzt die Werte in HEX an, yay... aber ich bekomme sie nicht in meinen Datenpunkt geschrieben... keine Ahnung warum nicht.

      const dgram = require('dgram');
      
      const socket = dgram.createSocket('udp4');
      
      socket.on("error", function (err) {
          log("Socket error: " + err);
          socket.close();
      });
       
      
      socket.on('message',function(message,rinfo) {
        log("recieved: " + message.toString("hex"));
        setState("javascript.0.TV-Licht.Licht_SubTV"/*Licht SubTV*/, ("#" + message.toString("hex")));
        });
       
      socket.on('listening', function() {
          const address = socket.address();
          log(`server listening on ${address.address}:${address.port}`);
       });
      
      socket.bind(5568);
      
      
      
      posted in JavaScript
      R
      ratatoesk
    • RE: UDPRAW von Hyperion zu IOBroker

      @ratatoesk Okay, habs verstanden... ich weiß nicht warum ich Hex oder Dezimal werte erwartet hatte statt ASCII...

      mhh... nur ich möchte ja im Idealfall das als Hex in einem Datenpunkt schreiben... bekomme ich auch in den nächsten 2 Wochen noch raus 🙂

      posted in JavaScript
      R
      ratatoesk
    • UDPRAW von Hyperion zu IOBroker

      Ich Grüße,

      Ich bin recht neu beim Scripting, und bin nun nach 8h rumprobieren, am ende vom meinem Latein.

      Ich habe unter meinem TV an einem Sideboard einen Zigbee LED Streifen, und möchte die Farben gerne an das TV Bild anpassen (also die Durchschnittsfarbe vom unteren Bereich).

      Die ganze Verarbeitung übernimmt Hyperion NG, und sendet die RGB Werte per UDP an meinen IoBroker
      (zumindest wenn diese Dokumentation stimmt https://git.koehlerweb.org/frodovdr/hyperion.ng/commit/6b0bf2ac90519d93e39b2fc4b05f3353471e6688?style=split)

      Nun habe ich das Script hier "ausgeliehen"
      https://forum.iobroker.net/topic/33464/gelöst-udp-listener-eaddrinuse
      um die Daten zu Empfangen.

      Was ich Empfange ist aber leider nur Quark.

      Logs.png

      und nun weiß ich nicht, warum die beiden nicht die selbe Sprache sprechen, oder nur ich nicht verstehe, was von Hyperion übertragen wird.

      Vielen dank für die Aufmerksamkeit, und hoffentlich Hilfe.

      posted in JavaScript
      R
      ratatoesk
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo