[Modul] ZigBee-DeCONZ

Ich finde es auch gut. Ich habe gleich wieder, die zwischenzeitlich ~ 100 angelegten Variablen, gelöscht.

<?php
$vars = IPS_GetVariableList();
foreach($vars as $var)
{
    If (IPS_GetObject($var)['ObjectIdent'] == 'Z2D_Reachable')
    {
        IPS_DeleteVariable($var);
    }
}

Wer aber dennoch die Variable braucht und dies bei allen bestehenden Instanzen aktivieren möchte, wird damit glücklich:

//schaltet "Zeige Erreichbarkeit" ein
$Instances = IPS_GetInstanceListByModuleID('{60F3A8DF-5953-4B9E-CB5A-EF7769E3C9FA}');
foreach ($Instances as $Instance)
{
    IPS_SetProperty($Instance,'ShowReachable', true);
    IPS_ApplyChanges($Instance);
}
1 „Gefällt mir“

Die paar Codezeilen würden sich gut im Modul machen. Eventuell mit einer Warnung, dass die Verwendung der Variablen beim Löschen nicht geprüft wird.

die paar Codezeilen kann man für die eine Anwendung auch prima in ein Script kopieren. :wink:

Ich hab mir statt dem Gardena Zeugs für die Bewässerung im hoffentlich nahen Sommer zwei Woox 701198 ZigBee Ventile geholt. Diese sind Batteriebetrieben (noch) und werden in DeconZ auch erkannt. Allerdings als Zwischenstecker. Schalten geht auch wunderbar nur den Batteriestatus bekomm ich nicht. Wobei ich jetzt nicht weiß ob das überhaupt rüber kommt. Ich denke aber schon, dass erkannt wird, dass es ein batteriebetriebenes Gerät ist.


Kann @Silberstreifen eventuell was dazu sagen, bzw. was würdest du brauchen um das wirklich herauszufinden?
Ich könnte mir aber vorstellen, das bis Sommer so umzubauen, dass ich die bieden Ventile an eine USB Stromversorgung anschließen kann. Sind ja nur 4AA Batterien drinnen. Mit den 5V aus dem USB Stecker sollte das funktionieren. Mein Vielflächenregner (braucht auch 4 Batterien) tut auch.

Edit: Ich bin nicht alleine :wink:

Gucke dir mal bitte das Debug der Instanz an. Steht da irgendetwas von Battery? Oder du schickst es mir einfach, dann gucke ich mir das an.
Grüße
Jürgen

Da kommt leider nix rüber

15.02.2022, 18:09:41 |               Sended | {"DataID":"{875B91AC-45F1-9757-30F6-BF71445B2BDB}","Buffer":"{\"command\":\"/lights/50:32:5f:ff:fe:36:1c:fc-01/state\",\"method\":\"PUT\",\"data\":\"{\\\"on\\\": false}\"}"}
15.02.2022, 18:09:42 |             Received | {"DataID":"{C51A4B94-8195-4673-B78D-04D91D52D2DD}","Buffer":"{\"e\":\"changed\",\"id\":\"28\",\"r\":\"lights\",\"state\":{\"alert\":null,\"on\":false,\"reachable\":true},\"t\":\"event\",\"uniqueid\":\"50:32:5f:ff:fe:36:1c:fc-01\"}"}

ok, wenn das alles ist, dann gibt es leider keine Batterie. Dann ist das ein DeCONZ-Thema. Eine weitere „Sensor“-Instanz gibt es nicht, oder?

Ja, denke auch, dass das bei denen liegt. Aber eh schon seit fast einem Jahr :wink:

V3.16 Neu: Unterstützung von IKEA Starkvind

die Integration von IKEA Starkvind ist als Beta jetzt verfügbar. Bitte mal um Rückmeldung, ob das alles so funktioniert.
Grüße
Jürgen

