Open syn-tax-err opened 5 years ago
Recent versions of SIK use a different radio status message ID in MAVLINK, which is currently not detected by servald, causing new RFD radios to appear no-op (key symptom is "TX: 1, RX: 0" in the interface packet counters).
The relevant change in SIK is here: https://github.com/ArduPilot/SiK/commit/697c8a42d5562618afab6979f4b9f72118d8ba85#diff-9991bbe30c29719d7f8948c2d4fb3b56R47 TL;DR: new message 109 (0x6d) replaces old message 166 (0xa6), message format is unchanged.
Currently, servald only tests for old MAVLINK heartbeats, ignoring the new ones. This happens at two locations in the code: https://github.com/servalproject/serval-dna/blob/c2526446edc7244377a56bdb7468d90a327d9588/radio_link.c#L55 https://github.com/servalproject/serval-dna/blob/c2526446edc7244377a56bdb7468d90a327d9588/radio_link.c#L346-L350 https://github.com/servalproject/serval-dna/blob/c2526446edc7244377a56bdb7468d90a327d9588/radio_link.c#L476-L480
The issue is fixed by testing payload[5] against both message type IDs.
Recent versions of SIK use a different radio status message ID in MAVLINK, which is currently not detected by servald, causing new RFD radios to appear no-op (key symptom is "TX: 1, RX: 0" in the interface packet counters).
The relevant change in SIK is here: https://github.com/ArduPilot/SiK/commit/697c8a42d5562618afab6979f4b9f72118d8ba85#diff-9991bbe30c29719d7f8948c2d4fb3b56R47 TL;DR: new message 109 (0x6d) replaces old message 166 (0xa6), message format is unchanged.
Currently, servald only tests for old MAVLINK heartbeats, ignoring the new ones. This happens at two locations in the code: https://github.com/servalproject/serval-dna/blob/c2526446edc7244377a56bdb7468d90a327d9588/radio_link.c#L55 https://github.com/servalproject/serval-dna/blob/c2526446edc7244377a56bdb7468d90a327d9588/radio_link.c#L346-L350 https://github.com/servalproject/serval-dna/blob/c2526446edc7244377a56bdb7468d90a327d9588/radio_link.c#L476-L480
The issue is fixed by testing payload[5] against both message type IDs.