|
|
|
@ -363,6 +363,8 @@ bool AP_Mission::start_command(const Mission_Command& cmd)
@@ -363,6 +363,8 @@ bool AP_Mission::start_command(const Mission_Command& cmd)
|
|
|
|
|
return start_command_do_sprayer(cmd); |
|
|
|
|
case MAV_CMD_DO_SET_RESUME_REPEAT_DIST: |
|
|
|
|
return command_do_set_repeat_dist(cmd); |
|
|
|
|
case MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW: |
|
|
|
|
return start_command_do_gimbal_manager_pitchyaw(cmd); |
|
|
|
|
default: |
|
|
|
|
return _cmd_start_fn(cmd); |
|
|
|
|
} |
|
|
|
@ -1201,7 +1203,16 @@ MAV_MISSION_RESULT AP_Mission::mavlink_int_to_mission_cmd(const mavlink_mission_
@@ -1201,7 +1203,16 @@ MAV_MISSION_RESULT AP_Mission::mavlink_int_to_mission_cmd(const mavlink_mission_
|
|
|
|
|
case MAV_CMD_DO_PAUSE_CONTINUE: |
|
|
|
|
cmd.p1 = packet.param1; |
|
|
|
|
break; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
case MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW: |
|
|
|
|
cmd.content.gimbal_manager_pitchyaw.pitch_angle_deg = packet.param1; |
|
|
|
|
cmd.content.gimbal_manager_pitchyaw.yaw_angle_deg = packet.param2; |
|
|
|
|
cmd.content.gimbal_manager_pitchyaw.pitch_rate_degs = packet.param3; |
|
|
|
|
cmd.content.gimbal_manager_pitchyaw.yaw_rate_degs = packet.param4; |
|
|
|
|
cmd.content.gimbal_manager_pitchyaw.flags = packet.x; |
|
|
|
|
cmd.content.gimbal_manager_pitchyaw.gimbal_id = packet.z; |
|
|
|
|
break; |
|
|
|
|
|
|
|
|
|
default: |
|
|
|
|
// unrecognised command
|
|
|
|
|
return MAV_MISSION_UNSUPPORTED; |
|
|
|
@ -1289,6 +1300,7 @@ MAV_MISSION_RESULT AP_Mission::convert_MISSION_ITEM_to_MISSION_ITEM_INT(const ma
@@ -1289,6 +1300,7 @@ MAV_MISSION_RESULT AP_Mission::convert_MISSION_ITEM_to_MISSION_ITEM_INT(const ma
|
|
|
|
|
case MAV_CMD_DO_DIGICAM_CONTROL: |
|
|
|
|
case MAV_CMD_DO_DIGICAM_CONFIGURE: |
|
|
|
|
case MAV_CMD_NAV_ATTITUDE_TIME: |
|
|
|
|
case MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW: |
|
|
|
|
mav_cmd.x = packet.x; |
|
|
|
|
mav_cmd.y = packet.y; |
|
|
|
|
break; |
|
|
|
@ -1331,6 +1343,7 @@ MAV_MISSION_RESULT AP_Mission::convert_MISSION_ITEM_INT_to_MISSION_ITEM(const ma
@@ -1331,6 +1343,7 @@ MAV_MISSION_RESULT AP_Mission::convert_MISSION_ITEM_INT_to_MISSION_ITEM(const ma
|
|
|
|
|
case MAV_CMD_DO_DIGICAM_CONTROL: |
|
|
|
|
case MAV_CMD_DO_DIGICAM_CONFIGURE: |
|
|
|
|
case MAV_CMD_NAV_ATTITUDE_TIME: |
|
|
|
|
case MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW: |
|
|
|
|
item.x = item_int.x; |
|
|
|
|
item.y = item_int.y; |
|
|
|
|
break; |
|
|
|
@ -1677,7 +1690,16 @@ bool AP_Mission::mission_cmd_to_mavlink_int(const AP_Mission::Mission_Command& c
@@ -1677,7 +1690,16 @@ bool AP_Mission::mission_cmd_to_mavlink_int(const AP_Mission::Mission_Command& c
|
|
|
|
|
case MAV_CMD_DO_PAUSE_CONTINUE: |
|
|
|
|
packet.param1 = cmd.p1; |
|
|
|
|
break; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
case MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW: |
|
|
|
|
packet.param1 = cmd.content.gimbal_manager_pitchyaw.pitch_angle_deg; |
|
|
|
|
packet.param2 = cmd.content.gimbal_manager_pitchyaw.yaw_angle_deg; |
|
|
|
|
packet.param3 = cmd.content.gimbal_manager_pitchyaw.pitch_rate_degs; |
|
|
|
|
packet.param4 = cmd.content.gimbal_manager_pitchyaw.yaw_rate_degs; |
|
|
|
|
packet.x = cmd.content.gimbal_manager_pitchyaw.flags; |
|
|
|
|
packet.z = cmd.content.gimbal_manager_pitchyaw.gimbal_id; |
|
|
|
|
break; |
|
|
|
|
|
|
|
|
|
default: |
|
|
|
|
// unrecognised command
|
|
|
|
|
return false; |
|
|
|
@ -2402,7 +2424,8 @@ const char *AP_Mission::Mission_Command::type() const
@@ -2402,7 +2424,8 @@ const char *AP_Mission::Mission_Command::type() const
|
|
|
|
|
return "NavAttitudeTime"; |
|
|
|
|
case MAV_CMD_DO_PAUSE_CONTINUE: |
|
|
|
|
return "PauseContinue"; |
|
|
|
|
|
|
|
|
|
case MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW: |
|
|
|
|
return "GimbalPitchYaw"; |
|
|
|
|
default: |
|
|
|
|
#if CONFIG_HAL_BOARD == HAL_BOARD_SITL |
|
|
|
|
AP_HAL::panic("Mission command with ID %u has no string", id); |
|
|
|
|