From 66bb1ac7dcb1fe8c57f41b4ed4e116c473b86d8a Mon Sep 17 00:00:00 2001 From: Davide Mor <davide.mor@skywarder.eu> Date: Sat, 5 Aug 2023 14:16:21 +0000 Subject: [PATCH] [GS] Updated receiver TM in accordance with double receiver GS board --- mavlink_lib/gemini/gemini.h | 8 +- mavlink_lib/gemini/mavlink.h | 2 +- mavlink_lib/gemini/mavlink_msg_receiver_tm.h | 482 +++++++++++++++---- mavlink_lib/gemini/testsuite.h | 28 +- mavlink_lib/gemini/version.h | 2 +- message_definitions/gemini.xml | 20 +- 6 files changed, 433 insertions(+), 109 deletions(-) diff --git a/mavlink_lib/gemini/gemini.h b/mavlink_lib/gemini/gemini.h index 4f5aade..ec436e1 100644 --- a/mavlink_lib/gemini/gemini.h +++ b/mavlink_lib/gemini/gemini.h @@ -11,7 +11,7 @@ #endif #undef MAVLINK_THIS_XML_HASH -#define MAVLINK_THIS_XML_HASH 963685179791805278 +#define MAVLINK_THIS_XML_HASH -7592676323702278911 #ifdef __cplusplus extern "C" { @@ -20,11 +20,11 @@ extern "C" { // MESSAGE LENGTHS AND CRCS #ifndef MAVLINK_MESSAGE_LENGTHS -#define MAVLINK_MESSAGE_LENGTHS {0, 8, 1, 1, 1, 1, 5, 1, 1, 4, 4, 12, 8, 2, 4, 8, 1, 5, 5, 7, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 74, 64, 32, 44, 32, 32, 32, 32, 56, 21, 5, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 14, 46, 28, 27, 53, 77, 0, 171, 162, 92, 76, 42, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} +#define MAVLINK_MESSAGE_LENGTHS {0, 8, 1, 1, 1, 1, 5, 1, 1, 4, 4, 12, 8, 2, 4, 8, 1, 5, 5, 7, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 74, 64, 32, 44, 32, 32, 32, 32, 56, 21, 5, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 14, 46, 28, 27, 53, 77, 0, 171, 162, 92, 76, 42, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} #endif #ifndef MAVLINK_MESSAGE_CRCS -#define MAVLINK_MESSAGE_CRCS {0, 136, 198, 165, 248, 184, 215, 160, 226, 113, 38, 71, 67, 218, 44, 81, 181, 110, 22, 65, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 146, 57, 72, 87, 223, 245, 212, 140, 148, 6, 155, 87, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 183, 242, 142, 108, 133, 234, 66, 0, 141, 6, 245, 115, 89, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} +#define MAVLINK_MESSAGE_CRCS {0, 136, 198, 165, 248, 184, 215, 160, 226, 113, 38, 71, 67, 218, 44, 81, 181, 110, 22, 65, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 146, 57, 72, 87, 223, 245, 212, 140, 148, 6, 155, 87, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 183, 242, 142, 108, 133, 234, 66, 0, 141, 6, 245, 115, 89, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} #endif #include "../protocol.h" @@ -215,7 +215,7 @@ typedef enum PinsList #undef MAVLINK_THIS_XML_HASH -#define MAVLINK_THIS_XML_HASH 963685179791805278 +#define MAVLINK_THIS_XML_HASH -7592676323702278911 #if MAVLINK_THIS_XML_HASH == MAVLINK_PRIMARY_XML_HASH # define MAVLINK_MESSAGE_INFO {{"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_PING_TC, MAVLINK_MESSAGE_INFO_COMMAND_TC, MAVLINK_MESSAGE_INFO_SYSTEM_TM_REQUEST_TC, MAVLINK_MESSAGE_INFO_SENSOR_TM_REQUEST_TC, MAVLINK_MESSAGE_INFO_SERVO_TM_REQUEST_TC, MAVLINK_MESSAGE_INFO_SET_SERVO_ANGLE_TC, MAVLINK_MESSAGE_INFO_WIGGLE_SERVO_TC, MAVLINK_MESSAGE_INFO_RESET_SERVO_TC, MAVLINK_MESSAGE_INFO_SET_REFERENCE_ALTITUDE_TC, MAVLINK_MESSAGE_INFO_SET_REFERENCE_TEMPERATURE_TC, MAVLINK_MESSAGE_INFO_SET_ORIENTATION_TC, MAVLINK_MESSAGE_INFO_SET_COORDINATES_TC, MAVLINK_MESSAGE_INFO_RAW_EVENT_TC, MAVLINK_MESSAGE_INFO_SET_DEPLOYMENT_ALTITUDE_TC, MAVLINK_MESSAGE_INFO_SET_TARGET_COORDINATES_TC, MAVLINK_MESSAGE_INFO_SET_ALGORITHM_TC, MAVLINK_MESSAGE_INFO_SET_ATOMIC_VALVE_TIMING_TC, MAVLINK_MESSAGE_INFO_SET_VALVE_MAXIMUM_APERTURE_TC, MAVLINK_MESSAGE_INFO_CONRIG_STATE_TC, MAVLINK_MESSAGE_INFO_SET_IGNITION_TIME_TC, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_ACK_TM, MAVLINK_MESSAGE_INFO_NACK_TM, MAVLINK_MESSAGE_INFO_GPS_TM, MAVLINK_MESSAGE_INFO_IMU_TM, MAVLINK_MESSAGE_INFO_PRESSURE_TM, MAVLINK_MESSAGE_INFO_ADC_TM, MAVLINK_MESSAGE_INFO_VOLTAGE_TM, MAVLINK_MESSAGE_INFO_CURRENT_TM, MAVLINK_MESSAGE_INFO_TEMP_TM, MAVLINK_MESSAGE_INFO_LOAD_TM, MAVLINK_MESSAGE_INFO_ATTITUDE_TM, MAVLINK_MESSAGE_INFO_SENSOR_STATE_TM, MAVLINK_MESSAGE_INFO_SERVO_TM, MAVLINK_MESSAGE_INFO_PIN_TM, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_RECEIVER_TM, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_SYS_TM, MAVLINK_MESSAGE_INFO_FSM_TM, MAVLINK_MESSAGE_INFO_LOGGER_TM, MAVLINK_MESSAGE_INFO_MAVLINK_STATS_TM, MAVLINK_MESSAGE_INFO_TASK_STATS_TM, MAVLINK_MESSAGE_INFO_ADA_TM, MAVLINK_MESSAGE_INFO_NAS_TM, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_ROCKET_FLIGHT_TM, MAVLINK_MESSAGE_INFO_PAYLOAD_FLIGHT_TM, MAVLINK_MESSAGE_INFO_ROCKET_STATS_TM, MAVLINK_MESSAGE_INFO_PAYLOAD_STATS_TM, MAVLINK_MESSAGE_INFO_GSE_TM, MAVLINK_MESSAGE_INFO_MOTOR_TM, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}} diff --git a/mavlink_lib/gemini/mavlink.h b/mavlink_lib/gemini/mavlink.h index 8abe416..de596de 100644 --- a/mavlink_lib/gemini/mavlink.h +++ b/mavlink_lib/gemini/mavlink.h @@ -6,7 +6,7 @@ #ifndef MAVLINK_H #define MAVLINK_H -#define MAVLINK_PRIMARY_XML_HASH 963685179791805278 +#define MAVLINK_PRIMARY_XML_HASH -7592676323702278911 #ifndef MAVLINK_STX #define MAVLINK_STX 254 diff --git a/mavlink_lib/gemini/mavlink_msg_receiver_tm.h b/mavlink_lib/gemini/mavlink_msg_receiver_tm.h index 2b22243..bf484b6 100644 --- a/mavlink_lib/gemini/mavlink_msg_receiver_tm.h +++ b/mavlink_lib/gemini/mavlink_msg_receiver_tm.h @@ -6,19 +6,31 @@ typedef struct __mavlink_receiver_tm_t { uint64_t timestamp; /*< [us] Timestamp*/ - uint64_t rx_bitrate; /*< [kb/s] Rx bitrate*/ - uint64_t tx_bitrate; /*< [kb/s] Tx bitrate*/ - float rssi; /*< [dBm] Rssi*/ - float fei; /*< [Hz] Fei*/ + float main_rx_rssi; /*< [dBm] Receive RSSI*/ + float main_rx_fei; /*< [Hz] Receive frequency error index*/ + float payload_rx_rssi; /*< [dBm] Receive RSSI*/ + float payload_rx_fei; /*< [Hz] Receive frequency error index*/ + uint16_t main_packet_tx_error_count; /*< Number of errors during send*/ + uint16_t main_tx_bitrate; /*< [b/s] Send bitrate*/ + uint16_t main_packet_rx_success_count; /*< Number of succesfull received mavlink packets*/ + uint16_t main_packet_rx_drop_count; /*< Number of dropped mavlink packets*/ + uint16_t main_rx_bitrate; /*< [b/s] Receive bitrate*/ + uint16_t payload_packet_tx_error_count; /*< Number of errors during send*/ + uint16_t payload_tx_bitrate; /*< [b/s] Send bitrate*/ + uint16_t payload_packet_rx_success_count; /*< Number of succesfull received mavlink packets*/ + uint16_t payload_packet_rx_drop_count; /*< Number of dropped mavlink packets*/ + uint16_t payload_rx_bitrate; /*< [b/s] Receive bitrate*/ + uint8_t main_radio_present; /*< Boolean indicating the presence of the main radio*/ + uint8_t payload_radio_present; /*< Boolean indicating the presence of the payload radio*/ } mavlink_receiver_tm_t; -#define MAVLINK_MSG_ID_RECEIVER_TM_LEN 32 -#define MAVLINK_MSG_ID_RECEIVER_TM_MIN_LEN 32 -#define MAVLINK_MSG_ID_150_LEN 32 -#define MAVLINK_MSG_ID_150_MIN_LEN 32 +#define MAVLINK_MSG_ID_RECEIVER_TM_LEN 46 +#define MAVLINK_MSG_ID_RECEIVER_TM_MIN_LEN 46 +#define MAVLINK_MSG_ID_150_LEN 46 +#define MAVLINK_MSG_ID_150_MIN_LEN 46 -#define MAVLINK_MSG_ID_RECEIVER_TM_CRC 109 -#define MAVLINK_MSG_ID_150_CRC 109 +#define MAVLINK_MSG_ID_RECEIVER_TM_CRC 104 +#define MAVLINK_MSG_ID_150_CRC 104 @@ -26,23 +38,47 @@ typedef struct __mavlink_receiver_tm_t { #define MAVLINK_MESSAGE_INFO_RECEIVER_TM { \ 150, \ "RECEIVER_TM", \ - 5, \ + 17, \ { { "timestamp", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_receiver_tm_t, timestamp) }, \ - { "rssi", NULL, MAVLINK_TYPE_FLOAT, 0, 24, offsetof(mavlink_receiver_tm_t, rssi) }, \ - { "fei", NULL, MAVLINK_TYPE_FLOAT, 0, 28, offsetof(mavlink_receiver_tm_t, fei) }, \ - { "rx_bitrate", NULL, MAVLINK_TYPE_UINT64_T, 0, 8, offsetof(mavlink_receiver_tm_t, rx_bitrate) }, \ - { "tx_bitrate", NULL, MAVLINK_TYPE_UINT64_T, 0, 16, offsetof(mavlink_receiver_tm_t, tx_bitrate) }, \ + { "main_radio_present", NULL, MAVLINK_TYPE_UINT8_T, 0, 44, offsetof(mavlink_receiver_tm_t, main_radio_present) }, \ + { "main_packet_tx_error_count", NULL, MAVLINK_TYPE_UINT16_T, 0, 24, offsetof(mavlink_receiver_tm_t, main_packet_tx_error_count) }, \ + { "main_tx_bitrate", NULL, MAVLINK_TYPE_UINT16_T, 0, 26, offsetof(mavlink_receiver_tm_t, main_tx_bitrate) }, \ + { "main_packet_rx_success_count", NULL, MAVLINK_TYPE_UINT16_T, 0, 28, offsetof(mavlink_receiver_tm_t, main_packet_rx_success_count) }, \ + { "main_packet_rx_drop_count", NULL, MAVLINK_TYPE_UINT16_T, 0, 30, offsetof(mavlink_receiver_tm_t, main_packet_rx_drop_count) }, \ + { "main_rx_bitrate", NULL, MAVLINK_TYPE_UINT16_T, 0, 32, offsetof(mavlink_receiver_tm_t, main_rx_bitrate) }, \ + { "main_rx_rssi", NULL, MAVLINK_TYPE_FLOAT, 0, 8, offsetof(mavlink_receiver_tm_t, main_rx_rssi) }, \ + { "main_rx_fei", NULL, MAVLINK_TYPE_FLOAT, 0, 12, offsetof(mavlink_receiver_tm_t, main_rx_fei) }, \ + { "payload_radio_present", NULL, MAVLINK_TYPE_UINT8_T, 0, 45, offsetof(mavlink_receiver_tm_t, payload_radio_present) }, \ + { "payload_packet_tx_error_count", NULL, MAVLINK_TYPE_UINT16_T, 0, 34, offsetof(mavlink_receiver_tm_t, payload_packet_tx_error_count) }, \ + { "payload_tx_bitrate", NULL, MAVLINK_TYPE_UINT16_T, 0, 36, offsetof(mavlink_receiver_tm_t, payload_tx_bitrate) }, \ + { "payload_packet_rx_success_count", NULL, MAVLINK_TYPE_UINT16_T, 0, 38, offsetof(mavlink_receiver_tm_t, payload_packet_rx_success_count) }, \ + { "payload_packet_rx_drop_count", NULL, MAVLINK_TYPE_UINT16_T, 0, 40, offsetof(mavlink_receiver_tm_t, payload_packet_rx_drop_count) }, \ + { "payload_rx_bitrate", NULL, MAVLINK_TYPE_UINT16_T, 0, 42, offsetof(mavlink_receiver_tm_t, payload_rx_bitrate) }, \ + { "payload_rx_rssi", NULL, MAVLINK_TYPE_FLOAT, 0, 16, offsetof(mavlink_receiver_tm_t, payload_rx_rssi) }, \ + { "payload_rx_fei", NULL, MAVLINK_TYPE_FLOAT, 0, 20, offsetof(mavlink_receiver_tm_t, payload_rx_fei) }, \ } \ } #else #define MAVLINK_MESSAGE_INFO_RECEIVER_TM { \ "RECEIVER_TM", \ - 5, \ + 17, \ { { "timestamp", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_receiver_tm_t, timestamp) }, \ - { "rssi", NULL, MAVLINK_TYPE_FLOAT, 0, 24, offsetof(mavlink_receiver_tm_t, rssi) }, \ - { "fei", NULL, MAVLINK_TYPE_FLOAT, 0, 28, offsetof(mavlink_receiver_tm_t, fei) }, \ - { "rx_bitrate", NULL, MAVLINK_TYPE_UINT64_T, 0, 8, offsetof(mavlink_receiver_tm_t, rx_bitrate) }, \ - { "tx_bitrate", NULL, MAVLINK_TYPE_UINT64_T, 0, 16, offsetof(mavlink_receiver_tm_t, tx_bitrate) }, \ + { "main_radio_present", NULL, MAVLINK_TYPE_UINT8_T, 0, 44, offsetof(mavlink_receiver_tm_t, main_radio_present) }, \ + { "main_packet_tx_error_count", NULL, MAVLINK_TYPE_UINT16_T, 0, 24, offsetof(mavlink_receiver_tm_t, main_packet_tx_error_count) }, \ + { "main_tx_bitrate", NULL, MAVLINK_TYPE_UINT16_T, 0, 26, offsetof(mavlink_receiver_tm_t, main_tx_bitrate) }, \ + { "main_packet_rx_success_count", NULL, MAVLINK_TYPE_UINT16_T, 0, 28, offsetof(mavlink_receiver_tm_t, main_packet_rx_success_count) }, \ + { "main_packet_rx_drop_count", NULL, MAVLINK_TYPE_UINT16_T, 0, 30, offsetof(mavlink_receiver_tm_t, main_packet_rx_drop_count) }, \ + { "main_rx_bitrate", NULL, MAVLINK_TYPE_UINT16_T, 0, 32, offsetof(mavlink_receiver_tm_t, main_rx_bitrate) }, \ + { "main_rx_rssi", NULL, MAVLINK_TYPE_FLOAT, 0, 8, offsetof(mavlink_receiver_tm_t, main_rx_rssi) }, \ + { "main_rx_fei", NULL, MAVLINK_TYPE_FLOAT, 0, 12, offsetof(mavlink_receiver_tm_t, main_rx_fei) }, \ + { "payload_radio_present", NULL, MAVLINK_TYPE_UINT8_T, 0, 45, offsetof(mavlink_receiver_tm_t, payload_radio_present) }, \ + { "payload_packet_tx_error_count", NULL, MAVLINK_TYPE_UINT16_T, 0, 34, offsetof(mavlink_receiver_tm_t, payload_packet_tx_error_count) }, \ + { "payload_tx_bitrate", NULL, MAVLINK_TYPE_UINT16_T, 0, 36, offsetof(mavlink_receiver_tm_t, payload_tx_bitrate) }, \ + { "payload_packet_rx_success_count", NULL, MAVLINK_TYPE_UINT16_T, 0, 38, offsetof(mavlink_receiver_tm_t, payload_packet_rx_success_count) }, \ + { "payload_packet_rx_drop_count", NULL, MAVLINK_TYPE_UINT16_T, 0, 40, offsetof(mavlink_receiver_tm_t, payload_packet_rx_drop_count) }, \ + { "payload_rx_bitrate", NULL, MAVLINK_TYPE_UINT16_T, 0, 42, offsetof(mavlink_receiver_tm_t, payload_rx_bitrate) }, \ + { "payload_rx_rssi", NULL, MAVLINK_TYPE_FLOAT, 0, 16, offsetof(mavlink_receiver_tm_t, payload_rx_rssi) }, \ + { "payload_rx_fei", NULL, MAVLINK_TYPE_FLOAT, 0, 20, offsetof(mavlink_receiver_tm_t, payload_rx_fei) }, \ } \ } #endif @@ -54,31 +90,67 @@ typedef struct __mavlink_receiver_tm_t { * @param msg The MAVLink message to compress the data into * * @param timestamp [us] Timestamp - * @param rssi [dBm] Rssi - * @param fei [Hz] Fei - * @param rx_bitrate [kb/s] Rx bitrate - * @param tx_bitrate [kb/s] Tx bitrate + * @param main_radio_present Boolean indicating the presence of the main radio + * @param main_packet_tx_error_count Number of errors during send + * @param main_tx_bitrate [b/s] Send bitrate + * @param main_packet_rx_success_count Number of succesfull received mavlink packets + * @param main_packet_rx_drop_count Number of dropped mavlink packets + * @param main_rx_bitrate [b/s] Receive bitrate + * @param main_rx_rssi [dBm] Receive RSSI + * @param main_rx_fei [Hz] Receive frequency error index + * @param payload_radio_present Boolean indicating the presence of the payload radio + * @param payload_packet_tx_error_count Number of errors during send + * @param payload_tx_bitrate [b/s] Send bitrate + * @param payload_packet_rx_success_count Number of succesfull received mavlink packets + * @param payload_packet_rx_drop_count Number of dropped mavlink packets + * @param payload_rx_bitrate [b/s] Receive bitrate + * @param payload_rx_rssi [dBm] Receive RSSI + * @param payload_rx_fei [Hz] Receive frequency error index * @return length of the message in bytes (excluding serial stream start sign) */ static inline uint16_t mavlink_msg_receiver_tm_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, - uint64_t timestamp, float rssi, float fei, uint64_t rx_bitrate, uint64_t tx_bitrate) + uint64_t timestamp, uint8_t main_radio_present, uint16_t main_packet_tx_error_count, uint16_t main_tx_bitrate, uint16_t main_packet_rx_success_count, uint16_t main_packet_rx_drop_count, uint16_t main_rx_bitrate, float main_rx_rssi, float main_rx_fei, uint8_t payload_radio_present, uint16_t payload_packet_tx_error_count, uint16_t payload_tx_bitrate, uint16_t payload_packet_rx_success_count, uint16_t payload_packet_rx_drop_count, uint16_t payload_rx_bitrate, float payload_rx_rssi, float payload_rx_fei) { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS char buf[MAVLINK_MSG_ID_RECEIVER_TM_LEN]; _mav_put_uint64_t(buf, 0, timestamp); - _mav_put_uint64_t(buf, 8, rx_bitrate); - _mav_put_uint64_t(buf, 16, tx_bitrate); - _mav_put_float(buf, 24, rssi); - _mav_put_float(buf, 28, fei); + _mav_put_float(buf, 8, main_rx_rssi); + _mav_put_float(buf, 12, main_rx_fei); + _mav_put_float(buf, 16, payload_rx_rssi); + _mav_put_float(buf, 20, payload_rx_fei); + _mav_put_uint16_t(buf, 24, main_packet_tx_error_count); + _mav_put_uint16_t(buf, 26, main_tx_bitrate); + _mav_put_uint16_t(buf, 28, main_packet_rx_success_count); + _mav_put_uint16_t(buf, 30, main_packet_rx_drop_count); + _mav_put_uint16_t(buf, 32, main_rx_bitrate); + _mav_put_uint16_t(buf, 34, payload_packet_tx_error_count); + _mav_put_uint16_t(buf, 36, payload_tx_bitrate); + _mav_put_uint16_t(buf, 38, payload_packet_rx_success_count); + _mav_put_uint16_t(buf, 40, payload_packet_rx_drop_count); + _mav_put_uint16_t(buf, 42, payload_rx_bitrate); + _mav_put_uint8_t(buf, 44, main_radio_present); + _mav_put_uint8_t(buf, 45, payload_radio_present); memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_RECEIVER_TM_LEN); #else mavlink_receiver_tm_t packet; packet.timestamp = timestamp; - packet.rx_bitrate = rx_bitrate; - packet.tx_bitrate = tx_bitrate; - packet.rssi = rssi; - packet.fei = fei; + packet.main_rx_rssi = main_rx_rssi; + packet.main_rx_fei = main_rx_fei; + packet.payload_rx_rssi = payload_rx_rssi; + packet.payload_rx_fei = payload_rx_fei; + packet.main_packet_tx_error_count = main_packet_tx_error_count; + packet.main_tx_bitrate = main_tx_bitrate; + packet.main_packet_rx_success_count = main_packet_rx_success_count; + packet.main_packet_rx_drop_count = main_packet_rx_drop_count; + packet.main_rx_bitrate = main_rx_bitrate; + packet.payload_packet_tx_error_count = payload_packet_tx_error_count; + packet.payload_tx_bitrate = payload_tx_bitrate; + packet.payload_packet_rx_success_count = payload_packet_rx_success_count; + packet.payload_packet_rx_drop_count = payload_packet_rx_drop_count; + packet.payload_rx_bitrate = payload_rx_bitrate; + packet.main_radio_present = main_radio_present; + packet.payload_radio_present = payload_radio_present; memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_RECEIVER_TM_LEN); #endif @@ -94,32 +166,68 @@ static inline uint16_t mavlink_msg_receiver_tm_pack(uint8_t system_id, uint8_t c * @param chan The MAVLink channel this message will be sent over * @param msg The MAVLink message to compress the data into * @param timestamp [us] Timestamp - * @param rssi [dBm] Rssi - * @param fei [Hz] Fei - * @param rx_bitrate [kb/s] Rx bitrate - * @param tx_bitrate [kb/s] Tx bitrate + * @param main_radio_present Boolean indicating the presence of the main radio + * @param main_packet_tx_error_count Number of errors during send + * @param main_tx_bitrate [b/s] Send bitrate + * @param main_packet_rx_success_count Number of succesfull received mavlink packets + * @param main_packet_rx_drop_count Number of dropped mavlink packets + * @param main_rx_bitrate [b/s] Receive bitrate + * @param main_rx_rssi [dBm] Receive RSSI + * @param main_rx_fei [Hz] Receive frequency error index + * @param payload_radio_present Boolean indicating the presence of the payload radio + * @param payload_packet_tx_error_count Number of errors during send + * @param payload_tx_bitrate [b/s] Send bitrate + * @param payload_packet_rx_success_count Number of succesfull received mavlink packets + * @param payload_packet_rx_drop_count Number of dropped mavlink packets + * @param payload_rx_bitrate [b/s] Receive bitrate + * @param payload_rx_rssi [dBm] Receive RSSI + * @param payload_rx_fei [Hz] Receive frequency error index * @return length of the message in bytes (excluding serial stream start sign) */ static inline uint16_t mavlink_msg_receiver_tm_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, - uint64_t timestamp,float rssi,float fei,uint64_t rx_bitrate,uint64_t tx_bitrate) + uint64_t timestamp,uint8_t main_radio_present,uint16_t main_packet_tx_error_count,uint16_t main_tx_bitrate,uint16_t main_packet_rx_success_count,uint16_t main_packet_rx_drop_count,uint16_t main_rx_bitrate,float main_rx_rssi,float main_rx_fei,uint8_t payload_radio_present,uint16_t payload_packet_tx_error_count,uint16_t payload_tx_bitrate,uint16_t payload_packet_rx_success_count,uint16_t payload_packet_rx_drop_count,uint16_t payload_rx_bitrate,float payload_rx_rssi,float payload_rx_fei) { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS char buf[MAVLINK_MSG_ID_RECEIVER_TM_LEN]; _mav_put_uint64_t(buf, 0, timestamp); - _mav_put_uint64_t(buf, 8, rx_bitrate); - _mav_put_uint64_t(buf, 16, tx_bitrate); - _mav_put_float(buf, 24, rssi); - _mav_put_float(buf, 28, fei); + _mav_put_float(buf, 8, main_rx_rssi); + _mav_put_float(buf, 12, main_rx_fei); + _mav_put_float(buf, 16, payload_rx_rssi); + _mav_put_float(buf, 20, payload_rx_fei); + _mav_put_uint16_t(buf, 24, main_packet_tx_error_count); + _mav_put_uint16_t(buf, 26, main_tx_bitrate); + _mav_put_uint16_t(buf, 28, main_packet_rx_success_count); + _mav_put_uint16_t(buf, 30, main_packet_rx_drop_count); + _mav_put_uint16_t(buf, 32, main_rx_bitrate); + _mav_put_uint16_t(buf, 34, payload_packet_tx_error_count); + _mav_put_uint16_t(buf, 36, payload_tx_bitrate); + _mav_put_uint16_t(buf, 38, payload_packet_rx_success_count); + _mav_put_uint16_t(buf, 40, payload_packet_rx_drop_count); + _mav_put_uint16_t(buf, 42, payload_rx_bitrate); + _mav_put_uint8_t(buf, 44, main_radio_present); + _mav_put_uint8_t(buf, 45, payload_radio_present); memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_RECEIVER_TM_LEN); #else mavlink_receiver_tm_t packet; packet.timestamp = timestamp; - packet.rx_bitrate = rx_bitrate; - packet.tx_bitrate = tx_bitrate; - packet.rssi = rssi; - packet.fei = fei; + packet.main_rx_rssi = main_rx_rssi; + packet.main_rx_fei = main_rx_fei; + packet.payload_rx_rssi = payload_rx_rssi; + packet.payload_rx_fei = payload_rx_fei; + packet.main_packet_tx_error_count = main_packet_tx_error_count; + packet.main_tx_bitrate = main_tx_bitrate; + packet.main_packet_rx_success_count = main_packet_rx_success_count; + packet.main_packet_rx_drop_count = main_packet_rx_drop_count; + packet.main_rx_bitrate = main_rx_bitrate; + packet.payload_packet_tx_error_count = payload_packet_tx_error_count; + packet.payload_tx_bitrate = payload_tx_bitrate; + packet.payload_packet_rx_success_count = payload_packet_rx_success_count; + packet.payload_packet_rx_drop_count = payload_packet_rx_drop_count; + packet.payload_rx_bitrate = payload_rx_bitrate; + packet.main_radio_present = main_radio_present; + packet.payload_radio_present = payload_radio_present; memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_RECEIVER_TM_LEN); #endif @@ -138,7 +246,7 @@ static inline uint16_t mavlink_msg_receiver_tm_pack_chan(uint8_t system_id, uint */ static inline uint16_t mavlink_msg_receiver_tm_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_receiver_tm_t* receiver_tm) { - return mavlink_msg_receiver_tm_pack(system_id, component_id, msg, receiver_tm->timestamp, receiver_tm->rssi, receiver_tm->fei, receiver_tm->rx_bitrate, receiver_tm->tx_bitrate); + return mavlink_msg_receiver_tm_pack(system_id, component_id, msg, receiver_tm->timestamp, receiver_tm->main_radio_present, receiver_tm->main_packet_tx_error_count, receiver_tm->main_tx_bitrate, receiver_tm->main_packet_rx_success_count, receiver_tm->main_packet_rx_drop_count, receiver_tm->main_rx_bitrate, receiver_tm->main_rx_rssi, receiver_tm->main_rx_fei, receiver_tm->payload_radio_present, receiver_tm->payload_packet_tx_error_count, receiver_tm->payload_tx_bitrate, receiver_tm->payload_packet_rx_success_count, receiver_tm->payload_packet_rx_drop_count, receiver_tm->payload_rx_bitrate, receiver_tm->payload_rx_rssi, receiver_tm->payload_rx_fei); } /** @@ -152,7 +260,7 @@ static inline uint16_t mavlink_msg_receiver_tm_encode(uint8_t system_id, uint8_t */ static inline uint16_t mavlink_msg_receiver_tm_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_receiver_tm_t* receiver_tm) { - return mavlink_msg_receiver_tm_pack_chan(system_id, component_id, chan, msg, receiver_tm->timestamp, receiver_tm->rssi, receiver_tm->fei, receiver_tm->rx_bitrate, receiver_tm->tx_bitrate); + return mavlink_msg_receiver_tm_pack_chan(system_id, component_id, chan, msg, receiver_tm->timestamp, receiver_tm->main_radio_present, receiver_tm->main_packet_tx_error_count, receiver_tm->main_tx_bitrate, receiver_tm->main_packet_rx_success_count, receiver_tm->main_packet_rx_drop_count, receiver_tm->main_rx_bitrate, receiver_tm->main_rx_rssi, receiver_tm->main_rx_fei, receiver_tm->payload_radio_present, receiver_tm->payload_packet_tx_error_count, receiver_tm->payload_tx_bitrate, receiver_tm->payload_packet_rx_success_count, receiver_tm->payload_packet_rx_drop_count, receiver_tm->payload_rx_bitrate, receiver_tm->payload_rx_rssi, receiver_tm->payload_rx_fei); } /** @@ -160,31 +268,67 @@ static inline uint16_t mavlink_msg_receiver_tm_encode_chan(uint8_t system_id, ui * @param chan MAVLink channel to send the message * * @param timestamp [us] Timestamp - * @param rssi [dBm] Rssi - * @param fei [Hz] Fei - * @param rx_bitrate [kb/s] Rx bitrate - * @param tx_bitrate [kb/s] Tx bitrate + * @param main_radio_present Boolean indicating the presence of the main radio + * @param main_packet_tx_error_count Number of errors during send + * @param main_tx_bitrate [b/s] Send bitrate + * @param main_packet_rx_success_count Number of succesfull received mavlink packets + * @param main_packet_rx_drop_count Number of dropped mavlink packets + * @param main_rx_bitrate [b/s] Receive bitrate + * @param main_rx_rssi [dBm] Receive RSSI + * @param main_rx_fei [Hz] Receive frequency error index + * @param payload_radio_present Boolean indicating the presence of the payload radio + * @param payload_packet_tx_error_count Number of errors during send + * @param payload_tx_bitrate [b/s] Send bitrate + * @param payload_packet_rx_success_count Number of succesfull received mavlink packets + * @param payload_packet_rx_drop_count Number of dropped mavlink packets + * @param payload_rx_bitrate [b/s] Receive bitrate + * @param payload_rx_rssi [dBm] Receive RSSI + * @param payload_rx_fei [Hz] Receive frequency error index */ #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS -static inline void mavlink_msg_receiver_tm_send(mavlink_channel_t chan, uint64_t timestamp, float rssi, float fei, uint64_t rx_bitrate, uint64_t tx_bitrate) +static inline void mavlink_msg_receiver_tm_send(mavlink_channel_t chan, uint64_t timestamp, uint8_t main_radio_present, uint16_t main_packet_tx_error_count, uint16_t main_tx_bitrate, uint16_t main_packet_rx_success_count, uint16_t main_packet_rx_drop_count, uint16_t main_rx_bitrate, float main_rx_rssi, float main_rx_fei, uint8_t payload_radio_present, uint16_t payload_packet_tx_error_count, uint16_t payload_tx_bitrate, uint16_t payload_packet_rx_success_count, uint16_t payload_packet_rx_drop_count, uint16_t payload_rx_bitrate, float payload_rx_rssi, float payload_rx_fei) { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS char buf[MAVLINK_MSG_ID_RECEIVER_TM_LEN]; _mav_put_uint64_t(buf, 0, timestamp); - _mav_put_uint64_t(buf, 8, rx_bitrate); - _mav_put_uint64_t(buf, 16, tx_bitrate); - _mav_put_float(buf, 24, rssi); - _mav_put_float(buf, 28, fei); + _mav_put_float(buf, 8, main_rx_rssi); + _mav_put_float(buf, 12, main_rx_fei); + _mav_put_float(buf, 16, payload_rx_rssi); + _mav_put_float(buf, 20, payload_rx_fei); + _mav_put_uint16_t(buf, 24, main_packet_tx_error_count); + _mav_put_uint16_t(buf, 26, main_tx_bitrate); + _mav_put_uint16_t(buf, 28, main_packet_rx_success_count); + _mav_put_uint16_t(buf, 30, main_packet_rx_drop_count); + _mav_put_uint16_t(buf, 32, main_rx_bitrate); + _mav_put_uint16_t(buf, 34, payload_packet_tx_error_count); + _mav_put_uint16_t(buf, 36, payload_tx_bitrate); + _mav_put_uint16_t(buf, 38, payload_packet_rx_success_count); + _mav_put_uint16_t(buf, 40, payload_packet_rx_drop_count); + _mav_put_uint16_t(buf, 42, payload_rx_bitrate); + _mav_put_uint8_t(buf, 44, main_radio_present); + _mav_put_uint8_t(buf, 45, payload_radio_present); _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RECEIVER_TM, buf, MAVLINK_MSG_ID_RECEIVER_TM_MIN_LEN, MAVLINK_MSG_ID_RECEIVER_TM_LEN, MAVLINK_MSG_ID_RECEIVER_TM_CRC); #else mavlink_receiver_tm_t packet; packet.timestamp = timestamp; - packet.rx_bitrate = rx_bitrate; - packet.tx_bitrate = tx_bitrate; - packet.rssi = rssi; - packet.fei = fei; + packet.main_rx_rssi = main_rx_rssi; + packet.main_rx_fei = main_rx_fei; + packet.payload_rx_rssi = payload_rx_rssi; + packet.payload_rx_fei = payload_rx_fei; + packet.main_packet_tx_error_count = main_packet_tx_error_count; + packet.main_tx_bitrate = main_tx_bitrate; + packet.main_packet_rx_success_count = main_packet_rx_success_count; + packet.main_packet_rx_drop_count = main_packet_rx_drop_count; + packet.main_rx_bitrate = main_rx_bitrate; + packet.payload_packet_tx_error_count = payload_packet_tx_error_count; + packet.payload_tx_bitrate = payload_tx_bitrate; + packet.payload_packet_rx_success_count = payload_packet_rx_success_count; + packet.payload_packet_rx_drop_count = payload_packet_rx_drop_count; + packet.payload_rx_bitrate = payload_rx_bitrate; + packet.main_radio_present = main_radio_present; + packet.payload_radio_present = payload_radio_present; _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RECEIVER_TM, (const char *)&packet, MAVLINK_MSG_ID_RECEIVER_TM_MIN_LEN, MAVLINK_MSG_ID_RECEIVER_TM_LEN, MAVLINK_MSG_ID_RECEIVER_TM_CRC); #endif @@ -198,7 +342,7 @@ static inline void mavlink_msg_receiver_tm_send(mavlink_channel_t chan, uint64_t static inline void mavlink_msg_receiver_tm_send_struct(mavlink_channel_t chan, const mavlink_receiver_tm_t* receiver_tm) { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS - mavlink_msg_receiver_tm_send(chan, receiver_tm->timestamp, receiver_tm->rssi, receiver_tm->fei, receiver_tm->rx_bitrate, receiver_tm->tx_bitrate); + mavlink_msg_receiver_tm_send(chan, receiver_tm->timestamp, receiver_tm->main_radio_present, receiver_tm->main_packet_tx_error_count, receiver_tm->main_tx_bitrate, receiver_tm->main_packet_rx_success_count, receiver_tm->main_packet_rx_drop_count, receiver_tm->main_rx_bitrate, receiver_tm->main_rx_rssi, receiver_tm->main_rx_fei, receiver_tm->payload_radio_present, receiver_tm->payload_packet_tx_error_count, receiver_tm->payload_tx_bitrate, receiver_tm->payload_packet_rx_success_count, receiver_tm->payload_packet_rx_drop_count, receiver_tm->payload_rx_bitrate, receiver_tm->payload_rx_rssi, receiver_tm->payload_rx_fei); #else _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RECEIVER_TM, (const char *)receiver_tm, MAVLINK_MSG_ID_RECEIVER_TM_MIN_LEN, MAVLINK_MSG_ID_RECEIVER_TM_LEN, MAVLINK_MSG_ID_RECEIVER_TM_CRC); #endif @@ -212,24 +356,48 @@ static inline void mavlink_msg_receiver_tm_send_struct(mavlink_channel_t chan, c is usually the receive buffer for the channel, and allows a reply to an incoming message with minimum stack space usage. */ -static inline void mavlink_msg_receiver_tm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, uint64_t timestamp, float rssi, float fei, uint64_t rx_bitrate, uint64_t tx_bitrate) +static inline void mavlink_msg_receiver_tm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, uint64_t timestamp, uint8_t main_radio_present, uint16_t main_packet_tx_error_count, uint16_t main_tx_bitrate, uint16_t main_packet_rx_success_count, uint16_t main_packet_rx_drop_count, uint16_t main_rx_bitrate, float main_rx_rssi, float main_rx_fei, uint8_t payload_radio_present, uint16_t payload_packet_tx_error_count, uint16_t payload_tx_bitrate, uint16_t payload_packet_rx_success_count, uint16_t payload_packet_rx_drop_count, uint16_t payload_rx_bitrate, float payload_rx_rssi, float payload_rx_fei) { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS char *buf = (char *)msgbuf; _mav_put_uint64_t(buf, 0, timestamp); - _mav_put_uint64_t(buf, 8, rx_bitrate); - _mav_put_uint64_t(buf, 16, tx_bitrate); - _mav_put_float(buf, 24, rssi); - _mav_put_float(buf, 28, fei); + _mav_put_float(buf, 8, main_rx_rssi); + _mav_put_float(buf, 12, main_rx_fei); + _mav_put_float(buf, 16, payload_rx_rssi); + _mav_put_float(buf, 20, payload_rx_fei); + _mav_put_uint16_t(buf, 24, main_packet_tx_error_count); + _mav_put_uint16_t(buf, 26, main_tx_bitrate); + _mav_put_uint16_t(buf, 28, main_packet_rx_success_count); + _mav_put_uint16_t(buf, 30, main_packet_rx_drop_count); + _mav_put_uint16_t(buf, 32, main_rx_bitrate); + _mav_put_uint16_t(buf, 34, payload_packet_tx_error_count); + _mav_put_uint16_t(buf, 36, payload_tx_bitrate); + _mav_put_uint16_t(buf, 38, payload_packet_rx_success_count); + _mav_put_uint16_t(buf, 40, payload_packet_rx_drop_count); + _mav_put_uint16_t(buf, 42, payload_rx_bitrate); + _mav_put_uint8_t(buf, 44, main_radio_present); + _mav_put_uint8_t(buf, 45, payload_radio_present); _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RECEIVER_TM, buf, MAVLINK_MSG_ID_RECEIVER_TM_MIN_LEN, MAVLINK_MSG_ID_RECEIVER_TM_LEN, MAVLINK_MSG_ID_RECEIVER_TM_CRC); #else mavlink_receiver_tm_t *packet = (mavlink_receiver_tm_t *)msgbuf; packet->timestamp = timestamp; - packet->rx_bitrate = rx_bitrate; - packet->tx_bitrate = tx_bitrate; - packet->rssi = rssi; - packet->fei = fei; + packet->main_rx_rssi = main_rx_rssi; + packet->main_rx_fei = main_rx_fei; + packet->payload_rx_rssi = payload_rx_rssi; + packet->payload_rx_fei = payload_rx_fei; + packet->main_packet_tx_error_count = main_packet_tx_error_count; + packet->main_tx_bitrate = main_tx_bitrate; + packet->main_packet_rx_success_count = main_packet_rx_success_count; + packet->main_packet_rx_drop_count = main_packet_rx_drop_count; + packet->main_rx_bitrate = main_rx_bitrate; + packet->payload_packet_tx_error_count = payload_packet_tx_error_count; + packet->payload_tx_bitrate = payload_tx_bitrate; + packet->payload_packet_rx_success_count = payload_packet_rx_success_count; + packet->payload_packet_rx_drop_count = payload_packet_rx_drop_count; + packet->payload_rx_bitrate = payload_rx_bitrate; + packet->main_radio_present = main_radio_present; + packet->payload_radio_present = payload_radio_present; _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RECEIVER_TM, (const char *)packet, MAVLINK_MSG_ID_RECEIVER_TM_MIN_LEN, MAVLINK_MSG_ID_RECEIVER_TM_LEN, MAVLINK_MSG_ID_RECEIVER_TM_CRC); #endif @@ -252,43 +420,163 @@ static inline uint64_t mavlink_msg_receiver_tm_get_timestamp(const mavlink_messa } /** - * @brief Get field rssi from receiver_tm message + * @brief Get field main_radio_present from receiver_tm message * - * @return [dBm] Rssi + * @return Boolean indicating the presence of the main radio */ -static inline float mavlink_msg_receiver_tm_get_rssi(const mavlink_message_t* msg) +static inline uint8_t mavlink_msg_receiver_tm_get_main_radio_present(const mavlink_message_t* msg) { - return _MAV_RETURN_float(msg, 24); + return _MAV_RETURN_uint8_t(msg, 44); } /** - * @brief Get field fei from receiver_tm message + * @brief Get field main_packet_tx_error_count from receiver_tm message * - * @return [Hz] Fei + * @return Number of errors during send */ -static inline float mavlink_msg_receiver_tm_get_fei(const mavlink_message_t* msg) +static inline uint16_t mavlink_msg_receiver_tm_get_main_packet_tx_error_count(const mavlink_message_t* msg) { - return _MAV_RETURN_float(msg, 28); + return _MAV_RETURN_uint16_t(msg, 24); } /** - * @brief Get field rx_bitrate from receiver_tm message + * @brief Get field main_tx_bitrate from receiver_tm message * - * @return [kb/s] Rx bitrate + * @return [b/s] Send bitrate */ -static inline uint64_t mavlink_msg_receiver_tm_get_rx_bitrate(const mavlink_message_t* msg) +static inline uint16_t mavlink_msg_receiver_tm_get_main_tx_bitrate(const mavlink_message_t* msg) { - return _MAV_RETURN_uint64_t(msg, 8); + return _MAV_RETURN_uint16_t(msg, 26); } /** - * @brief Get field tx_bitrate from receiver_tm message + * @brief Get field main_packet_rx_success_count from receiver_tm message * - * @return [kb/s] Tx bitrate + * @return Number of succesfull received mavlink packets */ -static inline uint64_t mavlink_msg_receiver_tm_get_tx_bitrate(const mavlink_message_t* msg) +static inline uint16_t mavlink_msg_receiver_tm_get_main_packet_rx_success_count(const mavlink_message_t* msg) { - return _MAV_RETURN_uint64_t(msg, 16); + return _MAV_RETURN_uint16_t(msg, 28); +} + +/** + * @brief Get field main_packet_rx_drop_count from receiver_tm message + * + * @return Number of dropped mavlink packets + */ +static inline uint16_t mavlink_msg_receiver_tm_get_main_packet_rx_drop_count(const mavlink_message_t* msg) +{ + return _MAV_RETURN_uint16_t(msg, 30); +} + +/** + * @brief Get field main_rx_bitrate from receiver_tm message + * + * @return [b/s] Receive bitrate + */ +static inline uint16_t mavlink_msg_receiver_tm_get_main_rx_bitrate(const mavlink_message_t* msg) +{ + return _MAV_RETURN_uint16_t(msg, 32); +} + +/** + * @brief Get field main_rx_rssi from receiver_tm message + * + * @return [dBm] Receive RSSI + */ +static inline float mavlink_msg_receiver_tm_get_main_rx_rssi(const mavlink_message_t* msg) +{ + return _MAV_RETURN_float(msg, 8); +} + +/** + * @brief Get field main_rx_fei from receiver_tm message + * + * @return [Hz] Receive frequency error index + */ +static inline float mavlink_msg_receiver_tm_get_main_rx_fei(const mavlink_message_t* msg) +{ + return _MAV_RETURN_float(msg, 12); +} + +/** + * @brief Get field payload_radio_present from receiver_tm message + * + * @return Boolean indicating the presence of the payload radio + */ +static inline uint8_t mavlink_msg_receiver_tm_get_payload_radio_present(const mavlink_message_t* msg) +{ + return _MAV_RETURN_uint8_t(msg, 45); +} + +/** + * @brief Get field payload_packet_tx_error_count from receiver_tm message + * + * @return Number of errors during send + */ +static inline uint16_t mavlink_msg_receiver_tm_get_payload_packet_tx_error_count(const mavlink_message_t* msg) +{ + return _MAV_RETURN_uint16_t(msg, 34); +} + +/** + * @brief Get field payload_tx_bitrate from receiver_tm message + * + * @return [b/s] Send bitrate + */ +static inline uint16_t mavlink_msg_receiver_tm_get_payload_tx_bitrate(const mavlink_message_t* msg) +{ + return _MAV_RETURN_uint16_t(msg, 36); +} + +/** + * @brief Get field payload_packet_rx_success_count from receiver_tm message + * + * @return Number of succesfull received mavlink packets + */ +static inline uint16_t mavlink_msg_receiver_tm_get_payload_packet_rx_success_count(const mavlink_message_t* msg) +{ + return _MAV_RETURN_uint16_t(msg, 38); +} + +/** + * @brief Get field payload_packet_rx_drop_count from receiver_tm message + * + * @return Number of dropped mavlink packets + */ +static inline uint16_t mavlink_msg_receiver_tm_get_payload_packet_rx_drop_count(const mavlink_message_t* msg) +{ + return _MAV_RETURN_uint16_t(msg, 40); +} + +/** + * @brief Get field payload_rx_bitrate from receiver_tm message + * + * @return [b/s] Receive bitrate + */ +static inline uint16_t mavlink_msg_receiver_tm_get_payload_rx_bitrate(const mavlink_message_t* msg) +{ + return _MAV_RETURN_uint16_t(msg, 42); +} + +/** + * @brief Get field payload_rx_rssi from receiver_tm message + * + * @return [dBm] Receive RSSI + */ +static inline float mavlink_msg_receiver_tm_get_payload_rx_rssi(const mavlink_message_t* msg) +{ + return _MAV_RETURN_float(msg, 16); +} + +/** + * @brief Get field payload_rx_fei from receiver_tm message + * + * @return [Hz] Receive frequency error index + */ +static inline float mavlink_msg_receiver_tm_get_payload_rx_fei(const mavlink_message_t* msg) +{ + return _MAV_RETURN_float(msg, 20); } /** @@ -301,10 +589,22 @@ static inline void mavlink_msg_receiver_tm_decode(const mavlink_message_t* msg, { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS receiver_tm->timestamp = mavlink_msg_receiver_tm_get_timestamp(msg); - receiver_tm->rx_bitrate = mavlink_msg_receiver_tm_get_rx_bitrate(msg); - receiver_tm->tx_bitrate = mavlink_msg_receiver_tm_get_tx_bitrate(msg); - receiver_tm->rssi = mavlink_msg_receiver_tm_get_rssi(msg); - receiver_tm->fei = mavlink_msg_receiver_tm_get_fei(msg); + receiver_tm->main_rx_rssi = mavlink_msg_receiver_tm_get_main_rx_rssi(msg); + receiver_tm->main_rx_fei = mavlink_msg_receiver_tm_get_main_rx_fei(msg); + receiver_tm->payload_rx_rssi = mavlink_msg_receiver_tm_get_payload_rx_rssi(msg); + receiver_tm->payload_rx_fei = mavlink_msg_receiver_tm_get_payload_rx_fei(msg); + receiver_tm->main_packet_tx_error_count = mavlink_msg_receiver_tm_get_main_packet_tx_error_count(msg); + receiver_tm->main_tx_bitrate = mavlink_msg_receiver_tm_get_main_tx_bitrate(msg); + receiver_tm->main_packet_rx_success_count = mavlink_msg_receiver_tm_get_main_packet_rx_success_count(msg); + receiver_tm->main_packet_rx_drop_count = mavlink_msg_receiver_tm_get_main_packet_rx_drop_count(msg); + receiver_tm->main_rx_bitrate = mavlink_msg_receiver_tm_get_main_rx_bitrate(msg); + receiver_tm->payload_packet_tx_error_count = mavlink_msg_receiver_tm_get_payload_packet_tx_error_count(msg); + receiver_tm->payload_tx_bitrate = mavlink_msg_receiver_tm_get_payload_tx_bitrate(msg); + receiver_tm->payload_packet_rx_success_count = mavlink_msg_receiver_tm_get_payload_packet_rx_success_count(msg); + receiver_tm->payload_packet_rx_drop_count = mavlink_msg_receiver_tm_get_payload_packet_rx_drop_count(msg); + receiver_tm->payload_rx_bitrate = mavlink_msg_receiver_tm_get_payload_rx_bitrate(msg); + receiver_tm->main_radio_present = mavlink_msg_receiver_tm_get_main_radio_present(msg); + receiver_tm->payload_radio_present = mavlink_msg_receiver_tm_get_payload_radio_present(msg); #else uint8_t len = msg->len < MAVLINK_MSG_ID_RECEIVER_TM_LEN? msg->len : MAVLINK_MSG_ID_RECEIVER_TM_LEN; memset(receiver_tm, 0, MAVLINK_MSG_ID_RECEIVER_TM_LEN); diff --git a/mavlink_lib/gemini/testsuite.h b/mavlink_lib/gemini/testsuite.h index 6b2d95e..a4672ad 100644 --- a/mavlink_lib/gemini/testsuite.h +++ b/mavlink_lib/gemini/testsuite.h @@ -2109,15 +2109,27 @@ static void mavlink_test_receiver_tm(uint8_t system_id, uint8_t component_id, ma uint8_t buffer[MAVLINK_MAX_PACKET_LEN]; uint16_t i; mavlink_receiver_tm_t packet_in = { - 93372036854775807ULL,93372036854776311ULL,93372036854776815ULL,185.0,213.0 + 93372036854775807ULL,73.0,101.0,129.0,157.0,18483,18587,18691,18795,18899,19003,19107,19211,19315,19419,137,204 }; mavlink_receiver_tm_t packet1, packet2; memset(&packet1, 0, sizeof(packet1)); packet1.timestamp = packet_in.timestamp; - packet1.rx_bitrate = packet_in.rx_bitrate; - packet1.tx_bitrate = packet_in.tx_bitrate; - packet1.rssi = packet_in.rssi; - packet1.fei = packet_in.fei; + packet1.main_rx_rssi = packet_in.main_rx_rssi; + packet1.main_rx_fei = packet_in.main_rx_fei; + packet1.payload_rx_rssi = packet_in.payload_rx_rssi; + packet1.payload_rx_fei = packet_in.payload_rx_fei; + packet1.main_packet_tx_error_count = packet_in.main_packet_tx_error_count; + packet1.main_tx_bitrate = packet_in.main_tx_bitrate; + packet1.main_packet_rx_success_count = packet_in.main_packet_rx_success_count; + packet1.main_packet_rx_drop_count = packet_in.main_packet_rx_drop_count; + packet1.main_rx_bitrate = packet_in.main_rx_bitrate; + packet1.payload_packet_tx_error_count = packet_in.payload_packet_tx_error_count; + packet1.payload_tx_bitrate = packet_in.payload_tx_bitrate; + packet1.payload_packet_rx_success_count = packet_in.payload_packet_rx_success_count; + packet1.payload_packet_rx_drop_count = packet_in.payload_packet_rx_drop_count; + packet1.payload_rx_bitrate = packet_in.payload_rx_bitrate; + packet1.main_radio_present = packet_in.main_radio_present; + packet1.payload_radio_present = packet_in.payload_radio_present; #ifdef MAVLINK_STATUS_FLAG_OUT_MAVLINK1 @@ -2132,12 +2144,12 @@ static void mavlink_test_receiver_tm(uint8_t system_id, uint8_t component_id, ma MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0); memset(&packet2, 0, sizeof(packet2)); - mavlink_msg_receiver_tm_pack(system_id, component_id, &msg , packet1.timestamp , packet1.rssi , packet1.fei , packet1.rx_bitrate , packet1.tx_bitrate ); + mavlink_msg_receiver_tm_pack(system_id, component_id, &msg , packet1.timestamp , packet1.main_radio_present , packet1.main_packet_tx_error_count , packet1.main_tx_bitrate , packet1.main_packet_rx_success_count , packet1.main_packet_rx_drop_count , packet1.main_rx_bitrate , packet1.main_rx_rssi , packet1.main_rx_fei , packet1.payload_radio_present , packet1.payload_packet_tx_error_count , packet1.payload_tx_bitrate , packet1.payload_packet_rx_success_count , packet1.payload_packet_rx_drop_count , packet1.payload_rx_bitrate , packet1.payload_rx_rssi , packet1.payload_rx_fei ); mavlink_msg_receiver_tm_decode(&msg, &packet2); MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0); memset(&packet2, 0, sizeof(packet2)); - mavlink_msg_receiver_tm_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.timestamp , packet1.rssi , packet1.fei , packet1.rx_bitrate , packet1.tx_bitrate ); + mavlink_msg_receiver_tm_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.timestamp , packet1.main_radio_present , packet1.main_packet_tx_error_count , packet1.main_tx_bitrate , packet1.main_packet_rx_success_count , packet1.main_packet_rx_drop_count , packet1.main_rx_bitrate , packet1.main_rx_rssi , packet1.main_rx_fei , packet1.payload_radio_present , packet1.payload_packet_tx_error_count , packet1.payload_tx_bitrate , packet1.payload_packet_rx_success_count , packet1.payload_packet_rx_drop_count , packet1.payload_rx_bitrate , packet1.payload_rx_rssi , packet1.payload_rx_fei ); mavlink_msg_receiver_tm_decode(&msg, &packet2); MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0); @@ -2150,7 +2162,7 @@ static void mavlink_test_receiver_tm(uint8_t system_id, uint8_t component_id, ma MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0); memset(&packet2, 0, sizeof(packet2)); - mavlink_msg_receiver_tm_send(MAVLINK_COMM_1 , packet1.timestamp , packet1.rssi , packet1.fei , packet1.rx_bitrate , packet1.tx_bitrate ); + mavlink_msg_receiver_tm_send(MAVLINK_COMM_1 , packet1.timestamp , packet1.main_radio_present , packet1.main_packet_tx_error_count , packet1.main_tx_bitrate , packet1.main_packet_rx_success_count , packet1.main_packet_rx_drop_count , packet1.main_rx_bitrate , packet1.main_rx_rssi , packet1.main_rx_fei , packet1.payload_radio_present , packet1.payload_packet_tx_error_count , packet1.payload_tx_bitrate , packet1.payload_packet_rx_success_count , packet1.payload_packet_rx_drop_count , packet1.payload_rx_bitrate , packet1.payload_rx_rssi , packet1.payload_rx_fei ); mavlink_msg_receiver_tm_decode(last_msg, &packet2); MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0); diff --git a/mavlink_lib/gemini/version.h b/mavlink_lib/gemini/version.h index f76cd18..a51fbcd 100644 --- a/mavlink_lib/gemini/version.h +++ b/mavlink_lib/gemini/version.h @@ -7,7 +7,7 @@ #ifndef MAVLINK_VERSION_H #define MAVLINK_VERSION_H -#define MAVLINK_BUILD_DATE "Thu Jul 27 2023" +#define MAVLINK_BUILD_DATE "Fri Aug 04 2023" #define MAVLINK_WIRE_PROTOCOL_VERSION "1.0" #define MAVLINK_MAX_DIALECT_PAYLOAD_SIZE 171 diff --git a/message_definitions/gemini.xml b/message_definitions/gemini.xml index 6662e1c..a192e5b 100644 --- a/message_definitions/gemini.xml +++ b/message_definitions/gemini.xml @@ -421,10 +421,22 @@ <message id="150" name="RECEIVER_TM"> <description></description> <field name="timestamp" type="uint64_t" units="us">Timestamp</field> - <field name="rssi" type="float" units="dBm">Rssi</field> - <field name="fei" type="float" units="Hz">Fei</field> - <field name="rx_bitrate" type="uint64_t" units="kb/s">Rx bitrate</field> - <field name="tx_bitrate" type="uint64_t" units="kb/s">Tx bitrate</field> + <field name="main_radio_present" type="uint8_t">Boolean indicating the presence of the main radio</field> + <field name="main_packet_tx_error_count" type="uint16_t">Number of errors during send</field> + <field name="main_tx_bitrate" type="uint16_t" units="b/s">Send bitrate</field> + <field name="main_packet_rx_success_count" type="uint16_t">Number of succesfull received mavlink packets</field> + <field name="main_packet_rx_drop_count" type="uint16_t">Number of dropped mavlink packets</field> + <field name="main_rx_bitrate" type="uint16_t" units="b/s">Receive bitrate</field> + <field name="main_rx_rssi" type="float" units="dBm">Receive RSSI</field> + <field name="main_rx_fei" type="float" units="Hz">Receive frequency error index</field> + <field name="payload_radio_present" type="uint8_t">Boolean indicating the presence of the payload radio</field> + <field name="payload_packet_tx_error_count" type="uint16_t">Number of errors during send</field> + <field name="payload_tx_bitrate" type="uint16_t" units="b/s">Send bitrate</field> + <field name="payload_packet_rx_success_count" type="uint16_t">Number of succesfull received mavlink packets</field> + <field name="payload_packet_rx_drop_count" type="uint16_t">Number of dropped mavlink packets</field> + <field name="payload_rx_bitrate" type="uint16_t" units="b/s">Receive bitrate</field> + <field name="payload_rx_rssi" type="float" units="dBm">Receive RSSI</field> + <field name="payload_rx_fei" type="float" units="Hz">Receive frequency error index</field> </message> <!-- FROM ROCKET TO GROUND: SPECIFIC --> -- GitLab