diff --git a/src/modules/mavlink/mavlink_messages.cpp b/src/modules/mavlink/mavlink_messages.cpp index 4d106f7441263e3f8a4bd68b8eeef12a1c68640e..55bf66d207e7fa8cd0cf67b1656af849e16045cc 100644 --- a/src/modules/mavlink/mavlink_messages.cpp +++ b/src/modules/mavlink/mavlink_messages.cpp @@ -1775,9 +1775,16 @@ protected: msg.flags |= UTM_DATA_AVAIL_FLAGS_TIME_VALID; } +#ifndef BOARD_HAS_NO_UUID + px4_guid_t px4_guid; + board_get_px4_guid(px4_guid); + static_assert(sizeof(px4_guid_t) == sizeof(msg.uas_id), "GUID byte length mismatch"); + memcpy(&msg.uas_id, &px4_guid, sizeof(msg.uas_id)); + msg.flags |= UTM_DATA_AVAIL_FLAGS_UAS_ID_AVAILABLE; +#else // TODO Fill ID with something reasonable memset(&msg.uas_id[0], 0, sizeof(msg.uas_id)); - //msg.flags |= UTM_DATA_AVAIL_FLAGS_UAS_ID_AVAILABLE; +#endif /* BOARD_HAS_NO_UUID */ // Handle global position if (_global_pos_time > 0) {