Danke.
Der Lüftermodus muss glaub ich vom Typ String sein und als Werte „off,auto,high,medium,low“ an das Gerät anliefern.

Der fanmode empfängt folgende Strings: off/auto/low/medium/high
Beim Ausführen von Befehl testen auf Lüftermodus kommt das im Debut

16.03.2022, 22:27:27 |       Request Action | No Action defined: Z2D_Fanmode

Geschwindigkeit kommt korrekt in IPS an. Lüftermodus ändert sich auch auf den korrekten Wert. Ebenso die Luftqualität.

War ein Tippfehler. Sollte jetzt gehen.

Perfekt. Danke.
Mein Vorschlag für das Profil der Qualität.


Man muss aber dazu sagen, dass es derzeit nur mit dieser DDF funktioniert, die von mir manuell erstellt wurde. Von DeconZ gibt es derzeit KEINE Beschreibung. Wenn die also was ändern, wird man möglicherweise auch am Modul was ändern müssen.
Hier meine aktuelle DDF

{
  "schema": "devcap1.schema.json",
  "manufacturername": "$MF_IKEA",
  "modelid": "STARKVIND Air purifier table",
  "product": "STARKVIND Air purifier table",
  "sleeper": false,
  "status": "Gold",
  "path": "/devices/starkvind_air_purifier_table_neu.json",
  "subdevices": [
    {
      "type": "$TYPE_AIR_QUALITY_SENSOR",
      "restapi": "/sensors",
      "uuid": [
        "$address.ext",
        "0x01",
        "0xfc7d"
      ],
      "items": [
        {
          "name": "attr/id"
        },
        {
          "name": "attr/lastannounced"
        },
        {
          "name": "attr/lastseen"
        },
        {
          "name": "attr/manufacturername"
        },
        {
          "name": "attr/modelid"
        },
        {
          "name": "attr/name"
        },
        {
          "name": "attr/swversion"
        },
        {
          "name": "attr/type"
        },
        {
          "name": "attr/uniqueid"
        },
        {
          "name": "config/controlsequence",
          "parse": {
            "at": "0x0006",
            "cl": "0xfc7d",
            "ep": 255,
            "eval": "Item.val = Attr.val",
            "fn": "zcl",
            "mf": "0x117c"
          }
        },
        {
          "name": "config/fanmode",
          "parse": {
            "at": "0x0000",
            "cl": "0x0202",
            "ep": 255,
            "eval": "Item.val = Attr.val",
            "fn": "zcl",
            "mf": "0x117c"
          }
        },
        {
          "name": "config/ledindication",
          "parse": {
            "at": "0x0003",
            "cl": "0xfc7d",
            "ep": 255,
            "eval": "Item.val = !Attr.val",
            "fn": "zcl",
            "mf": "0x117c"
          }
        },
        {
          "name": "config/locked",
          "parse": {
            "at": "0x0005",
            "cl": "0xfc7d",
            "ep": 255,
            "eval": "Item.val = Attr.val",
            "fn": "zcl",
            "mf": "0x117c"
          }
        },
        {
          "name": "config/on"
        },
        {
          "name": "config/reachable"
        },
        {
          "name": "state/airqualityppb",
          "parse": {
            "at": "0x0004",
            "cl": "0xfc7d",
            "ep": 255,
            "eval": "Item.val = Attr.val",
            "fn": "zcl",
            "mf": "0x117c"
          }
        },
        {
          "name": "state/alarm",
          "description": "Replace Filter",
          "parse": {
            "at": "0x0001",
            "cl": "0xfc7d",
            "ep": 1,
            "eval": "Item.val = Attr.val",
            "fn": "zcl",
            "mf": "0x117c"
          }
        },
        {
          "name": "state/lastupdated"
        },
        {
          "name": "state/speed",
          "parse": {
            "at": "0x0007",
            "cl": "0xfc7d",
            "ep": 255,
            "eval": "Item.val = Attr.val / 10",
            "fn": "zcl",
            "mf": "0x117c"
          }
        }
      ]
    }
  ]
}

