Navigation

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

    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

    C
    • Profile
    • Following 0
    • Followers 0
    • Topics 5
    • Posts 85
    • Best 4
    • Groups 1

    Chris_78

    @Chris_78

    Starter

    4
    Reputation
    53
    Profile views
    85
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Chris_78 Follow
    Starter

    Best posts made by Chris_78

    • RE: Conbee 2 Einbindung Nuc

      @Fridolin01

      Das durchreichen eines USB-Gerätes kann bei einem LXC Container problematisch sein.
      Probiere es am besten nach dieser Anleitung: link

      Ich würde dir aber empfehlen (wie opossum auch schon geschrieben hat) die deconz Software in einer eigenen VM zu installieren (und dort den Stick durchzureichen, geht direkt
      über die Proxmox GUI). So kannst du IOBroker auch weiter als LXC-Container laufen lassen.
      Im deconz-Adapter einfach die IP der neuen VM eintragen.

      posted in ioBroker Allgemein
      C
      Chris_78
    • RE: Test Adapter Z-Wave 2 (v1.7.x)

      @AlCalzone

      Du schreibst im Changelog zur 1.7.2:
      Option hinzugefügt, um die Kompatibilität mit älteren Switches zu verbessern. Ich bin nicht sicher, ob es sinnvoll ist, das global zu machen, daher erst mal als (standardmäßig ausgeschaltete) Option. Wenn diese aktiviert ist, wird targetValue bei Binary und Multilevel Switches immer mit currentValue überschrieben

      Wie wirkt sich das auf den eingeführten q (quality) Parameter aus? Triggert dieser in dem Fall das der targetValue überschrieben wird?
      Ich habe meine Skripte seit dem von change auf update (zurück) umgebaut und prüfe auf den q-Parameter was wirklich gut funktioniert.

      Kleiner Hinweis:
      Die Beschreibung unter:
      https://github.com/AlCalzone/ioBroker.zwave2/blob/master/docs/en/FAQ.md#help-all-my-scripts-trigger-after-an-adapter-restart
      enthält einen kleinen Fehler:

      Statt
      if (obj.q !== 0) return;

      müsste es doch
      if (obj.state.q !== 0) return;
      heissen.
      So läuft es jedenfalls bei mir. 🙂

      posted in Tester
      C
      Chris_78
    • RE: (gelöst) wie mit node-red-contrib-alexa-home Dimmen ?

      @HAL

      Nimm statt des "msg.bri" Wert den Wert "msg.bri_normalized". So sparst du dir die Umrechnung.
      Dieser Wert wird direkt von 0-100 umgesetzt.

      In deinem Screenshot fehlt der "msg" Eintrag vor dem payload.

      Dein Eintrag/ deine Funktion:
      var newMsg = {payload: Math.round (msg.bri *100/254)}
      return newMsg;

      sollte aus meiner Sicht so aussehen:
      msg.payload = msg.payload.bri_normalized;
      return msg;

      Sollte so funktionieren 😉

      posted in ioBroker Allgemein
      C
      Chris_78
    • RE: Test Adapter Z-Wave 2 (v1.8.x)

      @Troya said in Test Adapter Z-Wave 2 (v1.8.x):

      @Chris_78 sagte in Test Adapter Z-Wave 2 (v1.8.x):

      Klappt soweit gut. Du bräuchtest doch nur einen Alias anlegen, der die Int-Werte durchreicht (oder habe ich dich falsch verstanden?

      Was meinst du mit "Int-Werte"?
      Sorry, komme ursprünglich aus der Java Welt... 🙂
      Int = Integer = Zahl
      Hier wäre Number die richtige Wahl gewesen 🙂

      Das ist eigentlich nur eine "Kurzschreibweise" eines if-then-else Statements.
      "read": "val == '0' ? false : true" -> Falls val==0 setze false ansonsten setze true
      "write": "val == true ? 99 : 0" -> Falls value==true setze 99 ansonsten setze 0

      So kannst du einen True/False-Schalter nutzen um z.B. fixe Dimmer-Werte zu setzen -> false = 0 / true = 99

      Achso, verstanden! 😊

      posted in Tester
      C
      Chris_78

    Latest posts made by Chris_78

    • RE: Test Adapter Z-Wave 2 (v1.8.x)

      @Markus84

      Kann es sein, dass du noch die Conbee/Phoscon Software installiert hast? Diese kann den
      Port auch blockieren. Falls du diese aktuell nicht benötigst am besten mal deinstallieren.
      Oder zumindest prüfen, ob du in der Phoscon Software den Port wechseln kannst...

      Würde am besten aber erst mal deinstallieren. Falls noch benötigt vorher noch die Einstellungen sichern/exportieren... 🙂

      Nachtrag:
      Falls du den Zigbee-Adapter benutzt evtl. auch hier mal die Porteinstellungen prüfen, ob dieser nicht den gleichen Port wie der
      Z-Wave-Adapter nutzt.

      posted in Tester
      C
      Chris_78
    • RE: Test Adapter Z-Wave 2 (v1.8.x)

      @Troya said in Test Adapter Z-Wave 2 (v1.8.x):

      Da mein WAF stetig niedriger wird mit den teilweise nicht funktionierenden Nodes: Ich würde dann die problematischen Nodes mit dem alten Zwave-Adapter schalten und den Rest mit dem neuen Zwave2.
      Kann ich beide Adapter parallel laufen lassen oder kommen die sich in die Quere?

      Das klappt vermutlich nicht, da immer nur ein Adapter auf den Port/ZWave-Stick zugreifen kann.

      posted in Tester
      C
      Chris_78
    • RE: Test Adapter Z-Wave 2 (v1.8.x)

      @Troya said in Test Adapter Z-Wave 2 (v1.8.x):

      @Chris_78 sagte in Test Adapter Z-Wave 2 (v1.8.x):

      Klappt soweit gut. Du bräuchtest doch nur einen Alias anlegen, der die Int-Werte durchreicht (oder habe ich dich falsch verstanden?

      Was meinst du mit "Int-Werte"?
      Sorry, komme ursprünglich aus der Java Welt... 🙂
      Int = Integer = Zahl
      Hier wäre Number die richtige Wahl gewesen 🙂

      Das ist eigentlich nur eine "Kurzschreibweise" eines if-then-else Statements.
      "read": "val == '0' ? false : true" -> Falls val==0 setze false ansonsten setze true
      "write": "val == true ? 99 : 0" -> Falls value==true setze 99 ansonsten setze 0

      So kannst du einen True/False-Schalter nutzen um z.B. fixe Dimmer-Werte zu setzen -> false = 0 / true = 99

      Achso, verstanden! 😊

      posted in Tester
      C
      Chris_78
    • RE: Test Adapter Z-Wave 2 (v1.8.x)

      @Troya said in Test Adapter Z-Wave 2 (v1.8.x):

      @Chris_78 sagte in Test Adapter Z-Wave 2 (v1.8.x):

      @Troya

      Wie AlCalzone bereits schrieb sind Alias-Werte der richtige Weg.
      Du kannst hier unterschiedliche Read/Write Werte setzen, somit brauchst du keine speziellen Widgets/Schalter in der Vis und
      der aktuelle Status (z.B. einer Lampe) wird auch korrekt angezeigt.

      😮 😮
      Das ja geil, wusste ich nicht, danke!

      Hier mal ein Beispiel für ein Alias mit zusätzlichem Mapping von 0->false und 99-> true (kannst du aber auch weg lassen):

      Ja auch cool. Damit muss ich mich auch mal beschäftigen...
      Zum Beispiel hab ich das "Problem", dass ich den "Prozentwert"(Dimmer) eines Rolladen bei Google home nutze um ihn komplett rauf zu fahren, wie etwa:
      "Hey Google, dimme Rolladen auf 0 Prozent" - nicht sehr logisch...
      Aber manchmal möchte ich den Rolladen auch nur auf 20% stellen, daher nur der eine Alias für beides.
      Wie kann ich das mit nem zusätzlichen Mapping in einem Alias einrichten? Wohl kaum so oder?

          "states": {
            "hoch": "0",
            "runter": "99"},
      

      Glaub aber nicht, dass das so einfach geht, da ich den Trait bei Google als "Brightness" angelegt hab um die Prozentwerte durchgeben zu können.
      So sieht der Alias aus:

      {
        "type": "state",
        "common": {
          "name": "EG_Wohnzimmer Aktor RollladenEsszimmer NODE11",
          "type": "number",
          "role": "level.dimmer",
          "read": true,
          "write": true,
          "min": 0,
          "max": 99,
          "alias": {
            "id": "zwave2.0.Node_011.Multilevel_Switch.targetValue",
            "write": "(val-99) * -1",
            "read": "(val-99)  * -1"
          },
          "smartName": {
            "de": "Rollladen Esszimmer",
            "ghType": "action.devices.types.SHUTTER",
            "ghTraits": [
              "action.devices.traits.Brightness"
            ],
            "ghAttributes": "{}",
            "ghConv2GH": "",
            "ghConv2iob": ""
          },
          "custom": {
            "history.0": {
              "enabled": true,
              "changesOnly": true,
              "debounce": "1000",
              "maxLength": "500",
              "retention": "63072000",
              "changesRelogInterval": 0,
              "changesMinDelta": 0,
              "aliasId": ""
            }
          }
        },
        "from": "system.adapter.iot.0",
        "user": "system.user.admin",
        "ts": 1607683977046,
        "_id": "alias.0.EG_Wohnzimmer.Aktor.RollladenEsszimmer",
        "acl": {
          "object": 1636,
          "state": 1636,
          "owner": "system.user.admin",
          "ownerGroup": "system.group.administrator"
        },
        "native": {}
      }
      

      Für meine Rolladen nutze ich auch die Brightness-Werte per alexa. Nutze hier zu aber den NodeRed-Adapter.
      Klappt soweit gut. Du bräuchtest doch nur einen Alias anlegen, der die Int-Werte durchreicht (oder habe ich dich falsch verstanden?
      Beispiel:

      {
        "type": "state",
        "common": {
          "name": "Schlafzimmer Rollo",
          "write": true,
          "read": true,
          "role": "value",
          "desc": "per Script erstellt",
          "type": "number",
          "min": 0,
          "max": 99,
          "alias": {
            "id": {
              "read": "zwave2.0.Node_011.Multilevel_Switch.currentValue",
              "write": "zwave2.0.Node_011.Multilevel_Switch.targetValue"
            }
          }
        },
        "native": {},
        "from": "system.adapter.javascript.0",
        "user": "system.user.admin",
        "ts": 1595054558007,
        "_id": "alias.0.Schlafzimmer.Rollo",
        "acl": {
          "object": 1636,
          "state": 1636,
          "owner": "system.user.admin",
          "ownerGroup": "system.group.administrator"
        }
      }
      

      Kannst du mir den Teil aus deinem Alias erklären:

      ...
          },
            "read": "val == '0' ? false : true",
            "write": "val == true ? 99 : 0"
          },
      ...
      

      Sorry, hat gar nichts mit Zwave zu tun merk ich grad 😲
      Wenn ihr wollt lösch ich das hier und mache nen neuen Beitrag auf?

      Das ist eigentlich nur eine "Kurzschreibweise" eines if-then-else Statements.
      "read": "val == '0' ? false : true" -> Falls val==0 setze false ansonsten setze true
      "write": "val == true ? 99 : 0" -> Falls value==true setze 99 ansonsten setze 0

      So kannst du einen True/False-Schalter nutzen um z.B. fixe Dimmer-Werte zu setzen -> false = 0 / true = 99

      posted in Tester
      C
      Chris_78
    • RE: Test Adapter Z-Wave 2 (v1.8.x)

      @Troya

      Wie AlCalzone bereits schrieb sind Alias-Werte der richtige Weg.
      Du kannst hier unterschiedliche Read/Write Werte setzen, somit brauchst du keine speziellen Widgets/Schalter in der Vis und
      der aktuelle Status (z.B. einer Lampe) wird auch korrekt angezeigt.

      Hier mal ein Beispiel für ein Alias mit zusätzlichem Mapping von 0->false und 99-> true (kannst du aber auch weg lassen):

      {
        "from": "system.adapter.javascript.0",
        "user": "system.user.admin",
        "ts": 1596178459267,
        "common": {
          "name": "Buero Licht",
          "role": "value",
          "type": "boolean",
          "desc": "per Script erstellt",
          "read": true,
          "write": true,
          "alias": {
            "id": {
              "read": "zwave2.0.Node_004.Multilevel_Switch.currentValue",
              "write": "zwave2.0.Node_004.Multilevel_Switch.targetValue"
            },
            "read": "val == '0' ? false : true",
            "write": "val == true ? 99 : 0"
          },
          "states": {
            "false": "0",
            "true": "99"
          },
          "smartName": false
        },
        "native": {},
        "acl": {
          "object": 1636,
          "owner": "system.user.admin",
          "ownerGroup": "system.group.administrator",
          "state": 1636
        },
        "_id": "alias.0.Buero.Buero_Licht",
        "type": "state"
      }
      
      posted in Tester
      C
      Chris_78
    • RE: Javascript Problem nach Neustart

      @paul53

      Danke dir. Manchmal sieht man die einfachen Lösungen nicht. 🙂

      posted in Skripten / Logik
      C
      Chris_78
    • Javascript Problem nach Neustart

      Hi zusammen,

      ich habe ein paar Scripte die zeitgesteuert z.B. die Rollos steuern.

      Beispiel:

      function Wert_Stunden(x) {
          return x.slice(0, 2);
      }
      
      function Wert_Minuten(x) {
          return x.slice(3, 5);
      }
      
      function unSchedule(schedule) {
          if (schedule) {
              clearSchedule(schedule); 
              schedule = null;
          }
      }
      on({id: new RegExp('javascript\\.0\\.Rollo\\.Rollo_Schlafzimmer_Timer1_Aktiv' + "|" + 'javascript\\.0\\.Rollo\\.Rollo_Schlafzimmer_Timer1_Modus' + "|" + 'javascript\\.0\\.Rollo\\.Rollo_Schlafzimmer_Timer1_Uhrzeit' + "|" + 'javascript\\.0\\.System\\.Script_Restarter'), change: "ne"}, function (obj) {
          if (getState("javascript.0.Rollo.Rollo_Schlafzimmer_Timer1_Aktiv").val == 1) {
              var uhrzeit = getState("javascript.0.Rollo.Rollo_Schlafzimmer_Timer1_Uhrzeit").val;
              unSchedule(Cron1_Rollo_Schlafzimmer);
              Cron1_Rollo_Schlafzimmer = schedule(Wert_Minuten(uhrzeit) + ' ' + Wert_Stunden(uhrzeit) + ' * * *', function () {
                  if (getState("javascript.0.Rollo.Rollo_Schlafzimmer_Timer1_Modus").val == 'rauf') {
                      setState("zwave2.0.Node_011.Multilevel_Switch.targetValue", 0);
                  } else if (getState("javascript.0.Rollo.Rollo_Schlafzimmer_Timer1_Modus").val == 'runter') {
                      setState("zwave2.0.Node_011.Multilevel_Switch.targetValue", 99);
                  }
              });
          } else {
              unSchedule(Cron1_Rollo_Schlafzimmer);
          }
      });
      

      Die Trigger sind Datenpunkte die per VIS gesetzt werden.
      Das Problem ist, dass das Skript nach einem ioBroker oder Javascript-Adapter Neustart nicht mehr getriggert wird
      (erst wieder wenn ich einen der Trigger per VIS verändere).
      Als Behelfslösung habe ich mir einen kleines Miniscript erzeugt, dass ich nach Neustart einmal ausführe (Trigger: Script_Restarter).
      Dieses Mini-Script habe ich überall in den problematischen Scripten als Trigger hinzugefügt. Manchmal vergesse ich aber nach einem
      Neustart das Script zu starten. Dann funktioniert natürlich "nichts"...

      Bin ich der einzige der solche Probleme hat? Hat jemand eine elegantere Lösung für das Problem?
      Ich bin auch offen für allgemeine Script-Opimierungen. 🙂

      Gruß
      Christian

      posted in Skripten / Logik
      C
      Chris_78
    • RE: Test Adapter Z-Wave 2 (v1.7.x)

      @Flopsi

      Ich habe mir für alle Z-Wave Geräte jeweils ein Alias angelegt (Read-Value: currentValue / Write-Value: targetValue).

      Nach ioBroker oder ZWave-Adapter Neustart habe ich ein Skript durchlaufen lassen, das mir die Alias-Werte einmal initial wieder
      befüllt (targetValue -> currentValue).
      Hat soweit gut funktioniert. Ich habe aktuell leider noch nicht getestet, ob die Werte jetzt initial gefüllt werden. Wenn ja könnte ich
      mein Skript raus werfen. 🙂
      Im Moment bin ich ganz gut beschäftigt Steuerungen mit dem D1-Mini zu realisieren
      -> Bewegungsmelder
      -> Lichtsteuerungen mit den W2812b LED-Strips

      Ich bin echt fasziniert was mit den D1-Minis so alles geht... 😉

      posted in Tester
      C
      Chris_78
    • RE: Test Adapter Z-Wave 2 (v1.7.x)

      @AlCalzone

      Du schreibst im Changelog zur 1.7.2:
      Option hinzugefügt, um die Kompatibilität mit älteren Switches zu verbessern. Ich bin nicht sicher, ob es sinnvoll ist, das global zu machen, daher erst mal als (standardmäßig ausgeschaltete) Option. Wenn diese aktiviert ist, wird targetValue bei Binary und Multilevel Switches immer mit currentValue überschrieben

      Wie wirkt sich das auf den eingeführten q (quality) Parameter aus? Triggert dieser in dem Fall das der targetValue überschrieben wird?
      Ich habe meine Skripte seit dem von change auf update (zurück) umgebaut und prüfe auf den q-Parameter was wirklich gut funktioniert.

      Kleiner Hinweis:
      Die Beschreibung unter:
      https://github.com/AlCalzone/ioBroker.zwave2/blob/master/docs/en/FAQ.md#help-all-my-scripts-trigger-after-an-adapter-restart
      enthält einen kleinen Fehler:

      Statt
      if (obj.q !== 0) return;

      müsste es doch
      if (obj.state.q !== 0) return;
      heissen.
      So läuft es jedenfalls bei mir. 🙂

      posted in Tester
      C
      Chris_78
    • RE: Material Advanced Adapter jetzt im latest Repo

      @EdgarM

      Ich habe leider immer noch kleine Probleme mit der aktuellen Version.

      Das ListLight Widget wirkt sehr "unscharf" gegenüber den anderen Widgets. Auch hat es per Default
      eine andere Hintergrundfarbe als die anderen.
      test.png

      Beim ListTemperatureHumid Widget funktioniert die Icon-Anzeige nicht. Ist das nur bei mir so?

      posted in Tester
      C
      Chris_78
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo