aboutsummaryrefslogtreecommitdiff
path: root/src/modules/mavlink/mavlink.c
diff options
context:
space:
mode:
authorAnton Babushkin <anton.babushkin@me.com>2013-12-29 22:38:22 +0400
committerAnton Babushkin <anton.babushkin@me.com>2013-12-29 22:38:41 +0400
commitfa20fae6fb627d19d9f3951e75058eb85ab8a10a (patch)
tree1f1b925c3fe76278c6d0d2842937a00d209bcfe9 /src/modules/mavlink/mavlink.c
parent95bdc1a9bd364ce95abe06b097579cc8a9162e33 (diff)
downloadpx4-firmware-fa20fae6fb627d19d9f3951e75058eb85ab8a10a.tar.gz
px4-firmware-fa20fae6fb627d19d9f3951e75058eb85ab8a10a.tar.bz2
px4-firmware-fa20fae6fb627d19d9f3951e75058eb85ab8a10a.zip
Some mavlink fixes to use vehicle_control_mode, WIP
Diffstat (limited to 'src/modules/mavlink/mavlink.c')
-rw-r--r--src/modules/mavlink/mavlink.c20
1 files changed, 8 insertions, 12 deletions
diff --git a/src/modules/mavlink/mavlink.c b/src/modules/mavlink/mavlink.c
index 4c38cf35a..bc191f30d 100644
--- a/src/modules/mavlink/mavlink.c
+++ b/src/modules/mavlink/mavlink.c
@@ -220,22 +220,18 @@ get_mavlink_mode_and_state(uint8_t *mavlink_state, uint8_t *mavlink_base_mode, u
} else if (v_status.main_state == MAIN_STATE_AUTO) {
*mavlink_base_mode |= MAV_MODE_FLAG_AUTO_ENABLED | MAV_MODE_FLAG_STABILIZE_ENABLED | MAV_MODE_FLAG_GUIDED_ENABLED;
custom_mode.main_mode = PX4_CUSTOM_MAIN_MODE_AUTO;
- // TODO use control_mode topic
- /*
- if (v_status.navigation_state == NAVIGATION_STATE_AUTO_READY) {
+ // TODO review
+ if (control_mode.nav_state == NAV_STATE_NONE) {
custom_mode.sub_mode = PX4_CUSTOM_SUB_MODE_AUTO_READY;
- } else if (v_status.navigation_state == NAVIGATION_STATE_AUTO_TAKEOFF) {
- custom_mode.sub_mode = PX4_CUSTOM_SUB_MODE_AUTO_TAKEOFF;
- } else if (v_status.navigation_state == NAVIGATION_STATE_AUTO_LOITER) {
+ } else if (control_mode.nav_state == NAV_STATE_LOITER) {
custom_mode.sub_mode = PX4_CUSTOM_SUB_MODE_AUTO_LOITER;
- } else if (v_status.navigation_state == NAVIGATION_STATE_AUTO_MISSION) {
+ } else if (control_mode.nav_state == NAV_STATE_MISSION_LOITER) {
+ custom_mode.sub_mode = PX4_CUSTOM_SUB_MODE_AUTO_LOITER;
+ } else if (control_mode.nav_state == NAV_STATE_RTL_LOITER) {
+ custom_mode.sub_mode = PX4_CUSTOM_SUB_MODE_AUTO_LOITER;
+ } else if (control_mode.nav_state == NAV_STATE_MISSION) {
custom_mode.sub_mode = PX4_CUSTOM_SUB_MODE_AUTO_MISSION;
- } else if (v_status.navigation_state == NAVIGATION_STATE_AUTO_RTL) {
- custom_mode.sub_mode = PX4_CUSTOM_SUB_MODE_AUTO_RTL;
- } else if (v_status.navigation_state == NAVIGATION_STATE_AUTO_LAND) {
- custom_mode.sub_mode = PX4_CUSTOM_SUB_MODE_AUTO_LAND;
}
- */
}
*mavlink_custom_mode = custom_mode.data;