The current mechanism for sending outstanding cached commands is built around sending a message out as quickly as possible to the device. It was written in this way to try to cope with the small 'listen' window of the eTRV. Consequently outstanding cached messages are sent to the device every time a message is received from the said device BEFORE any decoding of the message takes place.
This approach, whilst suited to the small Rx window of the eTRV, has a side-effect in that most cached commands are sent twice, the 2nd one being superfluous.
The current mechanism for sending outstanding cached commands is built around sending a message out as quickly as possible to the device. It was written in this way to try to cope with the small 'listen' window of the eTRV. Consequently outstanding cached messages are sent to the device every time a message is received from the said device BEFORE any decoding of the message takes place.
This approach, whilst suited to the small Rx window of the eTRV, has a side-effect in that most cached commands are sent twice, the 2nd one being superfluous.