da du das bei dir schon umgesetzt hast, ist da im Modul aktuell ja keine Not. Ich mache da erstmal nichts und warte, was da noch kommt.
Grüße
Jürgen

1 „Gefällt mir“

Ich hab in meiner DDF noch den Alarm für den Filterwechsel hinzugefügt. Eine Änderung am Modul ist nicht notwendig, das wurde automatisch übernommen.
Entsprechend hab ich meine DDF in meinem Beitrag geändert.
Gestern hab ich noch die DDF von dem jenigen bekommen, der es auch geschafft hat. Die ist nicht anders als meine. Somit werde ich das mal so lassen.

2 „Gefällt mir“

@Silberstreifen
Eine ganz andere Frage: Kann es sein, dass bei einem Gerät vom Typ „Smart Plug“ das „state/battery“ ignoriert wird? Es kommt auch im Debug nicht an, also weiß ich jetzt nicht genau, wo es verloren geht.
Ich weiß schon, dass es formal keinen Sinn macht. Aber ich hab hier zwei Woox Bewässerungsventile. Diese werden als SmartPlug erkannt. Ein/Aus funktioniert. Die haben aber Batterien. In der DeconZ GUI im Power Configuration Cluster sehe ich auch den Wert und auch beim Basic Cluster wird als Stromquelle Batterie angegeben. Ich hab mir jetzt den Ladezustand der Batterien als /state/battery selbst angelegt. Aber es kommt nicht.

Edit:
Doch es kommt rüber, wird aber nicht als Variable angelegt

17.03.2022, 13:14:10 |             Received | {"DataID":"{C51A4B94-8195-4673-B78D-04D91D52D2DD}","Buffer":"{\"e\":\"changed\",\"id\":\"37\",\"r\":\"lights\",\"state\":{\"alert\":null,\"battery\":79,\"on\":false,\"reachable\":true},\"t\":\"event\",\"uniqueid\":\"50:32:5f:ff:fe:25:ac:dc-01\"}"}

kannst Du das auch als Sensors /state/battery anlegen? Dann erscheint es auch in IPS.

Da kann man mur config oder state wählen. Habs jetzt mal testweise in config angelegt. Ändert auch nichts.
image

17.03.2022, 15:52:26 |             Received | {"DataID":"{C51A4B94-8195-4673-B78D-04D91D52D2DD}","Buffer":"{\"attr\":{\"battery\":79,\"id\":\"37\",\"lastannounced\":null,\"lastseen\":\"2022-03-17T14:52Z\",\"manufacturername\":\"_TZ3210_eymunffl\",\"modelid\":\"TS0101\",\"name\":\"Ventil Bew\u00c3\u00a4sserung Rasen\",\"swversion\":\"0xFFFFFFFF\",\"type\":\"Smart plug\",\"uniqueid\":\"50:32:5f:ff:fe:25:ac:dc-01\"},\"e\":\"changed\",\"id\":\"37\",\"r\":\"lights\",\"t\":\"event\",\"uniqueid\":\"50:32:5f:ff:fe:25:ac:dc-01\"}"}

Ich war der Meinung im state sollte es funktionieren, da dort auch das „on“ ist.

habe ich in die Beta mit aufgenommen. Mache mal bitte ein Update. Dann sollte es funktionieren.

Perfekt. Batterie kommt aus dem state/battery an. Danke.
Der Lufti funktioniert übrigens perfekt. DekonZ lieferat auch im neuesten Update noch keine DDF mit.

Hallo zusammen,
ich habe eine Steckdosenleiste von Lidl erworben.
Die wird in der Phoscon App auch eingebunden und dargestellt.
Leider kommt im Konfigurator nur eine von 3 Steckdosen zu Tage.

Was kann / soll ich machen um die fehlenden Steckdosen sichtbar zu machen

Gruß
Jan Peter