From fe0c2d1352bdf6d7f6dce3b01ff60deb2ba15bdd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beat=20K=C3=BCng?= Date: Wed, 27 Mar 2019 16:39:28 +0100 Subject: [PATCH] mavlink autopilot_version: add vendor version --- src/modules/mavlink/mavlink_main.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/modules/mavlink/mavlink_main.cpp b/src/modules/mavlink/mavlink_main.cpp index 0d76e299c3..4cc1e1d3f4 100644 --- a/src/modules/mavlink/mavlink_main.cpp +++ b/src/modules/mavlink/mavlink_main.cpp @@ -1227,8 +1227,12 @@ Mavlink::send_autopilot_capabilites() msg.middleware_sw_version = px4_firmware_version(); msg.os_sw_version = px4_os_version(); msg.board_version = px4_board_version(); - uint64_t fw_git_version_binary = px4_firmware_version_binary(); + /* use only first 5 bytes of git hash for firmware version */ + const uint64_t fw_git_version_binary = px4_firmware_version_binary() & 0xFFFFFFFFFF000000; + const uint64_t fw_vendor_version = px4_firmware_vendor_version() >> 8; + constexpr size_t fw_vendor_version_length = 3; memcpy(&msg.flight_custom_version, &fw_git_version_binary, sizeof(msg.flight_custom_version)); + memcpy(&msg.flight_custom_version, &fw_vendor_version, fw_vendor_version_length); memcpy(&msg.middleware_custom_version, &fw_git_version_binary, sizeof(msg.middleware_custom_version)); uint64_t os_git_version_binary = px4_os_version_binary(); memcpy(&msg.os_custom_version, &os_git_version_binary, sizeof(msg.os_custom_version));