Skip to content

Drive Modes (Ackermann Rover)

Flight modes (or more accurately "Drive modes" for ground vehicles) provide autopilot support to make it easier to manually drive the vehicle or to execute autonomous missions.

This section outlines all supported drive modes for Ackermann rovers.

For information on mapping RC control switches to specific modes see: Basic Configuration > Flight Modes.

WARNING

Selecting any other mode than those listed below will either stop the rover or can lead to undefined behaviour.

Manual Modes

Manual modes require stick inputs from the user to drive the vehicle.

Manual Controls

The manual modes listed below provide increasing levels of autopilot support:

ModeFeatures
ManualDirectly map stick inputs to motor commands, no closed loop control.

Manual Mode

The Manual mode stops the rover when the RC control sticks are centred. To manually move/drive the vehicle you move the sticks outside of the centre.

Moving the left-stick up/down controls the forward speed and moving the right-stick left/right controls the steering angle of the vehicle.

INFO

The rover does not attempt to maintain a specific orientation or compensate for external factors like slopes or uneven terrain! The user is responsible for making the necessary adjustments to the stick inputs to keep the rover on the desired course.

Auto Modes

In auto modes the autopilot takes over control of the vehicle to run missions, return to launch, or perform other autonomous navigation tasks. For the tuning process see the configuration for Auto modes.

Mission Mode

Mission mode is an automatic mode that causes the vehicle to execute a predefined autonomous mission plan that has been uploaded to the flight controller. The mission is typically created and uploaded with a Ground Control Station (GCS) application, such as QGroundControl.

Mission commands

The following commands can be used in missions at time of writing (main(PX4 v1.16+)):

QGC mission itemCommandDescription
Mission startMAV_CMD_MISSION_STARTStarts the mission.
WaypointMAV_CMD_NAV_WAYPOINTNavigate to waypoint.
Return to launchMAV_CMD_NAV_RETURN_TO_LAUNCHReturn to the launch location.
Delay untilMAV_CMD_NAV_DELAYThe rover will stop for a specified amount of time.
Change speedMAV_CMD_DO_CHANGE_SPEEDChange the speed setpoint
Set launch locationMAV_CMD_DO_SET_HOMEChanges launch location to specified coordinates.
Jump to item (all)MAV_CMD_DO_JUMP (and other jump commands)Jump to specified mission item.
Loiter (all)MAV_CMD_NAV_LOITER_TIME (and other loiter commands)Stop the rover for given time. Other commands stop indefinitely.

Return Mode

This mode uses the pure pursuit guidance logic with the launch position as goal. Return mode can be activated through the respective mission command or through the ground station UI.