Navigation

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

    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

    • Profile
    • Following 0
    • Followers 0
    • Topics 0
    • Posts 13
    • Best 2
    • Groups 1

    greatluis

    @greatluis

    2
    Reputation
    41
    Profile views
    13
    Posts
    0
    Followers
    0
    Following
    Joined Last Online
    Location 8330 Feldbach

    greatluis Follow
    Starter

    Best posts made by greatluis

    • RE: Gibt es einen Zeit/Datums-Adapter oder Script?

      Dir fehlt in Zeile 25 eine Deklaration der Variable logging, deswegen meckert das Script.
      Die Variable dient zum ein und ausschalten des Log's

      /* System Datuminfo
      
      Skript erzeugt Variablen für Datum, Tag, Monat, Jahr, KW, Quartal
      
      KW1 = 1. Donnerstag im Jahr
      1. Wochentag ist Montag
      Feiertage aus Adapter iobroker.feiertage
      
      25.02.2016 erstellt von pix
      28.04.2016 Prüft ob KW gerade oder ungerade
                 Wochentag als Zahl (deutsches System: Mo = 1, So = 7)
      28.05.2016 parseFloat bei toFixed-Werten zugefügt (nach Variablen Typ Warnung)
                 Variablen Typ einiger Objekte geändert
      30.09.2018 Optimierung im Code
      
      todo Adapter:
      Grundunterscheidung im Objektbaum: Deutsch (de)/Englisch (en)
      Jahreszeiten
      
      Beispieldatum Donnerstag, 28. Apil 2016
      */
      
      const path = "javascript." + instance + ".Kalender.Datuminfo.de"; // Pfad zu Objekten im javascript-Adapter
      const fC = false; // Objekte neu erstellen?
      const logging = true;
      
      posted in ioBroker Allgemein
      greatluis
      greatluis
    • RE: Hue über KNX-Taster dimmen?

      @Schrubbel

      Hallo !

      Habe bei mir folgendes Script am laufen.
      Im unteren Teil werden noch die Status-Adressen befüllt.

      Das Script habe ich selber mal im Forum gefunden. Nach dem Update vom KNX-Adapter von Version 0.9 auf über 1.0 musste ich selber ewig rumprobieren, weil sich die Auswertung des Datenpunktes 3.007 geändert hat.

      Hoffe du kannst damit was anfangen

      /* ####### Relatives Dimmen von Philips Hue-Lampe oder Gruppe über KNX-Taster #######
         #
         # Skript reagiert auf Tastendruck eines KNX-Tasters, Auswertung einer Gruppe mit
         # DPT-3 (relatives Dimmen).Es wird mit dem Tastendruck hoch bzw. runtergedimmt
         # in beliebigen Schritten und Geschwindigkeit. Mit dem Loslassen der Taste wird
         # der Vorgang gestoppt.
         #
         # Erstellt von A.Kos am 07.12.2017
         ################################################################################## */
      
      // Channel-IDs
      var idTaster =      "knx.0.virtuelle_Dpt.dimmen.Terrasse_Wand_dimmen"/*Terrasse Wand dimmen*/;  // ID der KNX-Gruppe mit DPT-3, z.B. Tastenwippe oder Tastenpaar
      var idHueLampe =    "hue.0.Philips_hue.Terrasse"/*Philips_hue.Terrasse*/;  // ID der Hue-Lampe oder Gruppe
      
      // Konstante zum Anpassen des Dimm-Verhaltens
      const REL_DIM_VAL = 20;     // Schrittweite beim relativen Dimmen (Achtung, das ist (bei Hue) KEIN %-Wert)
      const ABS_DIM_MAX = 254;    // Maximaler Absolutwert (Hue: 254)
      const ABS_DIM_MIN = 1;      // Minimaler Absolutwert (0)
      const DIM_DELAY = 500;     // Zeit im ms für die einzelnen Dimm-Schritte
      
      
      
      
      
      // Globale Variablen
      var BOOL_stop = 0;
      var emergency_counter = 1;
      
      
      // DimDown Runter-Dimmen
      on({id: idTaster, change: "any"} , function(obj) {
          //console.log(obj.state.val);
         // console.log(obj.state.val.decr_incr);
          if (obj.state.val == '0,1') {
              BOOL_stop = 0;
              emergency_counter = 0;
              dimdown(REL_DIM_VAL);
          }
      });
      
      // DimUp Rauf-Dimmen
      on({id: idTaster, change: "any"} , function(obj) {
          //console.log(obj.state.val);
          //console.log(obj.state.val.decr_incr);
           if (obj.state.val == '1,1') {
              BOOL_stop = 0
              emergency_counter = 0;
              dimup(REL_DIM_VAL);
          }
      });
      
      
      function dimup(a) {
          if (BOOL_stop || getState(idHueLampe+".bri").val >= ABS_DIM_MAX || emergency_counter >= 100) {
              console.log("Ende");
              BOOL_stop = 0;
              return 0;
          }
          
          if (getState(idHueLampe+".bri").val <= (ABS_DIM_MAX-REL_DIM_VAL)) { 
              console.log("erhöhe um " + a + " auf den Wert " + (getState(idHueLampe+".bri").val + a) + " (" + emergency_counter + ")");
              setState(idHueLampe+".bri", getState(idHueLampe+".bri").val + a);
              setTimeout(function() {
                  emergency_counter++;
                  dimup(REL_DIM_VAL);
              }, DIM_DELAY);    
              
          } else {
              console.log("ELSE: erhöhe um " + (ABS_DIM_MAX-getState(idHueLampe+".bri").val) + " auf den Wert " + ABS_DIM_MAX + " (" + emergency_counter + ")");
              setState(idHueLampe+".bri",ABS_DIM_MAX);
              emergency_counter++;
              return 0;
          }
      }
      
      function dimdown(a) {
          if (BOOL_stop || getState(idHueLampe+".bri").val <= ABS_DIM_MIN || emergency_counter >= 100) {
              console.log("Ende");
              BOOL_stop = 0;
              return 0;
          }
          
          if (getState(idHueLampe+".bri").val >= (ABS_DIM_MIN+REL_DIM_VAL)) { 
              console.log("verringere um " + a + " auf den Wert " + (getState(idHueLampe+".bri").val - a) + " (" + emergency_counter + ")");
              setState(idHueLampe+".bri", getState(idHueLampe+".bri").val - a);
              setTimeout(function() {
                  emergency_counter++;
                  dimdown(REL_DIM_VAL);
              }, DIM_DELAY);    
              
          } else {
              console.log("ELSE: verringere um " + (ABS_DIM_MIN+getState(idHueLampe+".bri").val) + " auf den Wert " + ABS_DIM_MIN + " (" + emergency_counter + ")");
              setState(idHueLampe+".bri",ABS_DIM_MIN);
              emergency_counter++;
              return 0;
          }
      }
      
      // STOP
      on({id: idTaster, change: "any"} , function(obj) {
          if (obj.state.val == '0,0' || obj.state.val == '1,0' ) {
              // Info zum Testen: Diese Code-Zeile kann in der Praxis nicht erreicht werden,
              // ohne vorher die Funktion dimup oder dimdown ausgeführt zu haben. D.h. BOOL_stop ist vorher immer 0;
              BOOL_stop = 1;
          }
      });
      
      // HUE-Lampe über GA schalten, Wert für HUE-Lampe wird aus eigenem Datenpunkt geholt  
      
      on({id: 'knx.0.virtuelle_Dpt.schalten.Terrasse_Wand_schalten', change: "any"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if ((obj.state ? obj.state.val : "") == true) {
          setState("hue.0.Philips_hue.Terrasse.command"/*Philips_hue.Terrasse.command*/,getState("javascript.0.Beleuchtung.HUE_Datenpunkte.Ein_Status_Terrasse").val);
        } else if ((obj.state ? obj.state.val : "") == false) {
          setStateDelayed("hue.0.Philips_hue.Terrasse.on"/*Philips_hue.Terrasse.on*/, false, 100, true);
        }
      });
      
      // Status-Adresse für Dimmwert in % schreiben wenn sich der Dimmwert geändert hat
      
      on({id: 'hue.0.Philips_hue.Terrasse.level', change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        setState("knx.0.virtuelle_Dpt.Dimmwert_Status.Terrasse_Wand_Dimmwert_Status"/*Terrasse Wand Dimmwert Status*/, parseFloat((obj.state ? obj.state.val : "")));
      });
      
      // Status_Adresse für EIN/AUS schreiben wenn Hue über App oder sonstiges eingeschaltet wurde
      
      on({id: 'hue.0.Philips_hue.Terrasse.on', change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if ((obj.state ? obj.state.val : "") == true) {
          setState("knx.0.virtuelle_Dpt.Status.Terrasse_Wand_Status"/*Terrasse Wand Status*/, true);
        } else if ((obj.state ? obj.state.val : "") == false) {
          setState("knx.0.virtuelle_Dpt.Status.Terrasse_Wand_Status"/*Terrasse Wand Status*/, false);
        }
      });
      

      LG

      posted in Node-Red
      greatluis
      greatluis

    Latest posts made by greatluis

    • RE: Gibt es einen Zeit/Datums-Adapter oder Script?

      Dir fehlt in Zeile 25 eine Deklaration der Variable logging, deswegen meckert das Script.
      Die Variable dient zum ein und ausschalten des Log's

      /* System Datuminfo
      
      Skript erzeugt Variablen für Datum, Tag, Monat, Jahr, KW, Quartal
      
      KW1 = 1. Donnerstag im Jahr
      1. Wochentag ist Montag
      Feiertage aus Adapter iobroker.feiertage
      
      25.02.2016 erstellt von pix
      28.04.2016 Prüft ob KW gerade oder ungerade
                 Wochentag als Zahl (deutsches System: Mo = 1, So = 7)
      28.05.2016 parseFloat bei toFixed-Werten zugefügt (nach Variablen Typ Warnung)
                 Variablen Typ einiger Objekte geändert
      30.09.2018 Optimierung im Code
      
      todo Adapter:
      Grundunterscheidung im Objektbaum: Deutsch (de)/Englisch (en)
      Jahreszeiten
      
      Beispieldatum Donnerstag, 28. Apil 2016
      */
      
      const path = "javascript." + instance + ".Kalender.Datuminfo.de"; // Pfad zu Objekten im javascript-Adapter
      const fC = false; // Objekte neu erstellen?
      const logging = true;
      
      posted in ioBroker Allgemein
      greatluis
      greatluis
    • RE: Kleiner Erfahrungsbericht - cc2531, cc2530

      @greatluis sagte in Kleiner Erfahrungsbericht - cc2531, cc2530:

      @capitaenz Dem kann ich nur zustimmen 👍

      Seitdem ich den Stick betreibe hab ich nach ewigen Problemen mit rund 30 Xiaomi-Sensoren endlich keine mehr.

      posted in ioBroker Allgemein
      greatluis
      greatluis
    • RE: Kleiner Erfahrungsbericht - cc2531, cc2530

      @capitaenz Dem kann ich nur zustimmen 👍

      posted in ioBroker Allgemein
      greatluis
      greatluis
    • RE: Hue über KNX-Taster dimmen?

      Freut mich das es klappt

      Den Rest bekommst du bestimmt auch noch hin.

      PS: Das Script kann abgeändert auch zur Lautstärke-Regelung benutzt werden 😉

      posted in Node-Red
      greatluis
      greatluis
    • RE: Hue über KNX-Taster dimmen?

      Hallo

      Bei den Channel-ID's musst du den Datenpunkt von der Hue Lampe oder Gruppe und dem Knx Taster eintragen

      Anmerkung 2019-04-24 132237.jpg

      Anmerkung 2019-04-24 132640.jpg

      wobei der Teil am Anfang für das dimmen und der untere Teil für das ein/aus schalten und die Rückmeldung auf den Bus zuständig ist
      und vielleicht nochmals schauen ob du überall deine DP richtig eingetragen hast ?

      posted in Node-Red
      greatluis
      greatluis
    • RE: Hue über KNX-Taster dimmen?

      Um Scripte auszuführen musst du vorher den Javascript-Adapter installieren. Mehr dazu findest du bestimmt online, jetzt alles aufzuzählen wäre ein wenig viel 😉

      die virtuellen DP hab ich in der ETS so benannt damit ich gleich sehe das es ein Gerät ist welches nicht physikalisch am Bus hängt.

      Der Teil :

      getState("javascript.0.Beleuchtung.HUE_Datenpunkte.Ein_Status_Terrasse").val)
      

      ist ein Datenpunkt in welchem der Wert steht mit welchem die HUE Lampe eingeschaltet werden soll. Dies ist ein selbst erstellter Datenpunkt vom Typ string mit folgendem Inhalt

      {"on":true,"ct":5150,"level":100,"transitiontime":3}
      

      die Lampe wird mit einer Farbtemperatur von 5150 auf 100% Helligkeit über eine Zeit von 3sek eingeschaltet.

      Du kannst auch ohne diese Datenpunkte arbeiten und zum Beispiel den Teil zum einschalten der HUE Lampe mit :

      setState("hue.0.Philips_hue.Terrasse.command"/*Philips_hue.Terrasse.command*/,getState("javascript.0.Beleuchtung.HUE_Datenpunkte.Ein_Status_Terrasse").val);
      

      in

      setState("hue.0.Philips_hue.Terrasse.on"/*Philips_hue.Terrasse.on*/, true);
      

      ändern und sie wird damit einfach nur eingeschaltet.

      Natürlich musst du auch noch die ganzen Datenpunkte auf deine Installation anpassen !

      LG

      posted in Node-Red
      greatluis
      greatluis
    • RE: Hue über KNX-Taster dimmen?

      @Schrubbel

      Hallo !

      Habe bei mir folgendes Script am laufen.
      Im unteren Teil werden noch die Status-Adressen befüllt.

      Das Script habe ich selber mal im Forum gefunden. Nach dem Update vom KNX-Adapter von Version 0.9 auf über 1.0 musste ich selber ewig rumprobieren, weil sich die Auswertung des Datenpunktes 3.007 geändert hat.

      Hoffe du kannst damit was anfangen

      /* ####### Relatives Dimmen von Philips Hue-Lampe oder Gruppe über KNX-Taster #######
         #
         # Skript reagiert auf Tastendruck eines KNX-Tasters, Auswertung einer Gruppe mit
         # DPT-3 (relatives Dimmen).Es wird mit dem Tastendruck hoch bzw. runtergedimmt
         # in beliebigen Schritten und Geschwindigkeit. Mit dem Loslassen der Taste wird
         # der Vorgang gestoppt.
         #
         # Erstellt von A.Kos am 07.12.2017
         ################################################################################## */
      
      // Channel-IDs
      var idTaster =      "knx.0.virtuelle_Dpt.dimmen.Terrasse_Wand_dimmen"/*Terrasse Wand dimmen*/;  // ID der KNX-Gruppe mit DPT-3, z.B. Tastenwippe oder Tastenpaar
      var idHueLampe =    "hue.0.Philips_hue.Terrasse"/*Philips_hue.Terrasse*/;  // ID der Hue-Lampe oder Gruppe
      
      // Konstante zum Anpassen des Dimm-Verhaltens
      const REL_DIM_VAL = 20;     // Schrittweite beim relativen Dimmen (Achtung, das ist (bei Hue) KEIN %-Wert)
      const ABS_DIM_MAX = 254;    // Maximaler Absolutwert (Hue: 254)
      const ABS_DIM_MIN = 1;      // Minimaler Absolutwert (0)
      const DIM_DELAY = 500;     // Zeit im ms für die einzelnen Dimm-Schritte
      
      
      
      
      
      // Globale Variablen
      var BOOL_stop = 0;
      var emergency_counter = 1;
      
      
      // DimDown Runter-Dimmen
      on({id: idTaster, change: "any"} , function(obj) {
          //console.log(obj.state.val);
         // console.log(obj.state.val.decr_incr);
          if (obj.state.val == '0,1') {
              BOOL_stop = 0;
              emergency_counter = 0;
              dimdown(REL_DIM_VAL);
          }
      });
      
      // DimUp Rauf-Dimmen
      on({id: idTaster, change: "any"} , function(obj) {
          //console.log(obj.state.val);
          //console.log(obj.state.val.decr_incr);
           if (obj.state.val == '1,1') {
              BOOL_stop = 0
              emergency_counter = 0;
              dimup(REL_DIM_VAL);
          }
      });
      
      
      function dimup(a) {
          if (BOOL_stop || getState(idHueLampe+".bri").val >= ABS_DIM_MAX || emergency_counter >= 100) {
              console.log("Ende");
              BOOL_stop = 0;
              return 0;
          }
          
          if (getState(idHueLampe+".bri").val <= (ABS_DIM_MAX-REL_DIM_VAL)) { 
              console.log("erhöhe um " + a + " auf den Wert " + (getState(idHueLampe+".bri").val + a) + " (" + emergency_counter + ")");
              setState(idHueLampe+".bri", getState(idHueLampe+".bri").val + a);
              setTimeout(function() {
                  emergency_counter++;
                  dimup(REL_DIM_VAL);
              }, DIM_DELAY);    
              
          } else {
              console.log("ELSE: erhöhe um " + (ABS_DIM_MAX-getState(idHueLampe+".bri").val) + " auf den Wert " + ABS_DIM_MAX + " (" + emergency_counter + ")");
              setState(idHueLampe+".bri",ABS_DIM_MAX);
              emergency_counter++;
              return 0;
          }
      }
      
      function dimdown(a) {
          if (BOOL_stop || getState(idHueLampe+".bri").val <= ABS_DIM_MIN || emergency_counter >= 100) {
              console.log("Ende");
              BOOL_stop = 0;
              return 0;
          }
          
          if (getState(idHueLampe+".bri").val >= (ABS_DIM_MIN+REL_DIM_VAL)) { 
              console.log("verringere um " + a + " auf den Wert " + (getState(idHueLampe+".bri").val - a) + " (" + emergency_counter + ")");
              setState(idHueLampe+".bri", getState(idHueLampe+".bri").val - a);
              setTimeout(function() {
                  emergency_counter++;
                  dimdown(REL_DIM_VAL);
              }, DIM_DELAY);    
              
          } else {
              console.log("ELSE: verringere um " + (ABS_DIM_MIN+getState(idHueLampe+".bri").val) + " auf den Wert " + ABS_DIM_MIN + " (" + emergency_counter + ")");
              setState(idHueLampe+".bri",ABS_DIM_MIN);
              emergency_counter++;
              return 0;
          }
      }
      
      // STOP
      on({id: idTaster, change: "any"} , function(obj) {
          if (obj.state.val == '0,0' || obj.state.val == '1,0' ) {
              // Info zum Testen: Diese Code-Zeile kann in der Praxis nicht erreicht werden,
              // ohne vorher die Funktion dimup oder dimdown ausgeführt zu haben. D.h. BOOL_stop ist vorher immer 0;
              BOOL_stop = 1;
          }
      });
      
      // HUE-Lampe über GA schalten, Wert für HUE-Lampe wird aus eigenem Datenpunkt geholt  
      
      on({id: 'knx.0.virtuelle_Dpt.schalten.Terrasse_Wand_schalten', change: "any"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if ((obj.state ? obj.state.val : "") == true) {
          setState("hue.0.Philips_hue.Terrasse.command"/*Philips_hue.Terrasse.command*/,getState("javascript.0.Beleuchtung.HUE_Datenpunkte.Ein_Status_Terrasse").val);
        } else if ((obj.state ? obj.state.val : "") == false) {
          setStateDelayed("hue.0.Philips_hue.Terrasse.on"/*Philips_hue.Terrasse.on*/, false, 100, true);
        }
      });
      
      // Status-Adresse für Dimmwert in % schreiben wenn sich der Dimmwert geändert hat
      
      on({id: 'hue.0.Philips_hue.Terrasse.level', change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        setState("knx.0.virtuelle_Dpt.Dimmwert_Status.Terrasse_Wand_Dimmwert_Status"/*Terrasse Wand Dimmwert Status*/, parseFloat((obj.state ? obj.state.val : "")));
      });
      
      // Status_Adresse für EIN/AUS schreiben wenn Hue über App oder sonstiges eingeschaltet wurde
      
      on({id: 'hue.0.Philips_hue.Terrasse.on', change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if ((obj.state ? obj.state.val : "") == true) {
          setState("knx.0.virtuelle_Dpt.Status.Terrasse_Wand_Status"/*Terrasse Wand Status*/, true);
        } else if ((obj.state ? obj.state.val : "") == false) {
          setState("knx.0.virtuelle_Dpt.Status.Terrasse_Wand_Status"/*Terrasse Wand Status*/, false);
        }
      });
      

      LG

      posted in Node-Red
      greatluis
      greatluis
    • RE: Google HOME funktioniert nicht und DU kannst helfen.

      1+2 erledigt

      Gesendet von meinem HTC U11 mit Tapatalk

      posted in ioBroker Allgemein
      greatluis
      greatluis
    • RE: RFlink (LOS GEHT ES ) Bestellung d.Hardware (20€) + 5€ Spende an Forum f.d. Adapter (crowdfunding like :-)

      Hätte einen kompletten RfLink abzugeben!

      Habe ihn ne zeitlang in Betrieb gehabt aktuell brauche ich ihn aber nicht mehr.

      Bei Interesse einfach melden

      Mfg greatluis

      Gesendet von meinem HTC U11 mit Tapatalk

      posted in ioBroker Allgemein
      greatluis
      greatluis
    • RE: KNX-Adapter kann nur lesen

      @greatluis:

      Also ich hab auch das Siemens N148/22 und bei mir funktioniert es mit dem schalten. Kann dir ein wenig später noch meine knxd config Posten vllt liegt es ja daran ?

      knxd 0.14.19-2

      KNXD_OPTS="-e 1.2.200 -E 1.2.201:8 -u /tmp/eib -D -T -R -S -B single -b ipt: IP von KNX Schnittstelle"

      Gesendet von meinem HTC U11 mit Tapatalk `

      posted in ioBroker Allgemein
      greatluis
      greatluis
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo