[Modul] Zigbee2MQTT

Hi,
die 100 haben historische Gründe :grin:

Ralf

1 „Gefällt mir“

Hatte das gleiche Problem mit einem RaspberryPi mit Zigbee2MQTT und IPS wie Ralf. Device war bei Zigbee2MQTT eingebunden. Aber nichts in IPS zu sehen. Daten flossen in den Logs. Diese Einstellung bei Zigbee2MQTT auf dem RaspberryPi war die Lösung. DANKE <3

Hallo zusammen,

ich hatte heute das Problem, dass Symcon bei mir nicht mehr starten wollte.

Nach einer Weile habe ich folgende Meldung im Log entdeckt:

Cannot find interface for instance #42621 in /var/lib/symcon/modules/.store/info.schnittcher.ips.zigbee2mqtt/libs/MQTTHelper.php on line 55

Ich verwende die aktuelle Beta aus dem Module store.

ich habe daraufhin das Modul nach /tmp verschoben, konnte dann Symcon starten, und habe im Anschluss das Modul wieder aus dem Store nachinstalliert, diesmal bin ich aber bei stable geblieben.

Ich habe mir die Zeile angeschaut und kann nicht erkennen, was daran komisch wäre.

Ich werde morgen nochmal auf die beta gehen und den Neustart nochmal auslösen.

Viele Grüße

Hast Du mal bei der Instanz geschaut, welches Interface da hinterlegt ist?
Wenn es eine Zigbee-Device ist, mal schauen, ob das Gateway richtig eingestellt war.

Gruß
Burkhard

Hallo,
ich bin gerade dabei, mich mit dem Thema „power_on_behavior“ meiner Zigbee Geräte zu beschäftigen. Es gabe letztes Jahr mal einen Stromausfall, und der war natürlich genau in meinem Urlaub. Es war zwar nicht komplett Festbeleuchtung bei uns, aber schon einige blöde Lampen an.

Die Variable gibt es nicht bei allen Lampen, aber auf der Zigbee2MQTT Seite zum jeweiligen Device ist das gut beschrieben.

Wenn ich nun mit folgenden Script den Wert setze

$id = 28550;

unset($PayloadSet);
$PayloadSet['power_on_behavior'] = "off";
$PayloadJSON = json_encode($PayloadSet, JSON_UNESCAPED_SLASHES);

echo Z2M_Command($id, 'set', $PayloadJSON);

echo Z2M_getDeviceInfo($id);

geben die Befehle leider keinen Rückgabewert. Aber ich sehe dann am jeweiligen Device zwei neue Variablen: „Einschaltverhalten“ und „Power on behavior L1“

Auf der Zigbee2MQTT Seite sieht das im Devicestatus wie folgt aus:

{
    "linkquality": 63,
    "state": "OFF",
    "update": {
        "state": "idle"
    },
    "device": {
        "applicationVersion": 17,
        "dateCode": "20211025",
        "friendlyName": "0_3_Hobbyraum_PrusaMini_Licht",
        "hardwareVersion": 1,
        "ieeeAddr": "0xb4e3f9fffec8956a",
        "manufacturerID": 4476,
        "manufacturerName": "IKEA of Sweden",
        "model": "ICPSHC24-10EU-IL-1",
        "networkAddress": 59921,
        "powerSource": "Mains (single phase)",
        "softwareBuildID": "2.3.086",
        "stackVersion": 87,
        "type": "Router",
        "zclVersion": 1
    },
    "power_on_behavior": "off"
}

Aus meiner Sicht wird also die Variable mit „Power on behavior L1“ zuviel angelegt, die Variable "Einschaltverhalten wäre ja perfekt übersetzt.

Kann das sein, oder mach ich etwas falsch.

Gruß
Christian

Hallo,
wie setzt man denn den Friendly name?
Ich habe da nur die IEEE Nummer und im Z2M kann ich das Feld nicht editieren.
Bild
Ich dachte das sei die richtige Stelle.

Gruß Michael

Bilder sagen mehr als Worte…

Kannst Du bei dem Ikea Trafo mal nen Debug machen und hier rein stellen?

Dazu das Device aufrufen, Debug aktivieren und Geräteeigenschaften abrufen.

Gruß
Burkhard

Hallo,

hier der dump.

dump (2).txt|atachment (21,1 KB)

Gruß
Christian

Kannst Du mal bitte beide Variablen löschen und dann die Geräteeigenschaften erneut abrufen? Der Debug ist sauber, denke, da war irgendwo noch was altes verklemmt.

Gruß
Burkhard

Vielen Dank, das war zu einfach :joy:

Man kann aber wohl nicht vermeiden, das dann eine neue Instanz angelegt wird?
Also sollte man das wohl gleich am Anfang machen.

Du kannst auch zusätzlich in der Instanz den MQTT Topic anpassen, so wie den Namen im Z2M, dann muss du keine IDs ändern.

Das ist ja das genial an Zigbee und MQTT. Wenn mal ein Gerät kaputt geht, tauscht man es einfach aus und gibt in Z2M den Namen des alten Gerätes und fertig. Da muss in Symcon nichts angepasst werden, da das Topic bleibt.

Wenn der „friendly Name“ im Nachgang geändert wird, muss nur bei der Device in Symcon das Topic angepasst werden und gut ist.

Gruß
Burkhard

Ok, das gucke ich mir morgen dann mal genauer an.
Danke für die Infos.

Hallo @KaiS ,

kannst du die Codezeile
$Payload[‚occupied_heating_setpoint‘] = number_format($Value, 2, ‚.‘, ‚‘);
bitte wieder in deinen Code einbauen? Das war mal drin, ist aber aktuell wieder rausgeflogen, sodass ich meinen Heizkörperthermostate z.Zt. nur Integer Werte übergeben kann.

Danke und VG Georg

Hallo Burkhard,

jetzt hat die Variable einen neuen Namen, aber keinen Wert:

Den Namen finde ich ja gut, aber der gesetzte Wert wird nicht angezeigt. Hier ein Auszug des Status aus zigbee2mqtt:

{
    "linkquality": 63,
    "power_on_behavior": "off",
    "state": "OFF",
    "update": {
        "state": "idle"
    }
}

Gruß
Christian

Moin, kannst Du mal schauen, ob „Einschaltverhalten nach Stromausfall“ einen Ident „Z2M_PowerOnBehavior“ hat?

und ob das Profil „Z2M.power_on_behavior.420a27e2“ hinterlegt ist bei der Variable?

Gruß
Burkhard

ja und ja

Noch einen Versuch, kannst Du im Z2M Frontend mal den Power_on_behavior ändern?

Gruß
Burkhard