NEWS
Ikea SOMRIG wird nicht unterstützt?
-
@alexhaxe Das beantwortet meine Frage nicht.
Hast du sichergestellt das neben den da angezogenen Versionen keine weiteren installiert sind - Thema "das es diese genau 1x gibt"
A.
-
find . -type d |grep zigbee ./node_modules/iobroker.zigbee ./node_modules/iobroker.zigbee/admin ./node_modules/iobroker.zigbee/admin/img ./node_modules/iobroker.zigbee/admin/i18n ./node_modules/iobroker.zigbee/admin/i18n/de ./node_modules/iobroker.zigbee/admin/i18n/en ./node_modules/iobroker.zigbee/admin/i18n/es ./node_modules/iobroker.zigbee/admin/i18n/fr ./node_modules/iobroker.zigbee/admin/i18n/it ./node_modules/iobroker.zigbee/admin/i18n/nl ./node_modules/iobroker.zigbee/admin/i18n/pl ./node_modules/iobroker.zigbee/admin/i18n/pt ./node_modules/iobroker.zigbee/admin/i18n/ru ./node_modules/iobroker.zigbee/admin/i18n/uk ./node_modules/iobroker.zigbee/admin/i18n/zh-cn ./node_modules/iobroker.zigbee/docs ./node_modules/iobroker.zigbee/docs/de ./node_modules/iobroker.zigbee/docs/de/img ./node_modules/iobroker.zigbee/docs/en ./node_modules/iobroker.zigbee/docs/en/img ./node_modules/iobroker.zigbee/docs/ru ./node_modules/iobroker.zigbee/docs/ru/img ./node_modules/iobroker.zigbee/docs/tutorial ./node_modules/iobroker.zigbee/lib ./node_modules/iobroker.zigbee/support ./node_modules/zigbee-herdsman-converters ./node_modules/zigbee-herdsman-converters/dist ./node_modules/zigbee-herdsman-converters/dist/devices ./node_modules/zigbee-herdsman-converters/dist/lib ./node_modules/zigbee-herdsman-converters/dist/converters ./node_modules/zigbee-herdsman-converters/node_modules ./node_modules/zigbee-herdsman-converters/node_modules/iconv-lite ./node_modules/zigbee-herdsman-converters/node_modules/iconv-lite/.github ./node_modules/zigbee-herdsman-converters/node_modules/iconv-lite/.idea ./node_modules/zigbee-herdsman-converters/node_modules/iconv-lite/.idea/codeStyles ./node_modules/zigbee-herdsman-converters/node_modules/iconv-lite/.idea/inspectionProfiles ./node_modules/zigbee-herdsman-converters/node_modules/iconv-lite/encodings ./node_modules/zigbee-herdsman-converters/node_modules/iconv-lite/encodings/tables ./node_modules/zigbee-herdsman-converters/node_modules/iconv-lite/lib ./node_modules/zigbee-on-host ./node_modules/zigbee-on-host/dist ./node_modules/zigbee-on-host/dist/spinel ./node_modules/zigbee-on-host/dist/drivers ./node_modules/zigbee-on-host/dist/utils ./node_modules/zigbee-on-host/dist/zigbee ./node_modules/zigbee-herdsman ./node_modules/zigbee-herdsman/dist ./node_modules/zigbee-herdsman/dist/adapter ./node_modules/zigbee-herdsman/dist/adapter/z-stack ./node_modules/zigbee-herdsman/dist/adapter/z-stack/adapter ./node_modules/zigbee-herdsman/dist/adapter/z-stack/structs ./node_modules/zigbee-herdsman/dist/adapter/z-stack/structs/entries ./node_modules/zigbee-herdsman/dist/adapter/z-stack/constants ./node_modules/zigbee-herdsman/dist/adapter/z-stack/znp ./node_modules/zigbee-herdsman/dist/adapter/z-stack/utils ./node_modules/zigbee-herdsman/dist/adapter/z-stack/unpi ./node_modules/zigbee-herdsman/dist/adapter/z-stack/models ./node_modules/zigbee-herdsman/dist/adapter/ember ./node_modules/zigbee-herdsman/dist/adapter/ember/uart ./node_modules/zigbee-herdsman/dist/adapter/ember/ezsp ./node_modules/zigbee-herdsman/dist/adapter/ember/adapter ./node_modules/zigbee-herdsman/dist/adapter/ember/utils ./node_modules/zigbee-herdsman/dist/adapter/ezsp ./node_modules/zigbee-herdsman/dist/adapter/ezsp/adapter ./node_modules/zigbee-herdsman/dist/adapter/ezsp/driver ./node_modules/zigbee-herdsman/dist/adapter/ezsp/driver/types ./node_modules/zigbee-herdsman/dist/adapter/ezsp/driver/utils ./node_modules/zigbee-herdsman/dist/adapter/zigate ./node_modules/zigbee-herdsman/dist/adapter/zigate/driver ./node_modules/zigbee-herdsman/dist/adapter/zigate/adapter ./node_modules/zigbee-herdsman/dist/adapter/zboss ./node_modules/zigbee-herdsman/dist/adapter/zboss/adapter ./node_modules/zigbee-herdsman/dist/adapter/deconz ./node_modules/zigbee-herdsman/dist/adapter/deconz/driver ./node_modules/zigbee-herdsman/dist/adapter/deconz/adapter ./node_modules/zigbee-herdsman/dist/adapter/zoh ./node_modules/zigbee-herdsman/dist/adapter/zoh/adapter ./node_modules/zigbee-herdsman/dist/models ./node_modules/zigbee-herdsman/dist/utils ./node_modules/zigbee-herdsman/dist/buffalo ./node_modules/zigbee-herdsman/dist/zspec ./node_modules/zigbee-herdsman/dist/zspec/zcl ./node_modules/zigbee-herdsman/dist/zspec/zcl/definition ./node_modules/zigbee-herdsman/dist/zspec/zdo ./node_modules/zigbee-herdsman/dist/zspec/zdo/definition ./node_modules/zigbee-herdsman/dist/controller ./node_modules/zigbee-herdsman/dist/controller/model ./node_modules/zigbee-herdsman/dist/controller/helpers ./node_modules/zigbee-herdsman/examples ./node_modules/zigbee-herdsman/.github ./node_modules/zigbee-herdsman/.github/workflows ./node_modules/zigbee-herdsman/.github/ISSUE_TEMPLATE ./node_modules/zigbee-herdsman/node_modules ./node_modules/zigbee-herdsman/node_modules/debug ./node_modules/zigbee-herdsman/node_modules/debug/src ./node_modules/zigbee-herdsman/node_modules/node-addon-api ./node_modules/zigbee-herdsman/node_modules/node-addon-api/tools ./node_modules/zigbee-herdsman/node_modules/@serialport ./node_modules/zigbee-herdsman/node_modules/@serialport/parser-delimiter ./node_modules/zigbee-herdsman/node_modules/@serialport/parser-delimiter/dist ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/dist ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/prebuilds ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/prebuilds/linux-arm ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/prebuilds/android-arm ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/prebuilds/linux-arm64 ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/prebuilds/android-arm64 ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/prebuilds/win32-arm64 ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/prebuilds/linux-x64 ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/prebuilds/darwin-x64+arm64 ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/prebuilds/win32-ia32 ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/prebuilds/win32-x64 ./node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/src ./node_modules/zigbee-herdsman/node_modules/@serialport/parser-readline ./node_modules/zigbee-herdsman/node_modules/@serialport/parser-readline/dist ./node_modules/zigbee-herdsman/node_modules/@serialport/stream ./node_modules/zigbee-herdsman/node_modules/@serialport/stream/dist ./node_modules/zigbee-herdsman/node_modules/ms ./node_modules/zigbee-herdsman/node_modules/node-gyp-build ./node_modules/zigbee-herdsman/node_modules/.bin ./iobroker-data/files/zigbee.admin ./iobroker-data/files/zigbee.admin/img ./iobroker-data/files/zigbee.admin/i18n ./iobroker-data/files/zigbee.admin/i18n/de ./iobroker-data/files/zigbee.admin/i18n/en ./iobroker-data/files/zigbee.admin/i18n/es ./iobroker-data/files/zigbee.admin/i18n/fr ./iobroker-data/files/zigbee.admin/i18n/it ./iobroker-data/files/zigbee.admin/i18n/nl ./iobroker-data/files/zigbee.admin/i18n/pl ./iobroker-data/files/zigbee.admin/i18n/pt ./iobroker-data/files/zigbee.admin/i18n/ru ./iobroker-data/files/zigbee.admin/i18n/uk ./iobroker-data/files/zigbee.admin/i18n/zh-cn ./iobroker-data/zigbee_0 ./iobroker-data/zigbee_1 ./iobroker-data/zigbee_2
-
@alexhaxe Einfach nur nein:
im Verzeichnis
opt/iobroker
die folgenden beiden Befehle absetzen
npm list -g
npm list -a | grep -e zigbee
Ausgaben hier posten.
Zusätzlich:
sed -n 153,171p node_modules/iobroker.zigbee/lib/zbDeviceConfigure.js
(im gleichen Verzeichnis)A,
Nachtrag: Nutzt Du einen externen Konverter für den Somrig, oder hast du die Ikea.js oder Ikea.ts Datei aus den Zigbee-Herdsman-Converters gepatched ?
-
npm list -g /usr/lib ├── corepack@0.31.0 ├── lix@15.12.1 ├── node-gyp@11.1.0 ├── nopt@7.2.1 ├── npm@11.2.0 ├── semver@7.7.1 ├── sonos-web-cli@1.3.1 └── yarn@1.22.22
npm list -a |grep zigbee ├─┬ iobroker.zigbee@2.0.5 │ ├── zigbee-herdsman-converters@23.16.0 deduped │ └── zigbee-herdsman@3.4.10 deduped ├─┬ zigbee-herdsman-converters@23.16.0 │ └── zigbee-herdsman@3.4.10 deduped └─┬ zigbee-herdsman@3.4.10 └── zigbee-on-host@0.1.10
sed -n 153,171p node_modules/iobroker.zigbee/lib/zbDeviceConfigure.js try { if (mappedDevice) { if (mappedDevice.configure === undefined) return `No configure available for ${device.ieeeAddr} ${mappedDevice.model}.`; this.info(`Configuring ${device.ieeeAddr} ${mappedDevice.model}`); this.configuring.add(device.ieeeAddr); if (typeof mappedDevice.configure === 'function') await mappedDevice.configure(device, coordinatorEndpoint, this); else { const promises = []; promises.push(...mappedDevice.configure); await Promise.all(promises.map(callback => callback(device, coordinatorEndpoint, mappedDevice))) } device.meta.configured = zigbeeHerdsmanConverters.getConfigureKey(mappedDevice); this.configuring.delete(device.ieeeAddr); delete this.configureOnMessageAttempts[device.ieeeAddr]; device.save(); this.info(`DeviceConfigure successful ${device.ieeeAddr} ${mappedDevice.model}`); return ''; } } catch (error) {
kein Ikea Custom Converter im Einsatz und die Original-Dateien sind unverändert
-
Da Passt etwas nicht zusammen:
- Lt. deinem Posting nutzt du die aktuelle Version der zigbee-herdsman-converter (ZHC) sowie des zigbee-herdsman b(ZH)
- der gepostete Code entspricht auch dem aktuellen Stand der Technik
- dennoch schreibst Du das ein Configure mit dem Z2M (welches diese oder ältere Versionen von ZH und ZHC nutzt) bei dem Somrig problemlos durchläuft, während im Zigbee Adapter der gleiche Code eine Fehlermeldung liefern soll.
Kannst du bestätigen:
- das du den identischen Koordinator mit Z2M und Zigbee Adapter genutzt hast
- das du die identischen Einstellungen (Port, PanID, ExtPanID, Kanal) mit Z2M und Zigbee Adapter genutzt hast
- das du sicher bist das der letzte Versuch der Konfiguration mit dem neusten Code stattgefunden hat ? (Wichtig: Mir ist aufgefallen das bei einer Installation einer neueren Version unter bestimmten Umständen der Adapter nicht sauber neu gestartet wird. Daher bitte für einen erneuten Test den Adapter anhalten, 60 Sekunden warten und danach den Adapter wieder starten. Der Adapter sollte selbstständig erkennen das der Somrig nicht konfiguriert ist und versuchen diesen zu konfigurieren
- das du sicher die korrekten Datenpunkte für den Somrig überwacht hast ? Wichtig - zwischen 1.10.14 und 2.0.1 haben sich die ID's der Datenpunkte möglicherweise geändert.
A.
-
@asgothian said in Ikea SOMRIG wird nicht unterstützt?:
das du den identischen Koordinator mit Z2M und Zigbee Adapter genutzt hast
ich habe mit ein und demselben Sonoff USB Stick sowohl am iobroker Server getestet, als auch lokal an einer zigbee2mqtt Instanz. Mit dem beschriebenen Ergebnis. Inzwischen habe ich den Sonoff Stick wieder im iobroker Server und den zigbee2mqtt betreibe ich mit einem alten CC2531 Stick, damit ich parallel testen und vergleichen kann.
Was ich noch nicht getestet habe, ist ob der CC2531 Stick am iobroker zu einem anderen Ergebnis kommt.das du die identischen Einstellungen (Port, PanID, ExtPanID, Kanal) mit Z2M und Zigbee Adapter genutzt hast
Durch das parallele Setup wären übereinstimmende Kanäle und IDs sicherlich hinderlich, deswegen waren diese natürlich unterschiedlich. Aber um auszuschließen, dass es daran liegt, habe ich den Sonoff Stick auf den gleichen Kanal, PanID und ExtPanID gesetzt. Sofern sich nicht bei der Umrechnung der Dezimalzahlen aus der zigbee2mqtt nach Hex ein Fehler eingeschlichen hat (oder ich die Reihenfolge hätte ändern müssen), hat dies ebenfalls keine Verbesserung gebracht.
das du sicher bist das der letzte Versuch der Konfiguration mit dem neusten Code stattgefunden hat ? (Wichtig: Mir ist aufgefallen das bei einer Installation einer neueren Version unter bestimmten Umständen der Adapter nicht sauber neu gestartet wird. Daher bitte für einen erneuten Test den Adapter anhalten, 60 Sekunden warten und danach den Adapter wieder starten. Der Adapter sollte selbstständig erkennen das der Somrig nicht konfiguriert ist und versuchen diesen zu konfigurieren
Ich habe zwischenzeitlich NodeJS von 20.x auf 22.x aktualisiert (um mit meinem lokalen System gleichzuziehen) und seitdem wurde iobroker definitiv mindestens einmal komplett durchgestartet. Auch zwischenzeitlich ist die Test-Instanz immer mal längere Zeit deaktiviert, die beiden Produktiv-Instanzen laufen dabei allerdings weiter.
das du sicher die korrekten Datenpunkte für den Somrig überwacht hast ? Wichtig - zwischen 1.10.14 und 2.0.1 haben sich die ID's der Datenpunkte möglicherweise geändert.
Die Umstellung und Namensänderung durch die Installation von 2.x ist bereits vor einigen Wochen erfolgt. Die Datenpunkte wurde beim Löschen mit Force-Delete entfernt und durch das Pairing neu angelegt. Sie entsprechen den Feldern die bei zigbee2mqtt gemeldet werden.
Da ich das zigbee2mqtt Netzwerk abbauen musste, um den iobroker.zigbee Adapter mit identischen IDs und Kanal hochzufahren, habe ich den zweiten Taster nun ebenfalls mit iobroker verbunden. Und wo er im zigbee2mqtt gerade noch wunderbar Daten gemeldet hat, schweigt er nun genauso wie sein Kollege.
Interessanterweise zeigt die Device Information der Kachel unter
configured:
true
an, d.h. der Adapter geht davon aus, dass das Ding konfiguriert ist, nur gibt es weder Batterie-Status, noch Button Events (alles auf(null)
).
Normalerweise muss man bei den Ikea Geräten immer noch mal manuell Config auslösen, sonst bekommt man keinen Batterie-Status (so habe ich das zumindest bislang erlebt). -
Inzwischen habe ich auf iobroker.zigbee Version 3.0.0 aktualisiert. Keine Veränderung, auch nicht nach einem erneuten Pairing.
Um beim Testen und der Fehlersuche noch einen Schritt weiterzugehen, habe ich jetzt eine lokale Instanz von iobroker laufen. Sie hat nichts mit der Live-Version zu tun und läuft auf dem selben Rechner wie zigbee2mqtt und sie wurde frisch installiert (mit beta Repositories und ebenfalls iobroker.zigbee 3.0.0).
Das Ergebnis ist das gleiche wie vorher. iobroker.zigbee kann den Button pairen, aber nurlink_quality
undavailable
werden gemeldet / aktualisiert. zigbee2mqtt volles Programm, alle Events und Buttons werden gemeldet.
Ich habe den selben Sonoff Zigbee Stick für beides verwendet, die iobroker Installation ist ansonsten unverändert (keine eigenmächtigen NPM Pakete eingespielt).Entweder stelle ich mich beim Einrichten und Betreiben des Systems zu doof an, oder es gibt einen Bug der verhindert, dass der Zigbee-Adapter die Geräte korrekt unterstützt.
Welche Debug-Möglichkeiten gibt es, um herauszufinden wo der Bug sitzt? Gibt es eine einfache Möglichkeit den Netzwerk-Verkehr mitzuschneiden, damit man zwischen zigbee2mqtt und iobroker.zigbee vergleichen kann, und schauen kann was letzterer nicht sendet / verarbeitet? -
@alexhaxe bitte verifiziere welche ZHC / ZH Versionen von zigbee2mqtt.io genutzt werden. Die Kommunikation mit zigbee läuft in beiden Systemen identisch - sofern die gleichen Code-Versionen genutzt werden.
A.
-
@asgothian
iobroker (npm list -a |grep zigbee
) :└─┬ iobroker.zigbee@3.0.0 ├─┬ zigbee-herdsman-converters@23.24.0 │ └── zigbee-herdsman@3.5.1 deduped └─┬ zigbee-herdsman@3.5.1 └── zigbee-on-host@0.1.10
zigbee2mqtt:
zigbee2mqtt@2.1.3 /opt/zigbee2mqtt ├─┬ zigbee-herdsman-converters@23.13.0 │ └── zigbee-herdsman@3.4.8 deduped ├─┬ zigbee-herdsman@3.4.8 │ └── zigbee-on-host@0.1.9 └── zigbee2mqtt-frontend@0.9.4
Die libs im iobroker sind Dank der 3.0.0 und der Neuinstallation neuer, aber ich kann nachher mal zigbee2mqtt auf den gleichen Stand bringen, um zu schauen ob es sich besinnt und aufhört zu funktionieren.
Irgendwo muss es einen Unterschied geben, der dafür sorgt, dass die Nachrichten der Buttons entweder nicht ankommen, nicht verarbeitet werden, oder der die Buttons so initialisiert, dass diese der Meinung sind keine Nachrichten außer
link_quality
senden zu müssen.Andere Gerätschaften, wie z.B. die Parasoll Türsensoren funktionieren in beiden Systemen.
Wobei auch die Parasolls nicht ohne Probleme sind: Normalerweise senden diese alle 10 Minuten ein Update. Alle paar Tage bekommen sie einen Rappel und senden Updates alle 10-20 Sekunden. Meist sind sie dann auch nicht mehr wirklich funktionsbereit, sprich sie melden das Öffnen / Schließen der Kontake nicht mehr weiter. Batterie entfernen und wieder einsetzen (kein Batterietausch), also sprich ein Reboot des Geräts löst das Problem. Ich schätze wenn man diesen Zustand zu lange ohne Power-Cycle laufen lässt, wird Ratz-Fatz die Batterie leer. Zur Batterie-Leer-Problematik der Parasolls finden sich ja bereits einige Posts im Internet, der Konsenz ist Akkus zu nehmen. Aber selbst mit Akkus hat man das beschriebene Verhalten, allerdings halten die Akkus trotzdem mehrere Wochen durch, sofern man rechtzeitig die Reboots durchführt. Ein Gegentest mit Nicht-Akkus und regelmäßigen Reboots habe ich noch nicht angestellt, von daher ist unklar, ob Akkus wirklich helfen die Problematik zu entschärfen, oder ob es die Reboots beim Auftreten der Anomalie sind. Glücklicherweise habe ich ein Skript, dass mir Benachrichtigungen schickt, wenn die Geräte in diesen Modus verfallen.
Ich muss mal einen Langzeittest mit zigbee2mqtt anstellen, um zu sehen, ob dieses Verhalten dort ebenfalls auftritt. Könnte also gut sein, dass diese Thematik völlig losgelöst von den Somrigs ist, auch wenn beide vom selben Hersteller stammen. Immerhin verrichten die Parasolls ihre Arbeit - zumindest bis zum Eintreten der beschriebenen Problematik, während Somrigs im iobroker gar keine Anstalten machen. -
Nach weiteren Tests und der flüchtigen Überlegung meine Zigbee Netzwerke zu zigbee2mqtt zu migrieren, habe ich gestern nochmal genauer die beiden Sourcen verglichen (sprich Source-Code von iobroker.zigbee und zigbee2mqtt).
Dabei fiel mir auf, dass iobroker.zigbee bei einem der beidenconfigure
Aufrufe als dritten Parameter einthis
übergibt, statt der Geräte-Konfiguration /-Mapping. Das erschien nicht nur komisch, es erweist sich auch als Quelle für die FehlermeldungFailed to configure. --> definition.endpoint is not a function
. Übergibt man hiermappedDevice
(wie dies auch im zigbee2mqtt unter anderem Namen der Fall ist) klappt das plötzlich mit dem Konfigurieren. Ich muss zwar trotzdem einmal die Batterie entfernen und wieder einsetzen, damit die Konfiguration nach Timeout sofort durchgeführt wird, aber danach werden die Button-Ereignisse anstandslos im Objektbaum wiedergegeben.Sobald sich jemand findet, der https://github.com/ioBroker/ioBroker.zigbee/pull/2463 merged und als neue Version veröffentlicht (oder sich eine bessere Lösung ausdenkt), kann der Thread meiner Meinung nach als gelöst markiert werden.
-
@alexhaxe PR ist gemerged. Danke dafür das du das ausgebuddelt hast. Ohne Deine Hilfe hätte ich das nicht gefunden da der Fehler bei mir nicht aufgetreten ist.
Eine neue Version fürs Latest ist in Vorbereitung - wird noch ein paar tage dauern, aber die GitHub Version sollte den Fehler nicht mehr zeigen .
A.
-
@asgothian said in Ikea SOMRIG wird nicht unterstützt?:
Ohne Deine Hilfe hätte ich das nicht gefunden da der Fehler bei mir nicht aufgetreten ist.
Der Fehler lässt sich mit der alten Version sehr einfach reproduzieren:
- In der Kachel eines SOMRIG Geräts eine manuelle Rekonfiguration auslösen.
- Nichts am Gerät drücken, und auf den Timeout in der Oberfläche / Log warten.
- Dann Batteriefach öffnen, und Batterie kurz raus und wieder rein.
- Gerät announced sich, und die Rekonfiguration wird versucht.
- In der Log-Datei wird man dann ein
DeviceConfigure:0xAAAAA SOMRIG shortcut button Failed to configure. --> definition.endpoint is not a function
vorfinden.
-
@alexhaxe sagte in Ikea SOMRIG wird nicht unterstützt?:
Der Fehler lässt sich mit der alten Version sehr einfach reproduzieren:
Leider nein - ich hab keinen Somrig. Nur ähnliche Ikea Knöpfe. Sprich ich kann das gar nicht verifizieren.
A.
Nachtrag - bei allen meinen Geräten funktioniert der Aufruf so wie er vorher im Code war. Auch von Anderen habe ich keine entsprechenden Fehlermeldungen bekommen. Daher meine initiale Skepsis.
-
@asgothian said in Ikea SOMRIG wird nicht unterstützt?:
Ich hab mehrere Somrig und kann das Problem nicht nachstellen.
Sorry, ich bin fälschlicherweise davon ausgegangen, dass dies noch zutrifft.
Ich habe den Eindruck, dass sich die verschiedenen Geräte-Typen des Herstellers teilweise sehr unterschiedlich verhalten. Die Bewegungsmelder unterscheiden sich von den Türsensoren, und die SOMRIGs sind dann nochmal anders, vermutlich aufgrund anderer Parameter in der jeweiligen Firmware. Der Grund, warum SOMRIG in den Fehler läuft, könnte z.B. auch am Converter liegen. Was erklärt, warum andere Schalter/Taster, selbst vom selben Hersteller, eben nicht unbedingt das selbe Verhalten und die selben Probleme produzieren muss.
Ich habe etliche verschiedene Geräte von unterschiedlichen Herstellern, in vielen Fällen sogar unterschiedliche Hersteller für ein und dieselbe Geräteklasse, und keines hat Probleme wie die SOMRIGs gemacht. Ein Gerät, welches eigentlich als unterstützt gilt, dass sich aber einfach nicht korrekt einbinden lässt. Das Problem war also stark auf SOMRIG eingegrenzt, wobei es sicherlich mehr Geräte geben kann, die auf die gleiche Weise fehlschlagen.Ich habe keine Untersuchung von iobroker.zigbee 1.x durchgeführt, kann also nicht sagen, warum es damals auch schon fehlschlug. Aber damals habe ich dann zunächst aufgegeben und die Sache zur Seite gelegt und nicht weiter verfolgt. Da wir inzwischen bei 3.x sind und es nun einen Fix für diese Version gibt, ist da auch nicht weiter relevant.
-
@alexhaxe sagte in Ikea SOMRIG wird nicht unterstützt?:
@asgothian said in Ikea SOMRIG wird nicht unterstützt?:
Ich hab mehrere Somrig und kann das Problem nicht nachstellen.
Ich habe keine Untersuchung von iobroker.zigbee 1.x durchgeführt, kann also nicht sagen, warum es damals auch schon fehlschlug. Aber damals habe ich dann zunächst aufgegeben und die Sache zur Seite gelegt und nicht weiter verfolgt. Da wir inzwischen bei 3.x sind und es nun einen Fix für diese Version gibt, ist da auch nicht weiter relevant.
Zumindest die Frage kann ich beantworten. Der Configue Code ist recht alt - das heisst innerhalb der 1.x hat das ganze solange funktioniert bis im ZHC oder ZH etwas umgestellt wurde. Das passiert regelmäßig, und wird nicht immer so kommuniziert das wir unseren Code proaktiv anpassen können. Nur bei ‘großen’ Anpassungen bekommt man das manchmal mit. So hab ich beim Wechsel 1.10.3 zu 1.10.14 ca. 4 Wochen gebraucht auf entsprechende Änderungen in ZH und ZHC zu reagieren. Auch da konnte ich das nur gegen bei mir vorhandene Hardware verifizieren.
Im Bezug auf das configure wurde da einiges umgestellt, insbesondere auch was die Häufigkeit und Nutzung angeht, so das das nur scheibchenweise ans Licht kam. Alle die Geräte mit 1.10.3 angelernt und konfiguriert hatten konnten diese weiter nutzen, es wegen das erst spät überhaupt aufgefallen ist. Aus der Zeit stammt z.bsp die Trennung zwischen ‘function’ und ‘Array of promises’ I’m configure code - Weil letzteres ‘Mal eben’ ohne weitere Info in den Konvertern auftauchte.
Am Ende bleibt was ich weiter oben geschrieben habe: Vielen Dank für die Zeit, die Beharrlichkeit und den Aufwand den du in die Analyse gesteckt hast. Hätte das wer anders gekonnt - bestimmt. Hätte ich das gekonnt - vielleicht. Mir wären ggf. Die Unterschiede im code aufgefallen - die Relevanz hätte ich aber nicht verifizierten können.
Als Entwickler eines hardwarenahen Adapters mit Nutzung einer externen Bibliothek bin ich genau auf diese Art von Hilfe angewiesen.
Nebenbei wirst du im changelog des Adapters Deinen GitHub Usernamen finden - das gehört sich so.
A.