There is a Bug in libcanard dsdl,Please check --BeginFirmwareUpdateRequest

There‘s a Bug in uavcan_protocol_file_BeginFirmwareUpdateRequest_decode_internal(…)
This Bug lead to a wrong decode struct.
line 89
// Compound
offset = uavcan_protocol_file_Path_decode_internal(transfer, 0, &dest->image_file_remote_path, dyn_arr_buf, offset);

The second actual parameter should not be ‘0’, It should be ‘payload_len’;

fix:
// Compound
offset = uavcan_protocol_file_Path_decode_internal(transfer, payload_len, &dest->image_file_remote_path, dyn_arr_buf, offset);

Thanks for moving the issue to GitHub. In the future, please don’t hesitate to report all issues there directly. Thanks!