4#define MAVLINK_MSG_ID_AUTOPILOT_VERSION 148
7typedef struct __mavlink_autopilot_version_t {
10 uint32_t flight_sw_version;
11 uint32_t middleware_sw_version;
12 uint32_t os_sw_version;
13 uint32_t board_version;
16 uint8_t flight_custom_version[8];
17 uint8_t middleware_custom_version[8];
18 uint8_t os_custom_version[8];
20}) mavlink_autopilot_version_t;
22#define MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN 78
23#define MAVLINK_MSG_ID_AUTOPILOT_VERSION_MIN_LEN 60
24#define MAVLINK_MSG_ID_148_LEN 78
25#define MAVLINK_MSG_ID_148_MIN_LEN 60
27#define MAVLINK_MSG_ID_AUTOPILOT_VERSION_CRC 178
28#define MAVLINK_MSG_ID_148_CRC 178
30#define MAVLINK_MSG_AUTOPILOT_VERSION_FIELD_FLIGHT_CUSTOM_VERSION_LEN 8
31#define MAVLINK_MSG_AUTOPILOT_VERSION_FIELD_MIDDLEWARE_CUSTOM_VERSION_LEN 8
32#define MAVLINK_MSG_AUTOPILOT_VERSION_FIELD_OS_CUSTOM_VERSION_LEN 8
33#define MAVLINK_MSG_AUTOPILOT_VERSION_FIELD_UID2_LEN 18
35#if MAVLINK_COMMAND_24BIT
36#define MAVLINK_MESSAGE_INFO_AUTOPILOT_VERSION { \
38 "AUTOPILOT_VERSION", \
40 { { "capabilities", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_autopilot_version_t, capabilities) }, \
41 { "flight_sw_version", NULL, MAVLINK_TYPE_UINT32_T, 0, 16, offsetof(mavlink_autopilot_version_t, flight_sw_version) }, \
42 { "middleware_sw_version", NULL, MAVLINK_TYPE_UINT32_T, 0, 20, offsetof(mavlink_autopilot_version_t, middleware_sw_version) }, \
43 { "os_sw_version", NULL, MAVLINK_TYPE_UINT32_T, 0, 24, offsetof(mavlink_autopilot_version_t, os_sw_version) }, \
44 { "board_version", NULL, MAVLINK_TYPE_UINT32_T, 0, 28, offsetof(mavlink_autopilot_version_t, board_version) }, \
45 { "flight_custom_version", NULL, MAVLINK_TYPE_UINT8_T, 8, 36, offsetof(mavlink_autopilot_version_t, flight_custom_version) }, \
46 { "middleware_custom_version", NULL, MAVLINK_TYPE_UINT8_T, 8, 44, offsetof(mavlink_autopilot_version_t, middleware_custom_version) }, \
47 { "os_custom_version", NULL, MAVLINK_TYPE_UINT8_T, 8, 52, offsetof(mavlink_autopilot_version_t, os_custom_version) }, \
48 { "vendor_id", NULL, MAVLINK_TYPE_UINT16_T, 0, 32, offsetof(mavlink_autopilot_version_t, vendor_id) }, \
49 { "product_id", NULL, MAVLINK_TYPE_UINT16_T, 0, 34, offsetof(mavlink_autopilot_version_t, product_id) }, \
50 { "uid", NULL, MAVLINK_TYPE_UINT64_T, 0, 8, offsetof(mavlink_autopilot_version_t, uid) }, \
51 { "uid2", NULL, MAVLINK_TYPE_UINT8_T, 18, 60, offsetof(mavlink_autopilot_version_t, uid2) }, \
55#define MAVLINK_MESSAGE_INFO_AUTOPILOT_VERSION { \
56 "AUTOPILOT_VERSION", \
58 { { "capabilities", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_autopilot_version_t, capabilities) }, \
59 { "flight_sw_version", NULL, MAVLINK_TYPE_UINT32_T, 0, 16, offsetof(mavlink_autopilot_version_t, flight_sw_version) }, \
60 { "middleware_sw_version", NULL, MAVLINK_TYPE_UINT32_T, 0, 20, offsetof(mavlink_autopilot_version_t, middleware_sw_version) }, \
61 { "os_sw_version", NULL, MAVLINK_TYPE_UINT32_T, 0, 24, offsetof(mavlink_autopilot_version_t, os_sw_version) }, \
62 { "board_version", NULL, MAVLINK_TYPE_UINT32_T, 0, 28, offsetof(mavlink_autopilot_version_t, board_version) }, \
63 { "flight_custom_version", NULL, MAVLINK_TYPE_UINT8_T, 8, 36, offsetof(mavlink_autopilot_version_t, flight_custom_version) }, \
64 { "middleware_custom_version", NULL, MAVLINK_TYPE_UINT8_T, 8, 44, offsetof(mavlink_autopilot_version_t, middleware_custom_version) }, \
65 { "os_custom_version", NULL, MAVLINK_TYPE_UINT8_T, 8, 52, offsetof(mavlink_autopilot_version_t, os_custom_version) }, \
66 { "vendor_id", NULL, MAVLINK_TYPE_UINT16_T, 0, 32, offsetof(mavlink_autopilot_version_t, vendor_id) }, \
67 { "product_id", NULL, MAVLINK_TYPE_UINT16_T, 0, 34, offsetof(mavlink_autopilot_version_t, product_id) }, \
68 { "uid", NULL, MAVLINK_TYPE_UINT64_T, 0, 8, offsetof(mavlink_autopilot_version_t, uid) }, \
69 { "uid2", NULL, MAVLINK_TYPE_UINT8_T, 18, 60, offsetof(mavlink_autopilot_version_t, uid2) }, \
94static inline uint16_t mavlink_msg_autopilot_version_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
95 uint64_t capabilities, uint32_t flight_sw_version, uint32_t middleware_sw_version, uint32_t os_sw_version, uint32_t board_version,
const uint8_t *flight_custom_version,
const uint8_t *middleware_custom_version,
const uint8_t *os_custom_version, uint16_t vendor_id, uint16_t product_id, uint64_t uid,
const uint8_t *uid2)
97#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
98 char buf[MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN];
99 _mav_put_uint64_t(buf, 0, capabilities);
100 _mav_put_uint64_t(buf, 8, uid);
101 _mav_put_uint32_t(buf, 16, flight_sw_version);
102 _mav_put_uint32_t(buf, 20, middleware_sw_version);
103 _mav_put_uint32_t(buf, 24, os_sw_version);
104 _mav_put_uint32_t(buf, 28, board_version);
105 _mav_put_uint16_t(buf, 32, vendor_id);
106 _mav_put_uint16_t(buf, 34, product_id);
107 _mav_put_uint8_t_array(buf, 36, flight_custom_version, 8);
108 _mav_put_uint8_t_array(buf, 44, middleware_custom_version, 8);
109 _mav_put_uint8_t_array(buf, 52, os_custom_version, 8);
110 _mav_put_uint8_t_array(buf, 60, uid2, 18);
111 memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN);
113 mavlink_autopilot_version_t packet;
114 packet.capabilities = capabilities;
116 packet.flight_sw_version = flight_sw_version;
117 packet.middleware_sw_version = middleware_sw_version;
118 packet.os_sw_version = os_sw_version;
119 packet.board_version = board_version;
120 packet.vendor_id = vendor_id;
121 packet.product_id = product_id;
122 mav_array_memcpy(packet.flight_custom_version, flight_custom_version,
sizeof(uint8_t)*8);
123 mav_array_memcpy(packet.middleware_custom_version, middleware_custom_version,
sizeof(uint8_t)*8);
124 mav_array_memcpy(packet.os_custom_version, os_custom_version,
sizeof(uint8_t)*8);
125 mav_array_memcpy(packet.uid2, uid2,
sizeof(uint8_t)*18);
126 memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN);
129 msg->msgid = MAVLINK_MSG_ID_AUTOPILOT_VERSION;
130 return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_AUTOPILOT_VERSION_MIN_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_CRC);
153static inline uint16_t mavlink_msg_autopilot_version_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
154 mavlink_message_t* msg,
155 uint64_t capabilities,uint32_t flight_sw_version,uint32_t middleware_sw_version,uint32_t os_sw_version,uint32_t board_version,
const uint8_t *flight_custom_version,
const uint8_t *middleware_custom_version,
const uint8_t *os_custom_version,uint16_t vendor_id,uint16_t product_id,uint64_t uid,
const uint8_t *uid2)
157#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
158 char buf[MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN];
159 _mav_put_uint64_t(buf, 0, capabilities);
160 _mav_put_uint64_t(buf, 8, uid);
161 _mav_put_uint32_t(buf, 16, flight_sw_version);
162 _mav_put_uint32_t(buf, 20, middleware_sw_version);
163 _mav_put_uint32_t(buf, 24, os_sw_version);
164 _mav_put_uint32_t(buf, 28, board_version);
165 _mav_put_uint16_t(buf, 32, vendor_id);
166 _mav_put_uint16_t(buf, 34, product_id);
167 _mav_put_uint8_t_array(buf, 36, flight_custom_version, 8);
168 _mav_put_uint8_t_array(buf, 44, middleware_custom_version, 8);
169 _mav_put_uint8_t_array(buf, 52, os_custom_version, 8);
170 _mav_put_uint8_t_array(buf, 60, uid2, 18);
171 memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN);
173 mavlink_autopilot_version_t packet;
174 packet.capabilities = capabilities;
176 packet.flight_sw_version = flight_sw_version;
177 packet.middleware_sw_version = middleware_sw_version;
178 packet.os_sw_version = os_sw_version;
179 packet.board_version = board_version;
180 packet.vendor_id = vendor_id;
181 packet.product_id = product_id;
182 mav_array_memcpy(packet.flight_custom_version, flight_custom_version,
sizeof(uint8_t)*8);
183 mav_array_memcpy(packet.middleware_custom_version, middleware_custom_version,
sizeof(uint8_t)*8);
184 mav_array_memcpy(packet.os_custom_version, os_custom_version,
sizeof(uint8_t)*8);
185 mav_array_memcpy(packet.uid2, uid2,
sizeof(uint8_t)*18);
186 memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN);
189 msg->msgid = MAVLINK_MSG_ID_AUTOPILOT_VERSION;
190 return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_AUTOPILOT_VERSION_MIN_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_CRC);
201static inline uint16_t mavlink_msg_autopilot_version_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
const mavlink_autopilot_version_t* autopilot_version)
203 return mavlink_msg_autopilot_version_pack(system_id, component_id, msg, autopilot_version->capabilities, autopilot_version->flight_sw_version, autopilot_version->middleware_sw_version, autopilot_version->os_sw_version, autopilot_version->board_version, autopilot_version->flight_custom_version, autopilot_version->middleware_custom_version, autopilot_version->os_custom_version, autopilot_version->vendor_id, autopilot_version->product_id, autopilot_version->uid, autopilot_version->uid2);
215static inline uint16_t mavlink_msg_autopilot_version_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg,
const mavlink_autopilot_version_t* autopilot_version)
217 return mavlink_msg_autopilot_version_pack_chan(system_id, component_id, chan, msg, autopilot_version->capabilities, autopilot_version->flight_sw_version, autopilot_version->middleware_sw_version, autopilot_version->os_sw_version, autopilot_version->board_version, autopilot_version->flight_custom_version, autopilot_version->middleware_custom_version, autopilot_version->os_custom_version, autopilot_version->vendor_id, autopilot_version->product_id, autopilot_version->uid, autopilot_version->uid2);
237#ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
239static inline void mavlink_msg_autopilot_version_send(mavlink_channel_t chan, uint64_t capabilities, uint32_t flight_sw_version, uint32_t middleware_sw_version, uint32_t os_sw_version, uint32_t board_version,
const uint8_t *flight_custom_version,
const uint8_t *middleware_custom_version,
const uint8_t *os_custom_version, uint16_t vendor_id, uint16_t product_id, uint64_t uid,
const uint8_t *uid2)
241#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
242 char buf[MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN];
243 _mav_put_uint64_t(buf, 0, capabilities);
244 _mav_put_uint64_t(buf, 8, uid);
245 _mav_put_uint32_t(buf, 16, flight_sw_version);
246 _mav_put_uint32_t(buf, 20, middleware_sw_version);
247 _mav_put_uint32_t(buf, 24, os_sw_version);
248 _mav_put_uint32_t(buf, 28, board_version);
249 _mav_put_uint16_t(buf, 32, vendor_id);
250 _mav_put_uint16_t(buf, 34, product_id);
251 _mav_put_uint8_t_array(buf, 36, flight_custom_version, 8);
252 _mav_put_uint8_t_array(buf, 44, middleware_custom_version, 8);
253 _mav_put_uint8_t_array(buf, 52, os_custom_version, 8);
254 _mav_put_uint8_t_array(buf, 60, uid2, 18);
255 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_AUTOPILOT_VERSION, buf, MAVLINK_MSG_ID_AUTOPILOT_VERSION_MIN_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_CRC);
257 mavlink_autopilot_version_t packet;
258 packet.capabilities = capabilities;
260 packet.flight_sw_version = flight_sw_version;
261 packet.middleware_sw_version = middleware_sw_version;
262 packet.os_sw_version = os_sw_version;
263 packet.board_version = board_version;
264 packet.vendor_id = vendor_id;
265 packet.product_id = product_id;
266 mav_array_memcpy(packet.flight_custom_version, flight_custom_version,
sizeof(uint8_t)*8);
267 mav_array_memcpy(packet.middleware_custom_version, middleware_custom_version,
sizeof(uint8_t)*8);
268 mav_array_memcpy(packet.os_custom_version, os_custom_version,
sizeof(uint8_t)*8);
269 mav_array_memcpy(packet.uid2, uid2,
sizeof(uint8_t)*18);
270 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_AUTOPILOT_VERSION, (
const char *)&packet, MAVLINK_MSG_ID_AUTOPILOT_VERSION_MIN_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_CRC);
279static inline void mavlink_msg_autopilot_version_send_struct(mavlink_channel_t chan,
const mavlink_autopilot_version_t* autopilot_version)
281#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
282 mavlink_msg_autopilot_version_send(chan, autopilot_version->capabilities, autopilot_version->flight_sw_version, autopilot_version->middleware_sw_version, autopilot_version->os_sw_version, autopilot_version->board_version, autopilot_version->flight_custom_version, autopilot_version->middleware_custom_version, autopilot_version->os_custom_version, autopilot_version->vendor_id, autopilot_version->product_id, autopilot_version->uid, autopilot_version->uid2);
284 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_AUTOPILOT_VERSION, (
const char *)autopilot_version, MAVLINK_MSG_ID_AUTOPILOT_VERSION_MIN_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_CRC);
288#if MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN <= MAVLINK_MAX_PAYLOAD_LEN
296static inline void mavlink_msg_autopilot_version_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, uint64_t capabilities, uint32_t flight_sw_version, uint32_t middleware_sw_version, uint32_t os_sw_version, uint32_t board_version,
const uint8_t *flight_custom_version,
const uint8_t *middleware_custom_version,
const uint8_t *os_custom_version, uint16_t vendor_id, uint16_t product_id, uint64_t uid,
const uint8_t *uid2)
298#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
299 char *buf = (
char *)msgbuf;
300 _mav_put_uint64_t(buf, 0, capabilities);
301 _mav_put_uint64_t(buf, 8, uid);
302 _mav_put_uint32_t(buf, 16, flight_sw_version);
303 _mav_put_uint32_t(buf, 20, middleware_sw_version);
304 _mav_put_uint32_t(buf, 24, os_sw_version);
305 _mav_put_uint32_t(buf, 28, board_version);
306 _mav_put_uint16_t(buf, 32, vendor_id);
307 _mav_put_uint16_t(buf, 34, product_id);
308 _mav_put_uint8_t_array(buf, 36, flight_custom_version, 8);
309 _mav_put_uint8_t_array(buf, 44, middleware_custom_version, 8);
310 _mav_put_uint8_t_array(buf, 52, os_custom_version, 8);
311 _mav_put_uint8_t_array(buf, 60, uid2, 18);
312 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_AUTOPILOT_VERSION, buf, MAVLINK_MSG_ID_AUTOPILOT_VERSION_MIN_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_CRC);
314 mavlink_autopilot_version_t *packet = (mavlink_autopilot_version_t *)msgbuf;
315 packet->capabilities = capabilities;
317 packet->flight_sw_version = flight_sw_version;
318 packet->middleware_sw_version = middleware_sw_version;
319 packet->os_sw_version = os_sw_version;
320 packet->board_version = board_version;
321 packet->vendor_id = vendor_id;
322 packet->product_id = product_id;
323 mav_array_memcpy(packet->flight_custom_version, flight_custom_version,
sizeof(uint8_t)*8);
324 mav_array_memcpy(packet->middleware_custom_version, middleware_custom_version,
sizeof(uint8_t)*8);
325 mav_array_memcpy(packet->os_custom_version, os_custom_version,
sizeof(uint8_t)*8);
326 mav_array_memcpy(packet->uid2, uid2,
sizeof(uint8_t)*18);
327 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_AUTOPILOT_VERSION, (
const char *)packet, MAVLINK_MSG_ID_AUTOPILOT_VERSION_MIN_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN, MAVLINK_MSG_ID_AUTOPILOT_VERSION_CRC);
342static inline uint64_t mavlink_msg_autopilot_version_get_capabilities(
const mavlink_message_t* msg)
344 return _MAV_RETURN_uint64_t(msg, 0);
352static inline uint32_t mavlink_msg_autopilot_version_get_flight_sw_version(
const mavlink_message_t* msg)
354 return _MAV_RETURN_uint32_t(msg, 16);
362static inline uint32_t mavlink_msg_autopilot_version_get_middleware_sw_version(
const mavlink_message_t* msg)
364 return _MAV_RETURN_uint32_t(msg, 20);
372static inline uint32_t mavlink_msg_autopilot_version_get_os_sw_version(
const mavlink_message_t* msg)
374 return _MAV_RETURN_uint32_t(msg, 24);
382static inline uint32_t mavlink_msg_autopilot_version_get_board_version(
const mavlink_message_t* msg)
384 return _MAV_RETURN_uint32_t(msg, 28);
392static inline uint16_t mavlink_msg_autopilot_version_get_flight_custom_version(
const mavlink_message_t* msg, uint8_t *flight_custom_version)
394 return _MAV_RETURN_uint8_t_array(msg, flight_custom_version, 8, 36);
402static inline uint16_t mavlink_msg_autopilot_version_get_middleware_custom_version(
const mavlink_message_t* msg, uint8_t *middleware_custom_version)
404 return _MAV_RETURN_uint8_t_array(msg, middleware_custom_version, 8, 44);
412static inline uint16_t mavlink_msg_autopilot_version_get_os_custom_version(
const mavlink_message_t* msg, uint8_t *os_custom_version)
414 return _MAV_RETURN_uint8_t_array(msg, os_custom_version, 8, 52);
422static inline uint16_t mavlink_msg_autopilot_version_get_vendor_id(
const mavlink_message_t* msg)
424 return _MAV_RETURN_uint16_t(msg, 32);
432static inline uint16_t mavlink_msg_autopilot_version_get_product_id(
const mavlink_message_t* msg)
434 return _MAV_RETURN_uint16_t(msg, 34);
442static inline uint64_t mavlink_msg_autopilot_version_get_uid(
const mavlink_message_t* msg)
444 return _MAV_RETURN_uint64_t(msg, 8);
452static inline uint16_t mavlink_msg_autopilot_version_get_uid2(
const mavlink_message_t* msg, uint8_t *uid2)
454 return _MAV_RETURN_uint8_t_array(msg, uid2, 18, 60);
463static inline void mavlink_msg_autopilot_version_decode(
const mavlink_message_t* msg, mavlink_autopilot_version_t* autopilot_version)
465#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
466 autopilot_version->capabilities = mavlink_msg_autopilot_version_get_capabilities(msg);
467 autopilot_version->uid = mavlink_msg_autopilot_version_get_uid(msg);
468 autopilot_version->flight_sw_version = mavlink_msg_autopilot_version_get_flight_sw_version(msg);
469 autopilot_version->middleware_sw_version = mavlink_msg_autopilot_version_get_middleware_sw_version(msg);
470 autopilot_version->os_sw_version = mavlink_msg_autopilot_version_get_os_sw_version(msg);
471 autopilot_version->board_version = mavlink_msg_autopilot_version_get_board_version(msg);
472 autopilot_version->vendor_id = mavlink_msg_autopilot_version_get_vendor_id(msg);
473 autopilot_version->product_id = mavlink_msg_autopilot_version_get_product_id(msg);
474 mavlink_msg_autopilot_version_get_flight_custom_version(msg, autopilot_version->flight_custom_version);
475 mavlink_msg_autopilot_version_get_middleware_custom_version(msg, autopilot_version->middleware_custom_version);
476 mavlink_msg_autopilot_version_get_os_custom_version(msg, autopilot_version->os_custom_version);
477 mavlink_msg_autopilot_version_get_uid2(msg, autopilot_version->uid2);
479 uint8_t len = msg->len < MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN? msg->len : MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN;
480 memset(autopilot_version, 0, MAVLINK_MSG_ID_AUTOPILOT_VERSION_LEN);
481 memcpy(autopilot_version, _MAV_PAYLOAD(msg), len);