Hello, I am reading the flight control codes, but confused about the relationship between the uORB topic vehicle_control_mode and the flight modes defined in the developer guide.
The data structure of the uORB topic vehicle_control_mode is:
#ifdef __cplusplus
struct __EXPORT vehicle_control_mode_s {
#else
struct vehicle_control_mode_s {
#endif
uint64_t timestamp;
bool flag_armed;
bool flag_external_manual_override_ok;
bool flag_system_hil_enabled;
bool flag_control_manual_enabled;
bool flag_control_auto_enabled;
bool flag_control_offboard_enabled;
bool flag_control_rates_enabled;
bool flag_control_attitude_enabled;
bool flag_control_force_enabled;
bool flag_control_velocity_enabled;
bool flag_control_position_enabled;
bool flag_control_altitude_enabled;
bool flag_control_climb_rate_enabled;
bool flag_control_termination_enabled;
#ifdef __cplusplus
#endif
};
And the flight modes are:
ACRO
RATTITUDE
ANGLE
ALTCTL
POSCTL
AUTO_LOITER
AUTO_MISSION
OFFBOARD
What are the value of the flags in vehicle_control_mode_s for each flight mode? Where can I find them? Thank you for your help.