2 * This file is part of INAV
4 * INAV is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
9 * INAV is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with INAV. If not, see <http://www.gnu.org/licenses/>.
18 // INAV specific IDs start from 0x2000
19 // See https://github.com/iNavFlight/inav/wiki/MSP-V2#msp-v2-message-catalogue
21 #define MSP2_INAV_STATUS 0x2000
22 #define MSP2_INAV_OPTICAL_FLOW 0x2001
23 #define MSP2_INAV_ANALOG 0x2002
24 #define MSP2_INAV_MISC 0x2003
25 #define MSP2_INAV_SET_MISC 0x2004
26 #define MSP2_INAV_BATTERY_CONFIG 0x2005
27 #define MSP2_INAV_SET_BATTERY_CONFIG 0x2006
28 #define MSP2_INAV_RATE_PROFILE 0x2007
29 #define MSP2_INAV_SET_RATE_PROFILE 0x2008
30 #define MSP2_INAV_AIR_SPEED 0x2009
31 #define MSP2_INAV_OUTPUT_MAPPING 0x200A
32 #define MSP2_INAV_MC_BRAKING 0x200B
33 #define MSP2_INAV_SET_MC_BRAKING 0x200C
34 #define MSP2_INAV_OUTPUT_MAPPING_EXT 0x200D // Obsolete, replaced by MSP2_INAV_OUTPUT_MAPPING_EXT2
35 #define MSP2_INAV_TIMER_OUTPUT_MODE 0x200E
36 #define MSP2_INAV_SET_TIMER_OUTPUT_MODE 0x200F
37 #define MSP2_INAV_OUTPUT_MAPPING_EXT2 0x210D
39 #define MSP2_INAV_MIXER 0x2010
40 #define MSP2_INAV_SET_MIXER 0x2011
42 #define MSP2_INAV_OSD_LAYOUTS 0x2012
43 #define MSP2_INAV_OSD_SET_LAYOUT_ITEM 0x2013
44 #define MSP2_INAV_OSD_ALARMS 0x2014
45 #define MSP2_INAV_OSD_SET_ALARMS 0x2015
46 #define MSP2_INAV_OSD_PREFERENCES 0x2016
47 #define MSP2_INAV_OSD_SET_PREFERENCES 0x2017
49 #define MSP2_INAV_SELECT_BATTERY_PROFILE 0x2018
51 #define MSP2_INAV_DEBUG 0x2019
53 #define MSP2_BLACKBOX_CONFIG 0x201A
54 #define MSP2_SET_BLACKBOX_CONFIG 0x201B
56 #define MSP2_INAV_TEMP_SENSOR_CONFIG 0x201C
57 #define MSP2_INAV_SET_TEMP_SENSOR_CONFIG 0x201D
58 #define MSP2_INAV_TEMPERATURES 0x201E
60 #define MSP_SIMULATOR 0x201F
62 #define MSP2_INAV_SERVO_MIXER 0x2020
63 #define MSP2_INAV_SET_SERVO_MIXER 0x2021
64 #define MSP2_INAV_LOGIC_CONDITIONS 0x2022
65 #define MSP2_INAV_SET_LOGIC_CONDITIONS 0x2023
66 #define MSP2_INAV_GLOBAL_FUNCTIONS 0x2024
67 #define MSP2_INAV_SET_GLOBAL_FUNCTIONS 0x2025
68 #define MSP2_INAV_LOGIC_CONDITIONS_STATUS 0x2026
69 #define MSP2_INAV_GVAR_STATUS 0x2027
70 #define MSP2_INAV_PROGRAMMING_PID 0x2028
71 #define MSP2_INAV_SET_PROGRAMMING_PID 0x2029
72 #define MSP2_INAV_PROGRAMMING_PID_STATUS 0x202A
74 #define MSP2_PID 0x2030
75 #define MSP2_SET_PID 0x2031
77 #define MSP2_INAV_OPFLOW_CALIBRATION 0x2032
79 #define MSP2_INAV_FWUPDT_PREPARE 0x2033
80 #define MSP2_INAV_FWUPDT_STORE 0x2034
81 #define MSP2_INAV_FWUPDT_EXEC 0x2035
82 #define MSP2_INAV_FWUPDT_ROLLBACK_PREPARE 0x2036
83 #define MSP2_INAV_FWUPDT_ROLLBACK_EXEC 0x2037
85 #define MSP2_INAV_SAFEHOME 0x2038
86 #define MSP2_INAV_SET_SAFEHOME 0x2039
88 #define MSP2_INAV_MISC2 0x203A
89 #define MSP2_INAV_LOGIC_CONDITIONS_SINGLE 0x203B
91 #define MSP2_INAV_ESC_RPM 0x2040
93 #define MSP2_INAV_LED_STRIP_CONFIG_EX 0x2048
94 #define MSP2_INAV_SET_LED_STRIP_CONFIG_EX 0x2049
96 #define MSP2_INAV_FW_APPROACH 0x204A
97 #define MSP2_INAV_SET_FW_APPROACH 0x204B
99 #define MSP2_INAV_GPS_UBLOX_COMMAND 0x2050
101 #define MSP2_INAV_RATE_DYNAMICS 0x2060
102 #define MSP2_INAV_SET_RATE_DYNAMICS 0x2061
104 #define MSP2_INAV_EZ_TUNE 0x2070
105 #define MSP2_INAV_EZ_TUNE_SET 0x2071
107 #define MSP2_INAV_SELECT_MIXER_PROFILE 0x2080
109 #define MSP2_ADSB_VEHICLE_LIST 0x2090
111 #define MSP2_INAV_CUSTOM_OSD_ELEMENTS 0x2100
112 #define MSP2_INAV_SET_CUSTOM_OSD_ELEMENTS 0x2101
114 #define MSP2_INAV_SERVO_CONFIG 0x2200
115 #define MSP2_INAV_SET_SERVO_CONFIG 0x2201