Un-decodable 0x09 network_management_installation_maintenance command
jfcloutier opened this issue · comments
I just saw this
19:44:57.314 [error] GenServer #PID<0.2950.0> terminating
** (FunctionClauseError) no function clause matching in Grizzly.ZWave.Decoder.from_binary/1
(grizzly 0.15.6) lib/grizzly/zwave/decoder.ex:1: Grizzly.ZWave.Decoder.from_binary(<<103, 9, 8, 0>>)
(grizzly 0.15.6) lib/grizzly/zwave/commands/zip_packet.ex:80: Grizzly.ZWave.Commands.ZIPPacket.decode_params/1
(grizzly 0.15.6) lib/grizzly/zwave/decoder.ex:1:
What's interesting is that I cannot find a documented command 0x09 for CC 0x67 (:network_management_installation_maintenance)
Here's some more information about that binary:
- The 9 means S2 resynchronization event
- The 8 is the node number for this message.
- The 0 is the reason. It's SOS_EVENT_REASON_UNANSWERED. There's only one reason defined currently.
Here's some text about it:
/**
* SOS_EVENT_REASON_UNANSWERED means that a Nonce Report with Singlecast-out-of-Sync
* (SOS) = 1 has been received at an unexpected time and no response was sent.
*
* A Nonce Report SOS is considered expected and no SOS_EVENT_REASON_UNANSWERED will be emitted in these case:
* 1) libs2 is in Verify Delivery state and receives a Nonce Report SOS from the
* node being delivered to and will re-transmit the encrypted message
* 2) libs2 has already re-transmitted and receives a second SOS from the node being transmitted to
* during Verify Delivery timeout. A \ref S2_send_done_event() with
* status=TRANSMIT_COMPLETE_NO_ACK will be emitted instead.
*
*/
typedef enum {
SOS_EVENT_REASON_UNANSWERED, ///< A Nonce Report with SOS=1 was received at an unexpected time and no response was sent. Application may use this information to abort Supervision Report timeout if the remote nodeid matches.
}
sos_event_reason_t;