jeedom-zigate / jeedom-plugin-zigate

Plugin Jeedom for ZiGate key.
MIT License
29 stars 12 forks source link

Problème inclusion nouveaux devices #304

Closed nbossard closed 3 years ago

nbossard commented 3 years ago

Bonjour,

J'ai des difficultés à include de nouveaux devices du même type que certains que j'ai déjà. Après inclusion, seules les commandes refresh sont créés.

Si je regarde dans les logs de zigate je vois des erreurs inquiétantes :

[2021-02-04 19:59:13][ERROR][zigate](ZiGate-Decode data) : Device 5897 doesn't receive last command to endpoint 1 cluster 0: 0xa7 [2021-02-04 20:00:16][WARNING][zigate](ZiGate-Decode data) : RESPONSE 0x8702 - APS Data Confirm Fail : status:233, source_endpoint:1, dst_endpoint:3, dst_address_mode:2, dst_address:f4da, sequence:106, lqi:0 [2021-02-04 20:01:28][WARNING][zigate](ZiGate-Decode data) : RESPONSE 0x8702 - APS Data Confirm Fail : status:233, source_endpoint:1, dst_endpoint:3, dst_address_mode:2, dst_address:f4da, sequence:114, lqi:0 [2021-02-04 20:02:50][ERROR][zigate](ZiGate-Decode data) : Failed to eval "decode_xiaomi(value)" using "0328240521530007270000000000000000082123120921020c6410016510006e20016f200094202f9539f628643e96397dba0e459739335c363d98396a829a409b210000" [2021-02-04 20:02:50][ERROR][zigate](ZiGate-Decode data) : Traceback (most recent call last): File "/usr/local/lib/python3.7/dist-packages/zigate/clusters.py", line 108, in update 'self': self}) File "", line 1, in File "/usr/local/lib/python3.7/dist-packages/zigate/clusters.py", line 209, in decode_xiaomi data[index] = struct.unpack(fmt, data[index])[0] struct.error: unpack requires a buffer of 4 bytes Exception in thread ZiGate-Decode data: Traceback (most recent call last): File "/usr/lib/python3.7/threading.py", line 917, in _bootstrap_inner self.run() File "/usr/lib/python3.7/threading.py", line 865, in run self._target(*self._args, **self._kwargs) File "/usr/local/lib/python3.7/dist-packages/zigate/core.py", line 597, in decode_data self.interpret_response(response) File "/usr/local/lib/python3.7/dist-packages/zigate/core.py", line 685, in interpret_response response.cleaned_data()) File "/usr/local/lib/python3.7/dist-packages/zigate/core.py", line 3079, in set_attribute self._handle_quirks(changed) File "/usr/local/lib/python3.7/dist-packages/zigate/core.py", line 3093, in _handle_quirks data_map = [(0x01, 0x0001, 0x0020, values[1] / 100.),] KeyError: 1


et

[2021-02-04 21:04:33][ERROR][zigate](ZiGate-Decode data) : Failed to eval "decode_xiaomi(value)" using "0328230521530007270000000000000000082123120921020b6410016510006e20016f20009420319539c3f5683e963938cf104597391d452c3d983996999a409b210000" [2021-02-04 21:04:33][ERROR][zigate](ZiGate-Decode data) : Traceback (most recent call last): File "/usr/local/lib/python3.7/dist-packages/zigate/clusters.py", line 108, in update 'self': self}) File "", line 1, in File "/usr/local/lib/python3.7/dist-packages/zigate/clusters.py", line 209, in decode_xiaomi data[index] = struct.unpack(fmt, data[index])[0] struct.error: unpack requires a buffer of 4 bytes Exception in thread ZiGate-Decode data: Traceback (most recent call last): File "/usr/lib/python3.7/threading.py", line 917, in _bootstrap_inner self.run() File "/usr/lib/python3.7/threading.py", line 865, in run self._target(*self._args, **self._kwargs) File "/usr/local/lib/python3.7/dist-packages/zigate/core.py", line 597, in decode_data self.interpret_response(response) File "/usr/local/lib/python3.7/dist-packages/zigate/core.py", line 685, in interpret_response response.cleaned_data()) File "/usr/local/lib/python3.7/dist-packages/zigate/core.py", line 3079, in set_attribute self._handle_quirks(changed) File "/usr/local/lib/python3.7/dist-packages/zigate/core.py", line 3093, in _handle_quirks data_map = [(0x01, 0x0001, 0x0020, values[1] / 100.),] KeyError: 1 [2021-02-04 21:04:49][ERROR][zigate](ZiGate-Decode data) : Device 2147 doesn't receive last command to endpoint 0 cluster 5: 0xa7

nbossard commented 3 years ago

Bonjour, Problème d'inclusion résolu en effaçant les données de la clé zigate... c'est juste qu'il faut réinclure tous les devices ensuite, fastidieux. Par contre il y a toujours des erreurs dans les logs :

[2021-02-10 10:59:19][ERROR][zigate](ZiGate-Decode data) : Failed to eval "decode_xiaomi(value)" using "032829052163000727000000000000000008212312092100056410016510006e20016f200094200295391f85eb3c9639d3010f4597399595683d983978e8bc3e9b210000" [2021-02-10 10:59:19][ERROR][zigate](ZiGate-Decode data) : Traceback (most recent call last): File "/usr/local/lib/python3.7/dist-packages/zigate/clusters.py", line 108, in update 'self': self}) File "", line 1, in File "/usr/local/lib/python3.7/dist-packages/zigate/clusters.py", line 209, in decode_xiaomi data[index] = struct.unpack(fmt, data[index])[0] struct.error: unpack requires a buffer of 4 bytes [2021-02-10 10:59:19][ERROR][zigate](ZiGate-Decode data) : Failed handling quirks Traceback (most recent call last): File "/usr/local/lib/python3.7/dist-packages/zigate/core.py", line 3090, in set_attribute self._handle_quirks(changed) File "/usr/local/lib/python3.7/dist-packages/zigate/core.py", line 3106, in _handle_quirks data_map = [(0x01, 0x0001, 0x0020, values[1] / 100.),] KeyError: 1