Commit Graph

31 Commits (34ade62e4eb1575a6f9aae63a4b1f8564f17e3a2)

Author SHA1 Message Date
jenkins 4ea83aa44c Merge PR #70: Update all debug operators and make use of state saver 2022-10-17 11:20:00 +02:00
jenkins bbbbbbc521 Merge PR #65: Complete the OTA cluster implementation 2022-10-17 11:19:55 +02:00
Simon Stürz 2aa22ee262 Update all debug operators and make use of state saver 2022-10-13 12:48:43 +02:00
Michael Zanetti 33d3ad10e9 Add API to interact with bindings 2022-10-13 10:11:11 +02:00
Michael Zanetti acfd73c271 Obtain LQI neighbor and routing tables from the network 2022-10-13 10:10:57 +02:00
Michael Zanetti ac7972df35 Complete the OTA cluster implementation 2022-10-12 12:17:30 +02:00
Michael Zanetti ea73d28213 Fix node type parsing
Parsing of NodeTypeEndDevice and NodeTypeRouter were swapped.
2022-08-30 22:48:19 +02:00
Michael Zanetti fd12d0518b Explicitly stop the ZCL timeout timer
Also don't use a QueuedConnection, as it's not guaranteed the
sender will still live on by the time slot is called.
2022-05-12 17:33:35 +02:00
Michael Zanetti c20d14b793 Fix a crash when ZDO requests time out 2022-04-23 12:07:20 +02:00
Michael Zanetti 806065ff5c Timeout ZDO replies
I've been observing devices that won't reply to ZDO node descriptor requests,
at least not on the first attempt as well as out-of-spec devices which claim
to have an endpoint x but then won't reply on getting the endpoint descriptor.

I have a Lumi (lumi.sensor_switch.aq2) button here which allows to reproduce
both of those. It will never reply on the first attemt.

Anyhow, it happens that the ZDO, waiting on the data indication never finishes
because there does not seem to be a timeout connected to it and it fails initialisation.
Adding a timeout, the code retries and it seems to succeed on the second attempt.
2022-03-07 12:07:40 +01:00
Michael Zanetti 9782ad5eac Remove a duplicate debug print and fix some typos 2021-11-06 15:47:29 +01:00
Simon Stürz 40d6fdaa90 Move common data process mechanism to network base class 2020-12-09 10:53:33 +01:00
Simon Stürz 1eed81562a Fix initialization error due to timeout issue and improve debugging 2020-12-02 12:03:44 +01:00
Simon Stürz e245f7c845 Introduce binding management and cleaning 2020-11-25 13:06:31 +01:00
Simon Stürz 61114fc773 Restructure error handling depnding on layer and add MAC layer errors to replies 2020-11-24 18:14:54 +01:00
Simon Stürz 66637cc389 Add read binding tables for testing 2020-11-23 18:26:19 +01:00
Simon Stürz 0814624216 Add bind group to ZDO 2020-11-16 07:54:45 +01:00
Simon Stürz 008fd0c55b Rename to reachable and set state on messages received and prepare lqi request 2020-11-12 17:48:12 +01:00
Simon Stürz 3d62162f5e Improve debug prints and rename adapter members 2020-11-01 22:17:59 +01:00
Simon Stürz 86a5579ff8 Basic networking working with NXP modem firmware 2020-10-20 16:37:32 +02:00
Simon Stürz b8b2b00e4f Replace Qt::endl for backwards compatibility 2020-10-13 12:17:39 +02:00
Simon Stürz ae306b2e77 Update to qt 5.15 and continue device implementation 2020-10-05 16:37:08 +02:00
Simon Stürz ed5517fbf1 Implement reply timeout and restructure uart communication queue 2020-06-30 16:49:09 +02:00
Simon Stürz 8f1043ba9f Implement lqi updating of nodes and finishe on/off and level cluster 2020-06-14 14:39:10 +02:00
Simon Stürz 80d4b1416e Restructure the descriptor handling and implement level control cluster server side 2020-06-03 19:50:47 +02:00
Simon Stürz 74995ce401 Implement NWL Layer error handling 2020-05-30 16:30:39 +02:00
Simon Stürz 69ed7e3496 Implement new clusters and restructure ZCL frame flow and implement attribute reports 2020-05-28 18:03:33 +02:00
Simon Stürz 7e5643a1cf Add on off cluster and use zigbedatatype for atributes 2020-05-27 21:56:41 +02:00
Simon Stürz 4e897686bb Implement basic cluster comands and commuication 2020-05-25 22:25:49 +02:00
Simon Stürz 029ca76bae Make basic node adding mechanism work 2020-05-20 19:54:58 +02:00
Simon Stürz 7cdf772b1a Start implementing clusters 2020-05-06 12:33:26 +02:00