0% found this document useful (0 votes)
345 views116 pages

Mission Planner Overview

Mission Planner is a comprehensive ground station application for the ArduPilot open-source autopilot project, designed for use with Plane, Copter, and Rover vehicles on Windows. It allows users to configure vehicles, plan autonomous missions, monitor telemetry, and analyze mission logs. The application is community-supported and offers extensive documentation and support through user forums.

Uploaded by

Ahmad Khan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
345 views116 pages

Mission Planner Overview

Mission Planner is a comprehensive ground station application for the ArduPilot open-source autopilot project, designed for use with Plane, Copter, and Rover vehicles on Windows. It allows users to configure vehicles, plan autonomous missions, monitor telemetry, and analyze mission logs. The application is community-supported and offers extensive documentation and support through user forums.

Uploaded by

Ahmad Khan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 116

Mission Planner Overview

Mission Planner is a full-featured ground station application for the ArduPilot open
source autopilot project. This page contains information on the background of
Mission Planner and the organization of this site.

What is Mission Planner

Mission Planner is a ground control station for Plane, Copter and Rover. It is
compatible with Windows only. Mission Planner can be used as a configuration utility
or as a dynamic control supplement for your autonomous vehicle. Here are just a few
things you can do with Mission Planner:
 Load the firmware (the software) into the autopilot board (i.e. Pixhawk series)
that controls your vehicle.
 Setup, configure, and tune your vehicle for optimum performance.
 Plan, save and load autonomous missions into you autopilot with simple point-
and-click way-point entry on Google or other maps.
 Download and analyze mission logs created by your autopilot.
 Interface with a PC flight simulator to create a full hardware-in-the-loop UAV
simulator.
 With appropriate telemetry hardware you can:
o Monitor your vehicle’s status while in operation.
o Record telemetry logs which contain much more information the the
on-board autopilot logs.
o View and analyze the telemetry logs.
o Operate your vehicle in FPV (first person view)
All of these and many more features are covered here.

History
Mission Planner is a free, open-source, community-supported application developed
by Michael Oborne for the open-source APM autopilot project. If you would like to
donate to the ongoing development of Mission Planner, please select the Donate
button on the Mission Planner interface.

Support
The Help Screen:

Clicking the Help icon at the top of the Mission Planner interface will open a screen
with general information about help with Mission Planner. The “Check for Updates”
button will check for available updates to Mission Planner manually. Mission Planner
automatically checks for updates upon start up and notifies you if an update is
available. Please always run the most current version of Mission Planner, although it
is not necessary to check for updates more often than upon start up. The check box
“Show Console Window (restart)” enables the console window during Mission
Planner operation. That window shows Mission Planner activity and is primarily for
diagnostic purposes. It sometimes shows some interesting information. A restart of
Mission Planner is required for the option to take effect. (TBD need a link to console
page TBD)

Getting Help:

The support for Mission Planner comes from the community of users like you. All of
the documentation is created by users who volunteer their time. If you have
questions, first look through the table of contents (upper left of every page) for a
topic that may address your question. Next, try a search of the website. If you still
need help, then the community forums are the place to go. There you will find may
friendly users, developers and often, even Michael will chime in. There are two
primary forums. The diydrones.com forum here and the APM forum here. The
diydrones forum has existed for years and has a very large community and
numerous general topics. The APM forum is new and is more specific to the
ardupilot and ardu-vehicles.

Reporting Issues:

Usually, you can either resolve a question on a forum. Sometimes you will discover a
bug and can confirm the problem on a forum. If you have discovered a bug, use the
forums to request it be logged as an official issue. One of the developers will
normally be glad to do so.

If you see a need to change or enhance the documentation, please let us know -
again using the forums. We welcome your suggestions and there are dozens of
qualified editors who can implement your suggestions.

Navigating the Documentation


Use the table of contents at the top of each page to navigate the Mission Planner
Manual - and the contents of the vehicle specific areas.

This section of our website contains information on how to use Mission Planner as a
“general” application. However, some of the pages will also have some vehicle
specific information. Those pages will also be contained in the specific vehicle’s
section of the website. Information that is primarily specific to a particular vehicle will
only be located in that vehicles section so, if you cannot find information here, try the
section of the website for the vehicle you are using.

Installing Mission Planner (Windows)


The below instructions show how to install Mission Planner on Windows. These instructions
will be suitable for most users. For advanced users and non-standard installations,
instructions are found here:. A useful video guide for advanced installation of Mission
Planner is located here.

 Download the latest Mission Planner installer from here

 Double click on the downloaded .msi file to run the installer

 Follow the instructions to complete the setup process. The installation utility will
automatically install any necessary software drivers. If you receive a DirectX installation error, please
update your DirectX plug-in from the Windows Download Center.

 If you receive the warning pictured below, select Install this driver software anyway to
continue.
Mission Planner is normally installed in the C:\Program Files (x86)\Mission Planner folder.

An icon to open the Mission Planner is created according to your instructions during the
installation.

Open Mission Planner


Once installation is complete, open Mission Planner by clicking on its system icon.

Then you can either:

 Connect Mission Planner to AutoPilot in order to receive telemetry and control the vehicle
OR
 Load Firmware

Updating Mission Planner


Mission Planner automatically notifies you about available updates (when it is connected to
the Internet).

Please always run the most current version of Mission Planner.

Mission Planner Advanced Installation


This article explains how you can change where Mission Planner is installed, and how to
install older versions if needed (not recommended).
Installing Mission Planner In a Different
Location
Sometimes you may want to keep or install the current or different version of Mission
Planner in a folder different from the normal location used by the MSI installation. You can
do this by downloading the “zip” version which contains all the files necessary and placing
the files into a folder of your choice.

Note

You will need a version of WinZip to install in a different location. Search for “Winzip free”
for possible ad supported versions.

Download the most recent Mission Planner ZIP Files


You can find all the different versions of Mission Planner zip (and MSI) files here. The most
recent version of the zip file can be downloaded from here.

Download and save the zip file to your computer.

Install (Un-zip) the files to the desired folder


Here is how you “install” a version into a different folder:

 Unzip the downloaded zip files into the folder where you want them installed. (see your
winzip manual)

We suggest un-zipping to Program Files folder where the normal installation is, but with a different
folder name I.E. a folder name like APM Planner-xxx where xxx is the version number.

 After you do the un-zip, you should have all the files necessary to run that version of MP in
the new folder.
o You can run this version by double clicking on the ArdupilotMegaPlanner10.exe file
in the folder’s root.
o Be sure to answer “no” to the upgrade notice if you want to stay with the version you
are using in that folder.
o To create a desktop icon for that version do this:
 Find the fileArdupilotMegaPlanner10.exe in the folder’s root.
 Right click and hold the file name and drag it to your desktop
 Select the ‘Create a shortcut here” option when you release the mouse button.
 Right click on the new icon and select Rename.
 Change the name to include the version number or some text to identify the
icon to start this version of MP
Using older version of Mission Planner
Using older versions of Mission Planner is discouraged because the latest version should
work with most platforms and will have fewer bugs.

However if you are using an older APM with an older version of firmware that is working
well for you it may make sense not to update the firmware. Alternatively you might have
more than one platform (for instance a plane and a quad copter or two planes) and you want
to keep a different version of the Mission Planner for each on your ground station. This keeps
the configuration files, the log files and saved parameter files separate - making life much
easier.

Warning

Use older versions of Mission Planner at your own risk. Do not attempt to upgrade firmware
with older versions. Each new platform firmware update usually requires the latest Mission
Planner version.

Loading Firmware
These instructions will show you how to download the latest firmware onto the flight
controller using the Mission Planner ground station.

Connect flight controller to computer


Once you’ve installed a ground station on your computer, connect the flight controller using
the micro USB cable as shown below. Use a direct USB port on your computer (not a USB
hub).
Pixhawk USB Connection

Windows should automatically detect and install the correct driver software.

Select the COM port


If using the Mission Planner select the COM port drop-down on the upper-right corner of the
screen (near the Connect button). Select AUTO or the specific port for your board. Set the
Baud rate to 115200 as shown. Don’t hit Connect just yet.
Install firmware
On the Mission Planner’s Initial Setup | Install Firmware screen select the appropriate icon
that matches your frame (i.e. Quad, Hexa). Answer Yes when it asks you “Are you sure?”.

Mission Planner: Install FirmwareScreen


After the GCS detects which board you are using it will ask you to unplug the board, plug it
back in and then press OK within a few seconds (during this brief period the bootloader
accepts requests to upload new firmware).

Mission Planner: Install FirmwarePrompt

Next you may be asked “Upload ChibiOS?”. Most users will not notice a significant
difference regardless of how this is answered.

 “Yes” will load ArduPilot using the newer ChibiOS operating system which results in a
smaller and more efficient firmware but has a few missing features

 “No” will load ArduPilot using the older NuttX operating system.
If all goes well you will see some status appear on the bottom right including the words,
“erase…”, “program…”, “verify..” and “Upload Done”. The firmware has been succesfully
uploaded to the board.

Testing
You can test the firmware is basically working by switching to the Mission Planner Flight
Data screen and pressing the Connect button. The HUD should update as you tilt the board.

Connect Mission Planner to AutoPilot has more information on connecting to Mission


Planner.

Connect Mission Planner to AutoPilot


This article explains how to connect Mission Planner to an autopilot in order to receive
telemetry and control the vehicle.

Note

There are separate instructions for connecting in order to Load Firmware.

Setting up the connection


To establish a connection you must first choose the communication method/channel you want
to use, and then set up the physical hardware and Windows device drivers. You can connect
the PC and autopilot using USB cables, Telemetry Radios, Bluetooth, IP connections etc.

Note

The driver for your connection hardware must be present on Windows as this makes your
connection’s COM port and default data rate available to Mission Planner.
Pixhawk USB Connection
Connection using SiK Radio

On Mission Planner, the connection and data rate are set up using the drop down boxes in the
upper right portion of the screen.

Once you’ve attached the USB or Telemetry Radio, Windows will automatically assign your
autopilot a COM port number, and that will show in the drop-down menu (the actual number
does not matter). The appropriate data rate for the connection is also set (typically the USB
connection data rate is 115200 and the radio connection rate is 57600).
Select the desired port and data rate and then press the Connect button to connect to the
autopilot. After connecting Mission Planner will download parameters from the autopilot and
the button will change to Disconnect as shown:

Tip

The “select port” dropdown also contains TCP or UDP port options that can be used to
connect to an autopilot over a network.

Troubleshooting
If Mission planner is unable to connect:

 Check that the correct baud rate is used for the selected method (115200 on USB or 57600 on
Radio/Telemetry)
 If using a COM port on Windows, check that the connection’s COM port exists in the
Windows Device Manager’s list of serial ports.
 If using a USB port, try a different physical USB port
 if using a UDP or TCP connection, check that your firewall is not blocking the IP traffic.

You should also ensure that the autopilot controller board has appropriate ArduPilot firmware
installed and has booted correctly (on Pixhawk there are useful LEDs and Sounds which can
tell you the state of the autopilot).

Related topics
Mission Planning
This section contains articles about Mission Planning; creating automated missions that will
run when the ArduPilot is set to AUTO mode.

Note

The examples demonstrate mission planning using Mission Planner, a fully-functioned


Windows-based Ground Control Station (GCS) that you can download and install from here.
Mission Planner: Flight Plan Screen

The main concepts will also apply to other Ground Control Stations (although the details of
the user interface will differ).
 Planning a Mission with Waypoints and Events
 Mission Command List
 Camera Control and Auto Missions
 Rally Points
 Geotagging Images with Mission Planner

Planning a Mission with Waypoints and


Events
This page describes generic waypoint setup for all types of vehicles.

Setting the Home Position


For Copter, Plane and Rover the home position is set as the location where the vehicle was
armed. This means if you execute an RTL, it will return to the location where it was armed,
so arm your vehicle in the location you want it to return to, or use a rally point to setup an
alternative return point.

Video: Produce and save a Multi-waypoint


Mission
Video: Load an already saved Multi-waypoint
Mission
Instructions
In the screenshot below, a Copter mission starts with an auto takeoff to 20 meters altitude;
then goes to WP 2 rising to 100 meters altitude on the way, then waits 10 seconds; then the
craft will proceed to WP 3 (descending to 50 meters altitude on the way), then returns to
launch. Since the default altitude is 100 meters, the return to launch will be at 100 meters.
After reaching the launch position, the craft will land. The mission assumes that the launch
position is set at the home position.
Copter: Mission Planning Example

You can enter waypoints and other commands (see the Mission commands section below for
more information). In the dropdown menus on each row, select the command you want. The
column heading will change to show you what data that command requires. Lat and Lon can
be entered by clicking on the map. Altitude is relative to your launch altitude/home position,
so if you set 100m, for example, it will fly 100m above you.

Default Alt is the default altitude when entering new waypoints. It’s also the altitude RTL
(return to launch) mode will fly at if you have Hold Default ALT checked; if you don’t have
that checked, your aircraft will try to maintain the altitude it was at when you switched on
RTL.

Verify height means that the Mission Planner will use Google Earth topology data to adjust
your desired altitude at each waypoint to reflect the height of the ground beneath. So if your
waypoint is on a hill, if this option is selected the Mission Planner will increase your ALT
setting by the height of the hill. This is a good way to make sure you don’t crash into
mountains!

Once you are done with your mission, select Write and it will be sent to APM and saved in
EEPROM. You can confirm that it’s as you wanted by selecting Read.

You can save multiple mission files to your local hard drive by selecting Save WP File or
read in files with Load WP File in the right-click menu:

Tips
 Prefetch: You can cache map data so you don’t need Internet access at the field. Click the
Prefetch button, and hold down Alt to draw a box to download the selected imagery of a location.
 Grid: This allows you to draw a polygon (right click) and automatically create waypoints over
the selected area. Note that it does not do “island detection”, which means if you have a big polygon
and a little one inside of that, the little one will not be excluded from the big one (see this for more).
Also, in the case of any polygon that partialy doubles backs on itself (like the letter U), the open area
in the center will be included as part of the flyover.
 Setting your home location to the current location is easy, just click Home Location above
where you enter your home location, and it will set your home location to the current coordinates.
 You can measure the distance between waypoints by right-clicking at one end and selecting
Measure Distance. Then right-click on the other end and select Measure Distance again. A dialog box
will open with the distance between the two points.

Auto grid
You can also have the Mission Planner create a mission for you, which is useful for function
like mapping missions, where the aircraft should just go back and forth in a “lawnmower”
pattern over an area to collect photographs.

To do this, in the right-click menu select Polygon and draw a box around the area you want to
map. Then select Auto WP, Grid. Follow the dialog box process to select altitude and
spacing. The Mission Planner will then generate a mission that looks something like this:

Mission Planner auto-generated grid


Mission commands
Mission Planner provides a filtered list of the commands appropriate for the current vehicle
type, and adds column headings for the parameters that need user-supplied values. These
include navigation commands to travel to waypoints and loiter in the vicinity, DO commands
to execute specific actions (for example taking pictures), and condition commands that can
control when DO commands are able to run.

Example: LOITER_TURNS command withheadings for number of turns, direction, and


location to loiteraround.

The full set of mission commands supported by all ArduPilot platforms are listed in
MAVLink Mission Command Messages (MAV_CMD). This includes the full name of each
command (as defined in the protocol definition), information about which parameters are
supported, and also the corresponding Mission Planner column headings.

Note

Mission Planner uses a cut-down version of the full command name. For example, commands
like MAV_CMD_NAV_WAYPOINT, MAV_CMD_CONDITION_DISTANCE,
MAV_CMD_DO_SET_SERVO are listed in MP as WAYPOINT,
CONDITION_DISTANCE and DO_SET_SERVO respectively.

How to prefetch a stored Mission Map


Occasionally You will see some really big
Numbers
Mission Commands
This article describes the mission commands that are supported by Copter, Plane and Rover
when switched into Auto mode.
Warning

This is a work-in-progress and has not been full reviewed. A better list for Copter can be
found here

Overview
The MAVLink protocol defines a large number of MAV_CMD waypoint command types
(sent in a MAVLink_mission_item_message). ArduPilot implements handling for the subset of
these commands and command-parameters that are most relevant and meaningful for each of
the vehicles. Unsupported commands that are sent to a particular autopilot will simply be
dropped.

This article lists and describes the commands and command-parameters that are supported on
each of the vehicle types. Any parameter that is “grey” is not supported by the autopilot and
will be ignored (they are still documented to make it clear which properties that are supported
by the MAV_CMD protocol are not implemented by the vehicle.

Some commands and command-parameters are not implemented because they are not
relevant for particular vehicle types (for example “MAV_CMD_NAV_TAKEOFF”
command makes sense for Plane and Copter but not Rover, and the pitch parameter only
makes sense for Plane). There are also some potentially useful command-parameters that are
not handled because there is a limit to the message size, and a decision has been made to
prioritise some parameters over others.

Note

There is additional information about the supported commands on Copter (from a Mission
Planner perspective) in the Copter Mission Command List.

Types of commands
There are several different types of commands that can be used within missions:

 Navigation commands are used to control the movement of the vehicle, including takeoff,
moving to and around waypoints, changing altitude, and landing.
 DO commands are for auxiliary functions and do not affect the vehicle’s position (for
example, setting the camera trigger distance, or setting a servo value).
 Condition commands are used to delay DO commands until some condition is met, for
example the UAV reaches a certain altitude or distance from the waypoint.
During a mission at most one “Navigation” command and one “Do” or “Condition”
command can be running at one time. A typical mission might set a waypoint (NAV
command), add a CONDITION command that doesn’t complete until a certain distance from
the destination (MAV_CMD_CONDITION_DISTANCE), and then add a number of DO
commands that are executed sequentially (for example
MAV_CMD_DO_SET_CAM_TRIGG_DIST to take pictures at regular intervals) when the
condition completes.

Note

CONDITION and DO commands are associated with the preceding NAV command: if the
UAV reaches the waypoint before these commands are executed, the next NAV command is
loaded and they will be skipped.

Frames of reference
Many of the commands (in particular the NAV_ commands) include position/location
information. The information is provided relative to a particular “frame of reference”, which
is specified in the message’s Frames of reference field. Copter and Rover Mission use
MAV_CMD_DO_SET_HOME command to set the “home position” in the global coordinate
frame (MAV_FRAME_GLOBAL), WGS84 coordinate system, where altitude is relative to
mean sea level. All other commands use the MAV_FRAME_GLOBAL_RELATIVE_ALT
frame, which uses the same latitude and longitude, but sets altitude as relative to the home
position (home altitude = 0).

Plane commands can additionally use MAV_FRAME_GLOBAL_TERRAIN_ALT frame of


reference. This again has the same WGS84 frame of reference for latitude/Longitude, but
specifies altitude relative to ground height (as defined in a terrain database).

Note

The other frame types defined in the MAVLink protocol (see MAV_FRAME) are not
supported for mission commands.

How accurate is the information?


If a command or parameter is marked as supported then it is likely (but not guaranteed) that it
will behave as indicated. If a command or parameter is not listed (or marked as not
supported) then it is extremely likely that it is not supported on ArduPilot.
The reason for this is that the information was predominantly inferred by inspecting the
command handlers for messages:

 The switch statement in `AP_Mission::mavlink_to_mission_cmd was inspected to determine


which commands are handled by all vehicle platforms, and which parameters from the message are
stored.
 The command handler switch for each vehicle type (Plane, Copter, Rover) tells us which
commands are likely to be supported in each vehicle and which parameters are passed to the handler.

The above checks give a very accurate picture of what commands and parameters are not
supported. They gives a fairly accurate picture of what commands/parameters are likely to be
supported. However this indication is not guaranteed to be accurate because a command
handler could just throw away all the information (and we have not fully checked all of
these).

In addition to the above checks, we have also merged information from the Copter Mission
Command List.

How to interpret the commands parameters


The parameters for each command are listed in a table. The parameters that are “greyed out”
are not supported. The command field column (param name) uses “bold” text to indicate
those parameters that are defined in the protocol (normal text is used for “empty”
parameters).

This allows users/developers to see both what is supported, and what protocol fields are not
supported in ArduPilot.

Using this information with a GCS


Mission Planner (MP) exposes the full subset of commands and parameters supported by
ArduPilot, filtered to display just those relevant to the currently connected vehicle. Mapping
the MP commands to this documentation is easy, because it simply names commands using a
cut-down version of the full command name (e.g. DO_SET_SERVO rather than the full command
name: MAV_CMD_DO_SET_SERVO). In addition, this document conveniently lists the column label
used by Mission Planner alongside each of the parameters.

Other GCSs (APM Planner 2, Tower etc.) may support some other subset of
commands/parameters and use alternative names/labels for them. In most cases the mapping
should be obvious.

Navigation commands
Navigation commands are used to control the movement of the vehicle, including takeoff,
moving to and around waypoints, and landing.

NAV commands have the highest priority. Any DO_ and CONDITION_ commands that
have not executed when a NAV command is loaded are skipped (for example, if a waypoint
completes and the NAV command for another waypoint is loaded, and unexecuted
DO/CONDITION commands associated with the first waypoint are dropped.

MAV_CMD_NAV_WAYPOINT
Supported by: Copter, Plane, Rover.

Navigate to the specified position.

MAV_CMD_NAV_TAKEOFF
Supported by: Copter, Plane (not Rover).

Takeoff (either from ground or by hand-launch). It should be the first command of nearly all
Plane and Copter missions.

MAV_CMD_NAV_LOITER_UNLIM
Supported by: Copter, Plane, Rover.

Loiter at the specified location for an unlimited amount of time.

MAV_CMD_NAV_LOITER_TURNS
Supported by: Copter, Plane (not Rover).

Loiter (circle) the specified location for a specified number of turns.

MAV_CMD_NAV_LOITER_TIME
Supported by: Copter, Plane, Rover.

Loiter at the specified location for a set time (in seconds).

MAV_CMD_NAV_RETURN_TO_LAUNCH
Supported by: Copter, Plane, Rover.
Return to the home location or the nearest Rally Point, if closer. The home location is where
the vehicle was last armed (or when it first gets GPS lock after arming if the vehicle
configuration allows this).

#HW TODO / Questions - Randy: Check that copter still uses RTL_ALT parameter and
doesn’t try to send information about height in the package.

MAV_CMD_NAV_LAND
Supported by: Copter, Plane (not Rover).

Land the vehicle at the current or a specified location.

MAV_CMD_NAV_CONTINUE_AND_CHANGE_ALT
Supported by: Plane (not Copter, Rover).

Continue on the current course and climb/descend to specified altitude. Move to the next
command when the desired altitude is reached.

MAV_CMD_NAV_SPLINE_WAYPOINT
Supported by: Copter (not Plane or Rover).

Navigate to the target location using a spline path.

MAV_CMD_NAV_GUIDED_ENABLE
Supported by: Copter (not Plane or Rover).

Enable GUIDED mode to hand over control to an external controller.

See also MAV_CMD_DO_GUIDED_LIMITS for information on how to apply time, altitude


and distance limits on the external control.

MAV_CMD_NAV_ALTITUDE_WAIT
Supported by: Plane (not Copter or Rover).

Mission command to wait for an altitude or downwards vertical speed.

MAV_CMD_NAV_LOITER_TO_ALT
Supported by: Plane (not Copter or Rover).
Begin loiter at the specified Latitude and Longitude. If Lat=Lon=0, then loiter at the current
position. Don’t consider the navigation command complete (don’t leave loiter) until the
altitude has been reached. Additionally, if the Heading Required parameter is non-zero the
aircraft will not leave the loiter until heading toward the next waypoint.

MAV_CMD_DO_JUMP
Supported by: Copter, Plane, Rover.

Jump to the specified command in the mission list. The jump command can be repeated either
a specified number of times before continuing the mission, or it can be repeated indefinitely.

Tip

Despite the name, this command is really a “NAV_” command rather than a “DO_”
command. Conditional commands like CONDITION_DELAY don’t affect DO_JUMP (it
will always perform the jump as soon as it reaches the command).

Note

 This command can be called a maximum number of 15 times in a mission, after which new
DO_JUMP commands are ignored. The maximum number changed from 3 to 15 in AC 3.3.
 The command was introduced in/works reliably from AC3.2

Command parameters

Mission
Command Field Description
Planner Field

The command index/sequence number of the command to jump


param1 WP#
to.

Number of times that the DO_JUMP command will execute


before moving to the next sequential command. If the value is
param2 Repeat#
zero the next command will execute immediately. A value of -1
will cause the command to repeat indefinitely.

param3 Empty

param4 Empty

param5 Empty

param6 Empty

param7 Empty

Mission planner screenshots


Copter: Mission Planner Settings forDO_JUMP command

In the example above the vehicle would fly back-and-forth between waypoints #1 and #2 a
total of 3 times before flying on to waypoint #4.

Conditional commands
Conditional commands control the execution of _DO_ commands. For example, a conditional
command can prevent DO commands executing based on a time delay, until the vehicle is at
a certain altitude, or at a specified distance from the next target position.

A conditional command may not complete before reaching the next waypoint. In this case,
any unexecuted _DO_ commands associated with the last waypoint will be skipped.

MAV_CMD_CONDITION_DELAY
Supported by: Copter, Plane, Rover.

After reaching a waypoint, delay the execution of the next conditional “_DO_” command for
the specified number of seconds (e.g. MAV_CMD_DO_SET_ROI).

Note

This command does not stop the vehicle. If the vehicle reaches the next waypoint before the
delay timer completes, the delayed “_DO_” commands will never trigger.

Command parameters

Command Field Mission Planner Field Description

param1 Time (sec) Delay in seconds (decimal).


param2 Empty

param3 Empty

param4 Empty

param5 Empty

param6 Empty

param7 Empty

Mission planner screenshots

Copter: Mission Planner Settingsfor CONDITION_DELAY command

In the example above, Command #4 (DO_SET_ROI) is delayed so that it starts 5 seconds after the
vehicle has passed Waypoint #2.

Command parameters

Command Field Mission Planner Field Description

param1 Rate (cm/sec) Descent / Ascend rate (m/s).

param2 Empty

param3 Empty

param4 Empty

param5 Empty

param6 Empty

param7 Alt Target altitude


MAV_CMD_CONDITION_DISTANCE
Supported by: Copter, Plane, Rover.

Delays the start of the next “_DO_” command until the vehicle is within the specified number
of meters of the next waypoint.

Note

This command does not stop the vehicle: it only affects DO commands.

Command parameters

Mission Planner
Command Field Description
Field

Distance from the next waypoint before DO commands


param1 Dist (m)
are executed (meters).

param2 Empty

param3 Empty

param4 Empty

param5 Empty

param6 Empty

param7 Empty

Mission planner screenshots

Copter: Mission PlannerSettings for CONDITION_DISTANCE command


In the example above, Command #4 (DO_SET_ROI) is delayed so that it only starts once the
vehicle is within 50m of waypoint #5.

MAV_CMD_CONDITION_YAW
Supported by: Copter (not Plane or Rover).

Point (yaw) the nose of the vehicle towards a specified heading.

DO commands
The “DO” or “Now” commands are executed once to perform some action. All the DO
commands associated with a waypoint are executed immediately.

MAV_CMD_DO_SET_MODE
Supported by: Copter, Plane, Rover.

Set system mode (preflight, armed, disarmed etc.)

Command parameters

Mission Planner
Command Field Description
Field

param1 Mode, as defined by `MAV_MODE `__

Custom mode - this is system specific, please refer to the


param2
individual autopilot specifications for details.

param3 Empty

param4 Empty

param5 Empty

param6 Empty

param7 Empty

MAV_CMD_DO_CHANGE_SPEED
Supported by: Copter, Plane, Rover.

Change the target horizontal speed and/or throttle of the vehicle. The changes will be used
until they are explicitly changed again or the device is rebooted.
MAV_CMD_DO_SET_HOME
Supported by: Copter, Plane, Rover.

Sets the home location either as the current location or at the location specified in the
command.

Note

 For Plane and Rover, if a good GPS fix cannot be obtained the location specified in the
command is used.
 For Copter, the command will also try to use the current position if all the location parameters
are set to 0. The location information in the command is only used if it is close to the EKF origin.

Command parameters

Mission Planner
Command Field Description
Field

Set home location: 1=Set home as current location. 2=Use


param1 Current
location specified in message parameters.

param2 Empty

param3 Empty

param4 Empty

param5 Lat Target home latitude (if ``param1=2``)

param6 Lon Target home longitude (if ``param1=2``)

param7 Alt Target home altitude (if ``param1=2``)

Mission planner screenshots

Copter: Mission Planner Settings forDO_SET_HOME command

MAV_CMD_DO_SET_RELAY
Supported by: Copter, Plane, Rover.
Set a Relay pin’s voltage high (on) or low (off).

#HW TODO / Question - is “toggling supported” using -1 in the setting? Some docs indicate
this, but no information. “Toggling the Relay will turn an off relay on and vice versa”

Command parameters

Mission Planner
Command Field Description
Field

param1 Relay No Relay number.

Set relay state: 1: Set relay high/on (3.3V on Pixhawk,


param2 off(0)/on(1)
5V on APM). 0: Set relay low/off (0v)

param3 Empty

param4 Empty

param5 Empty

param6 Empty

param7 Empty

Mission planner screenshots

Copter: MissionPlanner Settings for DO_SET_RELAY command

MAV_CMD_DO_REPEAT_RELAY
Supported by: Copter, Plane, Rover.

Toggle the Relay pin’s voltage/state a specified number of times with a given period.
Toggling the Relay will turn an off relay on and vice versa

Command parameters
Command Field Mission Planner Field Description

param1 Relay No Relay number.

Cycle count - the number of times the relay should be


param2 Repeat #
toggled

Cycle time (seconds, decimal) - time between each


param3 Delay(s)
toggle.

param4 Empty

param5 Empty

param6 Empty

param7 Empty

Mission planner screenshots

Copter: Mission Planner Settingsfor DO_RELAY_REPEAT command

In the example above, assuming the relay was off to begin with, it would be set high and then
after 3 seconds it would be toggled low again.

MAV_CMD_DO_SET_SERVO
Supported by: Copter, Plane, Rover.

Set a given servo pin output to a specific PWM value.

Command parameters

Command Field Mission Planner Field Description

Servo number - target servo output pin/channel


param1 Ser No
number.

PWM value to output, in microseconds (typically 1000


param2 PWM
to 2000).
param3 Empty

param4 Empty

param5 Empty

param6 Empty

param7 Empty

Mission planner screenshots

Copter: Mission Planner Settingsfor DO_SET_SERVO command

In the example above, the servo attached to output channel 8 would be moved to PWM 1700
(servos generally accept PWM values between 1000 and 2000).

MAV_CMD_DO_REPEAT_SERVO
Supported by: Copter, Plane, Rover.

Cycle a servo PWM output pin between its mid-position value and a specified PWM value,
for a given number of cycles and with a set period.

The mid-position value is specified in the RCn_TRIM parameter for the channel (RC8_TRIM in the
screenshot below). The default value is 1500..

Command parameters

Mission Planner
Command Field Description
Field

param1 Ser No Servo number - target servo output pin/channel.

PWM value to output, in microseconds (typically 1000


param2 PWM
to 2000).

Cycle count - number of times to move the servo to the


param3 Repeat #
specified PWM value
Cycle time (seconds) - the delay in seconds between
param4 Delay (s)
each servo movement.

param5 Empty

param6 Empty

param7 Empty

Mission planner screenshots

Copter: Mission Planner Settingsfor DO_REPEAT_SERVO command

In the example above, the servo attached to output channel 8 would be moved to PWM 1700,
then after 4 second, back to mid, after another 4 seconds it would be moved to 1700 again,
then finally after 4 more seconds it would be moved back to mid.

MAV_CMD_DO_LAND_START
Supported by: Plane (not Copter, Rover).

Mission command to prepare for a landing.

MAV_CMD_DO_SET_ROI
Supported by: Copter, Plane, Rover.

Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by
the vehicles control system to control the vehicle attitude and the attitude of various sensors
such as cameras.

#HW TODO / Questions - What is the frame - altitude above home or above terrain or
relative to vehicle?

#HW TODO / Questions - Is behaviour on all vehicles the same (except for Yaw). If so,
merge 3 sections below.
MAV_CMD_DO_DIGICAM_CONFIGURE
Supported by: Copter, Plane, Rover.

Configure an on-board camera controller system.

The parameters are forwarded to an on-board camera controller system (like the 3DR Camera
Control Board), if one is present.

Command parameters

Command Field Mission Planner Field Description

Set camera mode: 1: ProgramAuto 2: Aperture Priority 3:


param1 Mode Shutter Priority 4: Manual 5: IntelligentAuto 6:
SuperiorAuto

Shutter speed (seconds divisor). So if the speed is 1/60


param2 Shutter Speed seconds, the value entered would be 60. Slowest shutter
trigger supported is 1 second.

param3 Aperture Aperture: F stop number

param4 ISO ISO number e.g. 80, 100, 200, etc.

param5 ExposureMode Exposure type enumerator

param6 CommandID Command Identity

Main engine cut-off time before camera trigger in


param7 Engine Cut-Off
seconds/10 (0 means no cut-off).

MAV_CMD_DO_DIGICAM_CONTROL
Supported by: Copter, Plane, Rover.

AC3.3: Control an on-board camera controller system (like the 3DR Camera Control Board).

Currently/BEFORE AC3.3: Trigger the camera shutter once. This command takes no
additional arguments.

Command parameters

The parameters below reflect the supported fields in AC3.3. In general if a command field is
sent as 0 it is ignored. All parameters are ignored prior to AC3.3.

Command Field Mission Planner Description


Field

Session control (on/off or show/hide lens): 0: Turn off the


param1 On/Off camera / hide the lens 1: Turn on the camera /Show the
lens

param2 Zoom Position Zoom's absolute position. 2x, 3x, 10x, etc.

Zooming step value to offset zoom from the current


param3 Zoom Step
position

Focus Locking, Unlocking or Re-locking: 0: Ignore 1:


param4 Focus Lock
Unlock 2: Lock

Shooting Command. Any non-zero value triggers the


param5 Shutter Cmd
camera.

param6 CommandID Command Identity

param7 Empty

Mission planner screenshots

Copter: Mission PlannerSettings for DO_DIGICAM_CONTROL command.

MAV_CMD_DO_MOUNT_CONTROL
Supported by: Copter, Plane, Rover.

Mission command to control a camera or antenna mount.

This command allows you to specify a roll, pitch and yaw angle which will be sent to the
camera gimbal. This can be used to point the camera in specific directions at various times in
the mission.

Note

Supported from AC3.3, Plane 3.4

Command parameters
Command Field Mission Planner Field Description

param1 Pitch, in degrees.

param2 Roll, in degrees.

param3 Yaw, in degrees.

param4 reserved

param5 reserved

param6 reserved

param7 `MAV_MOUNT_MODE `__ enum value.

Mission planner screenshots

Copter: Mission PlannerSettings for DO_MOUNT_CONTROL command

MAV_CMD_DO_SET_CAM_TRIGG_DIST
Supported by: Copter, Plane, Rover.

Trigger the camera shutter at regular distance intervals. This command is useful in camera
survey missions.

Note

In AC3.1.5 (and earlier) versions this command cannot be shut-off. The camera will continue
to be triggered repeatedly even after the mission has been ended. In AC3.2 (and higher)
providing a distance of zero will stop the camera shutter from being triggered.

Command parameters

Mission Planner
Command Field Description
Field

param1 Dist (m) Camera trigger distance interval (meters). Zero to turn
off distance triggering.

param2 Empty

param3 Empty

param4 Empty

param5 Empty

param6 Empty

param7 Empty

Mission planner screenshots

Copter: Mission PlannerSettings for DO_SET_CAM_TRIGG_DIST command

The above configuration above will cause the camera shutter to trigger after every 5m that the
vehicle travels.

MAV_CMD_DO_FENCE_ENABLE
Supported by: Plane (not Copter or Rover).

Mission command to enable the GeoFence.

MAV_CMD_DO_PARACHUTE
Supported by: Copter (not Plane or Rover).

Mission command to trigger a parachute (if enabled).

MAV_CMD_DO_INVERTED_FLIGHT
Supported by: Plane (not Copter or Rover).

Change to/from inverted flight.


MAV_CMD_DO_GRIPPER
Supported by: Copter (not Plane or Rover).

Mission command to operate EPM gripper.

MAV_CMD_DO_GUIDED_LIMITS
Supported by: Copter (not Plane or Rover).

Set limits for external control.

MAV_CMD_DO_AUTOTUNE_ENABLE
Supported by: Plane (not Copter or Rover).

Enable/disable autotune.

Camera Control and Auto Missions in


Mission Planner
This article describes ArduPilot’s camera and gimbal commands, and explains how these can
be used in Mission Planner to define camera survey missions.

The instructions assume that the camera shutter/gimbal have already been connected and
configured.

Overview
Planning a camera mission is almost exactly the same as planning any other mission with
waypoints and events. The only difference is that in a camera mission you specify commands
to trigger the camera shutter at waypoints or at regular intervals as the vehicle moves. If the
camera is mounted on a gimbal, you can also set the gimbal orientation, or make it track a
particular point of interest.

For simple missions you can manually specify the required waypoints and camera
commands. For more complex paths and grid surveys Mission Planner makes things easy by
providing tools to automatically generating the required mission for arbitrary regions.

This article explains the available camera and gimbal commands. It also describes the auto-
missions provided by Mission Planner and shows how these can be used to generate
composite survey images of arbitrary regions.
Camera commands
 DO_SET_CAM_TRIGG_DIST — Trigger the camera shutter at regular intervals. This is most
commonly used for supporting area surveys.
 DO_DIGICAM_CONTROL — Trigger the camera shutter once every time this command is called.
Camera gimbal commands
If a camera gimbal is used, you can set the camera position (yaw, tilt, roll) or aim it at a
specific region of interest (ROI):

 DO_SET_ROI — Target the camera towards a specified region of interest (position, including
altitude).
 DO_MOUNT_CONTROL — Position the gimbal with the specified roll, pitch and yaw.
Servo and relay commands
Servos and relay outputs can be connected to hardware and activated during missions using
the DO_SET_SERVO or DO_SET_RELAY commands, respectively.

One possible use for these outputs is to control camera features other than the shutter (for
example, to set the zoom level or switch capture from still to video).

Note

The method used to connect your servo or relay to the camera, and what features are
accessible, will depend the camera and its supported remote-control mechanism(s).
Depending on the camera manufacturer, you may find hints at how this can be done in these
CHDK and Stratosnapper tutorials.

Auto-mission types
Mission Planner supports the following Auto Waypoint options. To access these open the
Flight Plan screen, right-click on the map and select the option from under the Auto WP
menu:

 Create WP Circle — Create a circle of waypoints.


 Area — Displays the area of the current polygon (if defined).
 Create Spline Circle — A circle where the altitude of waypoints follows a rising spline
(relevant to flying vehicles).
 Survey (Grid) — Automatically create waypoints and camera control commands to survey a
specified polygon.
 Survey (Gridv2) — Under construction! This is a simpler grid control for creating a
rectangular survey area.
 SimpleGrid — A simple auto-created survey grid. No camera control is defined, so this must
be added separately.
The following sections include community-provided examples of automatic survey missions.

Survey (Grid) Example


Mission Planner’s Survey (Grid) option automatically defines the waypoints required to cover
an arbitrary polygon, and sets DO_SET_CAM_TRIGG_DIST on relevant waypoints to ensure that
pictures are captured at regular intervals in the vehicle’s path.

 Open the Flight Plan tab

 Right click on the map, and select Draw Polygon | Add PolyGon Point. Create points
surrounding the area to be photographed.

 Right click on the map and select Auto WP | Survey(Grid):

 Mission Planner will then display a configuration screen where you can define the camera
make/model and other parameters including teh overlap you want between pictures, lens size, etc.
DO_SET_CAM_TRIGG_DIST is automatically calculated based on this information!
After clicking on Accept, Mission Planner will generate a list of waypoints covering the
specified area, and including take-off and landing waypoints. The DO_SET_CAM_TRIGG_DIST
command is called to set the distance in meters between two camera triggers during your
mission. At the end of the mission DO_SET_CAM_TRIGG_DIST is called again to set the parameter
back to zero (stops capturing images).

The final mission with waypoints and camera triggers looks like this:
The test mission shown above was run. It generated 15 images, which have been stitched
together. A thumbnail of the composite image is shown below (because the full size image is
too large at about 107 MBytes).
Note
This section was originally part of the article Camera Shutter Tutorial using Stratosnapper
(by Hugues)

Creating composite images


There are a number of good free and paid tools for creating composite images:

 Pix4Dmapper - The free “discovery” version supports image merging.


 Microsoft Image Composite Editor (ICE)

Rally Points
Overview
Ordinarily when a plane or copter enters Return to Launch (RTL) mode (typically triggered
by an autopilot failsafe), the default behaviour is to return to the Home point, but there are
often cases when that can be undesirable. For example it may be an area full of people or
property and a system running in RTL mode may very likely be in a state that merits extreme
caution! It is also possible that the flight plan is large enough that should the aircraft enter
RTL mode it is undesirable to traverse all the way back to the point of takeoff.

For this reason we now support the creation of multiple Rally Points. Should an aircraft enter
RTL and Rally Points have been defined then it will proceed to the closest Rally Point, rather
than proceeding to the Home position. Plane will then loiter at that location, and Copter will
perform an automated landing there.
A flight plan with Rally Points. Rally Points are denoted with Purpleplace markers. Mousing
over a Rally Point will give its loiter altitude(as in the middle point above).
Setting Up Rally Points
The following steps are for specifying Rally Points in Mission Planner:

1. Rally Point latitude and longitude.To set a Rally Point’s location, right click on the Flight
Plan map, and select Rally Points > Set Rally Point on the resulting pop-up menu (note that this
ONLY work in the Flight Plan screen, not the Flight Data screen):
2. The Rally loiter altitudes need to be specified (note that the default altitude for Rally Points is
the default waypoint altitude value):

3. Repeat for all desired Rally points!

4. Upload to the vehicle by selecting Rally Points > Upload from the right-click popup menu

The following should be considered when using Rally Points:


1. If using a geofence: its HIGHLY recommended the Rally Points you intend to use at your
event are inside the geofence.
2. Make sure Rally Point altitudes are high enough to clear terrain and buildings.
3. Because of the limited flash memory size on the APM2.x hardware the number of Rally
Points is restricted to 10 on Plane and 6 on Copter – this limit may be expanded on other platforms
such as Pixhawk in the future.
4. On Plane, loiter radius for a Rally Point is the same as all other loiter points; determined by
the WP_LOITER_RAD parameter.
5. The ALT_HOLD_RTL RTL_ALT parameters are NOT used with Rally Points! The aircraft
will transit to the Rally Point at the altitude specified when adding that point.

The following MAVLink parameters control Rally Point behavior:

1. RALLY_LIMIT_KM is the maximum distance a Rally Point may be from the aircraft to be
considered for an RTL event. If all Rally Points are greater than this distance from the aircraft, then
the Home location is used for RTL events (at altitude ALT_HOLD_RTL) unless Home is farther
away than the nearest Rally Point – in which case the nearest Rally point is used. This parameter is to
prevent fly offs if Rally Points have been specified for multiple flying fields. This parameter can be
disabled if set to 0.
2. RALLY_TOTAL is the number of Rally Points currently specified. This parameter will be set
for you by your ground control station (e.g., Mission Planner) when you add and remove Rally Points.
IT IS HIGHLY UNLIKELY YOU WANT TO SET THIS PARAMETER MANUALLY AND IT IS
PROBABLY UNSAFE TO DO SO. RALLY_TOTAL should be 0 if you have specified no Rally
Points and in this case the Home location will be used for RTL events.

Example Flight
Flight in which RTL was commanded nearwaypoint. Plane began loitering about the
southernmost RallyPoint.
Geotagging Images with Mission Planner
This article shows how to Geo-tag images, using Mission Planner to inject data from
telemetry logs into their EXIF tags.

Overview
Geo-tagging images makes it easier to photo-merge the many pictures taken during a camera
mission, and is important for applications including photogrammetry, orthophoto generation,
3D terrain modeling etc.

Mission Planner provides two methods for geotagging your photos from a mission log:

1. CAM messages from dataflash log

ArduPilot can trigger a camera during pre-programmed missions or by RC activation using the
DO_DIGICAM_CONTROL or DO_SET_CAM_TRIGG_DIST commands. Corresponding CAM messages are stored
in the dataflash log, and can be used by Mission Planner to add accurate geotag information to
images.

2. Time offset (image timestamp to log timestamp)

This method uses the time difference between the camera internal clock and system clock to
determine where in the log each image was taken and get the GPS information. Typically users must
tune the offset value in order to find a sensible result.

Tip
This method is less accurate. It is used when there is no
connection between camera and autopilot.

Note

Even if your camera has a built-in GPS you may find this approach provide more accurate
information than the built-in GPS.

Geotagging images
Common pre-steps
 Open Mission Planner and press Ctrl+F. This will open a hidden screen like the one shown
below.
Mission Planner: Temp Screen (Ctrl +F)

 Click the button Geo ref images. It will give you access to the Geo Tagging tool
Mission Planner: Geo Ref Images Screen

 Click the button Browse Log and select the log (.tlog or .log) of the flight related to the
shooting session.

 Click the button Browse Directory and select the folder where your aerial pictures were
downloaded from your camera.
Notice that the camera picture folder can contain other files apart from the pictures. However in terms
of pictures, it must contain just the ones belonging to the flight.

The next steps depend on whether you’re using CAM Messages or a time offset.

CAM messages
In order to process CAM messages, the mission file had to be defined to use remote camera
trigger by means of any of the available mission commands (CAM_TRIGG_DISTANCE,
DO_DIGICAM_CONTROL, etc).

 Select the CAM Message method if it is not selected in the Geotag Mode section.
 Enter Shutter Lag value (in milliseconds) if you know it. If not leave it with 0
 Check that Log offsets are correct according to your log version (usually these are OK)
 Enter FOV information if needed
 Select Use AMSL Alt checkbox if you want absolute altitude. Otherwise, uncheck
 Click Pre-process

If pre-processing works correctly, you will see Done displayed at the end of the Process
Messages Area.
Note
The most common problem in this processing mode is having a discrepancy between the
number of CAM messages in log and the number of pictures in the folder. If the tool finds
that they are different, it will output an error message and abort.

The final step is to “sanity check” the proposed picture location using the Location Kml
button (See Common Post-steps below).

Time offset
Tip

If you haven’t flown yet, one useful trick is to synchronize camera and system time.

 Select the Time Offset method if it is not selected in the Geotag Mode section.

 Click on Estimate Offset button

The tool will calculate (as explained in previous section) the time difference between the first picture
and the first GPS time in the log.

 Copy the calculated offset printed in the Process Messages Area and paste it into the field
Seconds offset

Take a look at the following picture:


 Click Pre-process

If pre-processing works correctly, you will see Done displayed at the end of the Process
Messages Area.
Note

The most common problem when using this method is the use of an inaccurate time offset.
Remember that the estimated time offset is just a starting point!

The Geotag tool will output a warning if pictures are discovered that are not found in the
autopilot log - see picture below:
Mission Planner: Images not found in log at specified offset

The final step is to “sanity check” the proposed picture location using the Location Kml
button (See Common Post-steps below). If the proposed locations are not correct, add or
subtract some seconds to the Offset Time and repeat.
Common post-steps
The remaining steps are to check that proposed picture locations are acceptable and write
location information to the picture’s EXIF data:

 Click on the Location Kml button. Google Earth will open and show the proposed picture
locations (as shown below):
 Check that they are OK. If you used CAM Message mode, there shouldn’t be any problem (iIf
there is, just order pictures alphabetically and check that the first picture in the list is also the oldest
one). If you used Time Offset, just try adding or subtracting seconds to time offset.
 If everything is OK, click on GeoTag Images button and wait to see the processing message
Geo tagging FINISHED.

Geotagged files can be found in geotagged folder inside the original pictures folder

Interface overview
The Mission Planner Geo Ref Images screen is shown below:
Files selection
This is where the user has to select the log location and camera pictures folder

Geotag mode
As explained above, there are two options. CAM Messages and Time offset.

Time offset estimation and shutter lag


This section is only relevant if Time Offset mode has been selected.

The time offset needs to be estimated by comparing the first picture time and the first GPS
time in the log. Once the user clicks the Estimate Offset button, the tool will calculate time
offset and print the result in the Process Messages section at the bottom of the window:

Offset Estimation = 1st_Picture_Time - 1st_GPS_Time_Logged


Notes:

 If CAM Message is selected, the Shutter Lag option is available. Note that GPS positions are
stored at 5Hz by default (if using 3DR GPS) so they are recorded every 200ms.
 If Shutter Lag is less than 100ms, then GPS position is taken from current CAM Message.
 If Shutter Lag is bigger than 100ms, the GPS position is taken from 200ms ahead in log.
Item offsets in log
This section allows the user to tell the tool where specific information can be found in the
log. There are three messages whose offsets need to be defined

 CAM
 GPS
 ATT

Tip

Item offsets are preset to the values for the last stable APM release.

Example of how to find out item offset in a message line within a log

Lets take a look at the GPS Line Format definition at the beginning of a log:

FMT, 130, 45, GPS, BIHBcLLeeEefI,


Status,TimeMS,Week,NSats,HDop,La6t,Lng,RelAlt,Alt,Spd,GCrs,VZ,
T
The field with the number 1 is the one after the Units-definition-word.
In our case, the Units-definition-word is BIHBcLLeeEefI. So the field with number 1 is Status

From this we should have:

TimeMS = 2
Week = 3
Lat = 6
...
FOV and altitude reference
This is where the user can define the Field of View (FOV) and orientation information. This
information is incorporated into the result files but it is not used or stored in the picture EXIF
data.

The AMSL Alt checkbox allows to select either AGL Altitude (Above Ground Level) or
AMSL Altitude (Above Mean Sea Level).

Action buttons
 Pre-process - When this button is clicked, Geotag tool will try to extract and calculate pictures
positions
 Location Kml - When this button is clicked, Geotag tool will open Google Earth and show
pictures position on a map so the user can check their correct positioning.
 GeoTag Images - If everything was correct in previous steps and pictures are well positioned
in the map, this button will write the position information in the EXIF data of every picture
Process messages
This is the place where the tool will output information

Additional information
This section contains links to additional information/information for working with specific
cameras:

 Geotag GoPro Images with a Pixhawk Log File (tuffwing.com)

Alternative Commercial Hardware Solutions


DROTAGx - In-Camera Card Photo Tagging - Airborne Projects
With the appropriate mission from Mission Planner(or similar), DROTAGx
(airborneprojects.com) enables APM compatible Flight Controllers (like Pixhawk) to Trigger
and Geo-Tag your Digital Camera pictures in the air. It works through one of the available
TELEMETRY ports and through a microUSB cable to the camera.
You will have your taken pictures automatically Geo-Tagged by DROTAGx in the microSD
card inside your camera at the time you land, with no need for any post-processing.

DROTAGx enables non DRONE experts to get professional survey level results, with it’s
easy to use and included accessories:

 Photo tagging directly on the camera card itself.


 Have a plain text log file with geographical data in the camera card itself. Includes Yaw, Roll,
and Pitch of the Drone.
 1 Picture every 1.6 seconds.
 Guaranteed correct tagging even if the camera misses several pictures in a row!
 Hotshoe for camera flash feedback included for cameras with external flash. With the hotshoe
installed take pictures as fast as your camera allows for, and microsecond accurate shutter lag.
 Also tags RAW photos.
 Customer support.

Airborne Project’s also provides a comprehensive DROTAGx manual (airborneprojects.com)


with before flight checklists, detailed explanations for diagnosis and other tips.

DROTAGx is used by several national governmental organizations including Land


Management Organizations around the world. Many professional surveying companies also
choose the DROTAG for their tagging needs.
Acknowledgements
This tutorial was created to show you how does it work. Original work from Sandro Benigno
and Guto Santaella updated by Jesus Alvarez.

Mission Planner Features/Screens


Mission Planner Features are detailed in each of the following sections.

The sections are organized to match the major section of the Mission Planner as selected in
the menu along the top of the Mission Planner window.

 Connect (Upper right corner) - How to connect the Mission Planner to your ArduPilot.
Selecting communication devices and rates.
 Flight Data - Information about what you see, and things you can do in the Flight Data
screens.
 Flight Plan - Information about the various aspects of preparing flight plans (Missions).
 Initial Setup - Information about what you see and things you can do in the Initial Setup
screens.
 Configuration Tuning - Information about what you see and things you can do in the
Configuration/Tuning screens.
 Simulation - How you can use the Mission Planner and a flight simulator to ‘simulate’ flying.
 Terminal - Information about what you see and things you can do in the Terminal screens.
 Help - About the help screen, and how to get help with your questions about Mission Planner.
 Other Mission Planner Features - Catch all for miscellaneous items.

Note

Many of the articles are in this section are incomplete. Additional information about many of
the screens can be found in the configuration instructions for the optional hardware. The UI
itself is also largely self explanatory and has been translated into a number of languages.

 Flight Data Screen


 Initial Setup
 Simulation Screen
 Configuration and Tuning Screen
 Compass Calibration
 Accelerometer Calibration
 Radio Control Calibration
 RC Transmitter Flight Mode Configuration
 Flight Plan
 Flight Data
 Language Translations
 Other Mission Planner Features

Mission Planner Ground Control Station


The GCS Flight Data Screen
The screenshot below shows the main “Heads-up Display (HUD)” view of the Mission
Planner Ground Station. Once you have connected to a vehicle this screen will display the
telemetry sent by ArduPilot.
A more detailed view of the HUD (with legend) is given below.
1. Air speed ( Ground speed if no airspeed sensor is fitted )
2. Crosstrack error and turn rate (T)
3. Heading direction
4. Bank angle
5. Telemetry connection link quality (averaged percentage of good packets)
6. GPS time
7. Altitude ( blue bar is rate of climb )
8. Air speed
9. Ground speed
10. Battery status
11. Artificial Horizon
12. Aircraft Attitude
13. GPS Status
14. Current Waypoint Number > Distance to Waypoint
15. Current Flight Mode
Tips for using the Flight Data screen
 The map will only show current position when you have GPS lock or are using a flight
simulator
 Remember how artificial horizons work: when the aircraft tilts to the right, the horizon tilts to
the left. (Just tilt your head and you’ll see what I mean). This is normal! Please don’t tell us it’s
reversed ;-)
 For Plane status, the output meaning is as follows:
o “WPDist” : Distance to next waypoint in meters
o “Bearing ERR”: How far your UAV is from the perfect line to the next waypoint
o “Alt ERR”: How far your UAV is from the target altitude
o “WP”: Next waypoint to hit
o “Mode”: Current autopilot mode.
 “Plane output” means the autopilot’s outputs on the first four channels
 You can issues mode changes and other action commands in the air with the Mission Planner
and other GCSs, but note that you must be under autopilot control for them to take effect. When your
RC toggle switch is in the Manual position, you are no longer under autopilot control and no
commands will take effect. You must be in one of the other positions (Stabilize, Fly-by-Wire, Auto or
any other autopilot-controlled mode) for MAVlink commands to take effect.
 You can change the voice used in the speech synthesis in the Ease of Access center in
Windows Control Panel. Go to the “Text to Speech” options.
 If you double-click the HUD it will popout, allowing you to run the HUD full screen on a
second screen.
 If you double-click on the Speed Guage you can modify the max scale you want to display.
 If you enable the Tuning checkbox and double-click tuning you can graph any data that is
available in the status tab. This means you can have alt, attitude, or many other options in real time.
 You can use custom imagery instead of Google Maps. Press control-F. This allows you to
upload your own orthophotos. Use will require Globalmapper, as this is currently one of the key steps
in exporting in the required format for use in the planner.

Guided Mode
One of the most commonly-used features in pro UAVs is point-and-click mission control in
real time. Rather than just pre-planned missions or manually flying the UAV, operators can
just click on a map and say “go here now”.

That’s now implemented in the Mission Planner. On the GCS map, you can right-click on the
map and just select “Fly To Here”. The UAV will fly there and loiter until you give it another
command. We call this “Guided Mode”. There are more commands coming in this mode
soon, but the functionality is now built-in.

Note: Guided is a separate flight mode. If you enter it you will remain in it until you do
something to change modes. So if you tell it to “go here now”, once it arrives there it will
loiter at the Guided waypoint till you tell it to do something else. Something else could either
be going to another Guided waypoint (staying in Guided mode) or changing to some other
flight mode. If you change to Auto your mission will resume where it left off.

Note

Go to this page for a full description of how to use Guided Mode on Copter.

Mission Planner Initial Setup


DRAFT
This section of Mission Planner, invoked by the Menu item Initial Setup at the top of Mission
Planner, has several subsections. The subsection are where you set up and configure you auto
pilot to prepare it for your particular vehicle. Typically these sections are “must do” actions
that are required.

What you see when you enter this section depends on whether or not you are connected. Each
menu item will bring up a new screen, each is discussed below with links to more detail.

Install Firmware
You will see this menu item If the auto pilot is Not connected. If you have a new auto pilot or
if you want to update the control software that resides in you autopilot, you must install
(upload) the firmware into it. Before you jump to the details for your auto pilot some basic
information is important

Add words about where is the firmware, must have internet connection, how do you select
the right version, beta version, what are the funny numbers you see in previous revisions -
click one and you will see all the versions under each vehicle icon. .

Here are the details for each auto pilot: Install Firmware

3DR Radio
You will see this menu item If the auto pilot is Not connected. Here is what you can do in this
section TBD

Antenna Tracker
You will see this menu item If the auto pilot is Not connected. Here is what you can do in this
section TBD

Mandatory Hardware
You will see this menu item If the auto pilot IS connected. Click this menu item to see the
items you must complete before you attempt to operate your vehicle. Specifics are located in
the area of the web that covers you specific vehicle (Copter, Plane, Rover)

Here is what you can do in this section (TBD just an overview)

Optional Hardware
You will see this menu item If the auto pilot IS connected. Click this menu item to see the
items you may want to complete before you attempt to operate your vehicle. Specifics are
located in the area of the web that covers you specific vehicle (Copter, Plane, Rover)

Here is what you can do in this section (TBD just an overview)

Mission Planner Simulation


The Simulation tab is visible when the “Advanced View” option is selected in the
Configuration tab

This section of Mission Planner, invoked by the Menu item Simulation at the top of Mission
Planner, opens a window with configuration options to set when using HIL simulation
techniques.
At the moment, this is only supported on Airplanes. Please see Simulation for instructions on

Mission Planner Configuration and


Tuning
The APM Forum permits developers to respond to your questions and enables you to research
similar issues, Please choose the sub-forum that is most appropriate to the wiki page and
issues you are having.

Note

DRAFT

This section of Mission Planner, invoked by the Menu item Config/Tuning at the top of
Mission Planner, has several subsections. The subsection are where you configure the
parameters that control how your auto pilot controls your vehicle. Tuning refers to adjusting
parameters in the control loops so your vehicle behaves the way you desire. Most of these
parameters are set for you when you first install your firmware but some must be set before
your first flight or roaming adventure.

What you see when you enter this section depends on whether or not you are connected. Each
menu item will bring up a new screen, each is discussed below with links to more detail.

Planner
You will see this menu item if the auto pilot IS or Is Not connected. This is where you set up
most of the options for how the Mission Planner works. Such things and enabling speach,
where the logs are saved, the units of measure you want to use, ETC. Some of the specifics
are covered here. (TBD Add details or links to other pages with details. What is each of the
entries for, what does it effect, TBD

Basic Pids
You will see this menu item if the auto pilot Is connected. Here is what you can do in this
section TBD

Flight Modes
You will see this menu item if the auto pilot Is connected. Here is what you can do in this
section TBD
Introduction, how to set up 6 channel - add a link etc.

Standard Params
You will see this menu item if the auto pilot Is connected. Here is what you can do in this
section TBD

GeoFence
You will see this menu item if the auto pilot Is connected. Here is what you can do in this
section TBD

FailSafe
You will see this menu item if the auto pilot Is connected. Here is what you can do in this
section TBD

Advanced Params
You will see this menu item if the auto pilot Is connected. Here is what you can do in this
section TBD

Full Parameter List


You will see this menu item if the auto pilot Is connected.

Here is what you can do in this section TBD

Options on the right hand side of this screen: You can save the parameters for your vehicle. It
is a good idea to do that often. Also, you can reload all your parameters from a saved file.
You can also compare the parameters in your vehicle to those in a saved file. This is a very
valuable feature in case you forget what you changed or if your vehicle behaves badly after a
change but you don’t remember the previous value(s) of the parameters you changed - or
even what you changed. An important aspect of the compare feature: After you select the file
with the save parameters you want to compare, you will get a window that lists every
parameter that is different. At the time of the window, nothing has been changed, but if you
check some items and then click Continue, those items will be changed in the local memory
of Mission Planner. You will then need to click the Write Params parameters button in the
right hand panel to copy the changes to the memory in your auto pilot.

Until we get more words here, just experiment.


Clean this up with the right menu words, Load, Save Refres Parms etc.

Copter Pids
You will see this menu item if the auto pilot Is connected to an AruCopter. Here is what you
can do in this section TBD

Compass Calibration
This article explains how to perform basic compass calibration.

Note

This article assumes that you are using the most common configuration — a flight controller
and compass mounted with the arrow on each facing toward the front of the vehicle. If you’re
using a different configuration see Advanced Compass Setup.

Calibration first steps


 Under Initial Setup | Mandatory Hardware select Compass.

 Select your flight controler configuration to automatically enter the most important
configuration information for your board:

o For any modern flight controller (Pixhawk, NAVIO2, etc) select the button
Pixhawk/PX4.

o For APM 2.6, select APM with External Compass.


Mission Planner: Compass Calibration

You normally shouldn’t need to change any of the “General Compass Settings” or compass specific
values (i.e. “Compass #1” section), but you might want to confirm that the Enable compasses and
Obtain declination automatically boxes are checked.

You may wish to disable Compass #2 (the internal compass) if you are seeing the dreaded
“inconsistent compasses” pre-arm message often and you are sure that the external compass’s
orientation is correct.

Onboard Calibration
Copter-3.4 (and higher) supports “Onboard Calibration” meaning that the calibration routine
runs on the flight controller. This method is more accurate than the older “Offboard
Calibration” (aka “Live Calibration”) which runs on the ground station because in addition to
offsets, scaling is also calculated.
To perform the onboard calibration:

 click the “Onboard Mag Calibration” section’s “Start” button

 if your flight controller has a buzzer attached you should hear a single tone followed by short
beep once per second

 hold the vehicle in the air and rotate it so that each side (front, back, left, right, top and
bottom) points down towards the earth for a few seconds in turn
 as the vehicle is rotated the green bars should extend further and further to the right until the
calibration completes

 upon successful completion three rising tones will be emitted and a “Please reboot the
autopilot” window will appear and you will need to reboot the autopilot before it is possible to arm
the vehicle.

If calibration fails:

 you will hear a failure tone and the green bars may reset to the left and the calibration routine
may restart (depending upon the ground station)
 if, after multiple attempts, you are unable to calibrate the compass, Press the “Cancel” button
and change the “Fitness” drop-down to a more relaxed setting and try again.
 if compass calibration still fails it may help to raise COMPASS_OFFS_MAX from 850 to
2000 or even 3000

Onboard Calibration using Stick Gestures (no


GCS)
Copter-3.4 (and higher) supports “Onboard Calibration using RC Controller stick gestures”
meaning that the calibration routine runs on the flight controller with no GCS. This method is
more accurate than the older “Offboard Calibration” (aka “Live Calibration”) which runs on
the ground station because in addition to offsets, scaling is also calculated.

 requires RC calibration first

 to start compass calibration hold throttle stick full up and full right yaw for 2 seconds

 if your flight controller has a buzzer attached you should hear a single tone followed by short
beep once per second

 hold the vehicle in the air and rotate it so that each side (front, back, left, right, top and
bottom) points down towards the earth for a few seconds in turn
 upon successful completion three rising tones will be emitted and you will need to reboot the
autopilot before it is possible to arm the vehicle.

If calibration fails:

 you will hear a failure tone and the calibration routine will restart
 to cancel calibration at anytime hold throttle stick full up and full left yaw for 2 seconds
 if, after multiple attempts, you are unable to calibrate the compass, Cancel with stick and use
normal Onboard Calibration from GCS above

Offboard Calibration (aka “Live Calibration”)


Older versions of ArduPilot rely on the ground station to calculate the compass offsets. To
use this older method:

 Click the Live Calibration button.

A window should pop-up showing you the state of the live calibration.
Mission Planner: Live Compass Calibration

 The aim is to rotate the vehicle so that the coloured trail hits each of the white dots. One way
to do this is to hold the vehicle in the air and rotate it slowly so that each side (front, back, left, right,
top and bottom) points down towards the earth for a few seconds in turn.

Compass Calibration Positions (shown for Copter, but true for all vehicles)

 The calibration will automatically complete when it has data for all the positions. At this
point, another window will pop up telling you that it is saving the newly calculated offsets. These are
displayed on the main screen below each associated compass.

Note
In Copter-3.2.1 and later offsets are considered acceptable
provided their combined “length” is less than 600 (i.e.
sqrt(offset_x^2+offset_y^2+offset_Z^2) < 600). Prior to Copter 3.2.1 the
recommendation was that the absolute value of each offset be less than 150 (i.e. -150
< offset < 150).

Additional information
More information about compass configuration can be found in Advanced Compass Setup.
This includes instructions for how to set up additional compasses, non-standard compass
alignments, compassmot, etc.

General discussion on magnetic interference and ways to reduce it can be found in Magnetic
Interference.

Video demonstration
Video demonstrations of compass calibration.

Accelerometer Calibration in Mission


Planner
This article shows how to perform basic accelerometer calibration (using Mission Planner).

Note

Accelerometer calibration is mandatory if you’re using EKF to estimate vehicle position.

Calibration steps
1. Under Initial Setup | Mandatory Hardware, select Accel Calibration from the left-side menu.
Mission Planner: Calibrate Acceleration

2. Click Calibrate Accel to start the calibration.

Mission Planner will prompt you to place the vehicle each calibration position. Press any key to
indicate that the autopilot is in position and then proceed to the next orientation.

The calibration positions are: level, on right side, left side, nose down, nose up and on its back.
Accelerometer Calibration Positions (Copter)

[/site]

Tip

 It is important that the vehicle is kept still immediately after pressing the key for each step.

 You may need to calibrate the board before it is mounted if the size/shape of the vehicle
makes this difficult.

 The level position is the most important to get right as this will be the attitude that your
controller considers level while flying.

1. Proceed through the required positions (it is not necessary to use the Click When Done
button).
Mission Planner: Accel Calibration - press any key

2. When you’ve completed the calibration process, Mission Planner will display “Calibration
Successful!” as shown below.

Mission Planner: Calibration Successful

Video demonstration (Copter)


Video demonstration of accelerometer calibration. This is for an older version of
Copter/Mission Planner, but is useful as an example of how you might hold a Copter.

https://vimeo.com/56224615
Radio Control Calibration in Mission
Planner
This article shows how to perform radio control calibration using Mission Planner.

Overview
RC transmitters are used to control vehicle movement and orientation. Copter and Plane
minimally control throttle, pitch, roll and yaw, while on Rover we just control throttle and
roll. Each of these control signals are mapped to transmitter stick/switch(s) and in turn to
autopilot channels from the connected receiver.

Calibrating each of the transmitter controls/channels is a straightforward process - simply


move each of the enabled sticks/switches through their full range and record the maximum
and minimum positions.

Transmitter configuration
There are two main transmitter configurations:

 Mode 1: left stick controls pitch and yaw, the right stick will control throttle and roll.
 Mode 2: left stick controls throttle and yaw; the right stick will control pitch and roll.

Transmitter(Mode 1): Recommended Channels


Transmitter(Mode 2): Recommended Channels

Channel mappings
Unused channels can be mapped to control additional peripherals.

Note

 The default channel mappings can be changed using the instructions in RCMAP Input
Channel Mapping.
 Once you’ve calibrated the flight mode you can use the instructions in RC Transmitter Flight
Mode Configuration to specify which vehicle modes are enabled by each switch position.

Preconditions
Safety first
For safety reasons you should disconnect the battery and/or remove propellers before
preforming radio calibration.

Centre trims
Centre trims in manual RC mode before preforming RC calibration. If trims are not centred
you may need to do the RC calibration again after you have used the vehicle (this is easy to
do at the field).

Note
Trims are centred when a moving vehicle does not change direction/speed/orientation when
travelling hands-off with all controls/sticks in neutral positions. If there is any deviation in
direction, speed or orientation, adjust the associated servo to compensate.

Connect autopilot and turn on receiver


Connect the autopilot via USB and turn on your RC transmitter. Verify that the transmitter is
bound to the receiver (the receiver displays a solid green light) and that it is set to use the
correct model for your vehicle.

Open Mission Planner’s INITIAL SETUP | Mandatory Hardware | Radio Calibration screen.
If your RC receiver (Rx) and transmitter (Tx) are bound, you should see the green bars move
when you move the transmitter sticks.

MissionPlanner: Radio Calibration Screen (Copter)


Mission Planner: Radio Calibration Screen(Plane)

Tip

If the bars are not moving then check what LED lights the receiver is displaying:

 no lights - may indicate that it is incorrectly wired to the autopilot (look for connectors that
may have been inserted upside down).
 red or a flashing green light - may indicate that your RC transmitter/receiver need be bound
(see the manual that came with your RC equipment for instructions).
 a solid green light - recheck the autopilot is connected to the Mission Planner and if the bars
are still not moving, try clicking on the Calibrate Radio button.

Calibration steps
1. Open Mission Planner’s INITIAL SETUP | Mandatory Hardware | Radio Calibration screen.

2. Click on the green Calibrate Radio button in the lower right of the window.

Mission Planner will display a prompt to check radio control equipment is on, battery is not
connected, and propellers are not attached. Select OK.

Mission Planner: Select Calibrate Radio and OK to begin calibrating.

3. Move the control sticks and toggle switches on your transmitter to their limits of travel and
observe the results on the radio calibration bars. Red lines will appear across the calibration bars to
indicate maximum and minimum values:
Mission Planner: Input range marked with red lines

Tip
The green bars should move in the same direction as the
transmitter sticks (except for Pitch where the bars move opposite to stick movements -
low values are forward, high values are back). If the green bars move in the wrong
direction, reverse them using your RC transmitter’s channel-reverse function (see
your RC gear’s manual for guidance).

You should also calibrate the channel you have selected for controlling vehicle mode, and any other
channels you have connected to the autopilot.

4. Select Click when Done when all required channels are set at the minimum and maximum
positions.
Mission Planner will show a summary of the calibration data. Normal values are around 1100 for
minimums and 1900 for maximums.

Mission Planner: Radio Calibration Results

5. Turn off your transmitter and disconnect the battery if it was connected.

Radio Control Calibration in Mission


Planner
This article shows how to perform radio control calibration using Mission Planner.

Overview
RC transmitters are used to control vehicle movement and orientation. Copter and Plane
minimally control throttle, pitch, roll and yaw, while on Rover we just control throttle and
roll. Each of these control signals are mapped to transmitter stick/switch(s) and in turn to
autopilot channels from the connected receiver.

Calibrating each of the transmitter controls/channels is a straightforward process - simply


move each of the enabled sticks/switches through their full range and record the maximum
and minimum positions.

Transmitter configuration
There are two main transmitter configurations:
 Mode 1: left stick controls pitch and yaw, the right stick will control throttle and roll.
 Mode 2: left stick controls throttle and yaw; the right stick will control pitch and roll.

Transmitter(Mode 1): Recommended Channels

Transmitter(Mode 2): Recommended Channels

Channel mappings
Unused channels can be mapped to control additional peripherals.
Note

 The default channel mappings can be changed using the instructions in RCMAP Input
Channel Mapping.
 Once you’ve calibrated the flight mode you can use the instructions in RC Transmitter Flight
Mode Configuration to specify which vehicle modes are enabled by each switch position.

Preconditions
Safety first
For safety reasons you should disconnect the battery and/or remove propellers before
preforming radio calibration.

Centre trims
Centre trims in manual RC mode before preforming RC calibration. If trims are not centred
you may need to do the RC calibration again after you have used the vehicle (this is easy to
do at the field).

Note

Trims are centred when a moving vehicle does not change direction/speed/orientation when
travelling hands-off with all controls/sticks in neutral positions. If there is any deviation in
direction, speed or orientation, adjust the associated servo to compensate.

Connect autopilot and turn on receiver


Connect the autopilot via USB and turn on your RC transmitter. Verify that the transmitter is
bound to the receiver (the receiver displays a solid green light) and that it is set to use the
correct model for your vehicle.

Open Mission Planner’s INITIAL SETUP | Mandatory Hardware | Radio Calibration screen.
If your RC receiver (Rx) and transmitter (Tx) are bound, you should see the green bars move
when you move the transmitter sticks.
MissionPlanner: Radio Calibration Screen (Copter)
Mission Planner: Radio Calibration Screen(Plane)

Tip

If the bars are not moving then check what LED lights the receiver is displaying:

 no lights - may indicate that it is incorrectly wired to the autopilot (look for connectors that
may have been inserted upside down).
 red or a flashing green light - may indicate that your RC transmitter/receiver need be bound
(see the manual that came with your RC equipment for instructions).
 a solid green light - recheck the autopilot is connected to the Mission Planner and if the bars
are still not moving, try clicking on the Calibrate Radio button.

Calibration steps
1. Open Mission Planner’s INITIAL SETUP | Mandatory Hardware | Radio Calibration screen.

2. Click on the green Calibrate Radio button in the lower right of the window.

Mission Planner will display a prompt to check radio control equipment is on, battery is not
connected, and propellers are not attached. Select OK.

Mission Planner: Select Calibrate Radio and OK to begin calibrating.

3. Move the control sticks and toggle switches on your transmitter to their limits of travel and
observe the results on the radio calibration bars. Red lines will appear across the calibration bars to
indicate maximum and minimum values:
Mission Planner: Input range marked with red lines

Tip
The green bars should move in the same direction as the
transmitter sticks (except for Pitch where the bars move opposite to stick movements -
low values are forward, high values are back). If the green bars move in the wrong
direction, reverse them using your RC transmitter’s channel-reverse function (see
your RC gear’s manual for guidance).

You should also calibrate the channel you have selected for controlling vehicle mode, and any other
channels you have connected to the autopilot.

4. Select Click when Done when all required channels are set at the minimum and maximum
positions.
Mission Planner will show a summary of the calibration data. Normal values are around 1100 for
minimums and 1900 for maximums.

Mission Planner: Radio Calibration Results

5. Turn off your transmitter and disconnect the battery if it was connected.

RC Transmitter Flight Mode


Configuration
This article shows how you can enable up to 6 autopilot control/flight modes to be set from
your RC transmitter.

Flight modes configuration


The mapping between switch position and flight mode is set in the Mission Planner Flight
Mode screen.

You can set up the flight modes available on the transmitter by doing the following:

 Turn on your RC transmitter

 Connect the Pixhawk (or other flight controller) to the Mission Planner

 Go to the Initial Setup | Mandatory Hardware | Flight Modes screen

Note
As you move your transmitter’s flight mode switch the green highlight bar will move to a different
position.

 Use the drop-down on each line to select the flight mode for that switch position.

 When finished press the Save Modes button.

Setting the flight mode channel


The flight mode channel is the input radio channel that ArduPilot monitors for mode changes.

Transmitter configuration
The transmitter must emit PWM signals in the correct range to allow us to map a mode to a
switch position.

Note

The correct PWM ranges for selectable modes are shown alongside each mode selection
dropdown in the Mission Planner Flight Mode screen (see screenshot above).

If you want to just support three modes (using a three position switch) then you would
configure the transmitter to produce PWM pulse widths of 1165, 1425, and 1815
microseconds for the respective switch positions.

If you want to support 6 modes then the transmitter will need to emit PWM widths of around
1165, 1295, 1425, 1555, 1685, and 1815 milliseconds. Typically this is achieved by
configuring the transmitter to mix a two position switch and a three position switch (giving 6
modes in total). You can also do this with an analog dial if one is available, but it’s hard to
reliably turn a dial to just the right position for six distinct settings.

The sections below provide links showing how to configure transmitters from different
manufactures, and how to test (in Mission Planner) that each switch setting is emitting the
appropriate PWM signal.

Test transmitter switch settings


You can use the Mission Planner Radio Calibration screen to test the PWM pulse widths for
each mode setting.
Simply toggle through the modes on your transmitter and confirm that the PWM for the
selected channel matches the required PWM values. The screenshot below assumes that the
flight mode channel is set to Radio 5.

Tutorials for specific RC hardware


Here are some user-contributed tutorials for doing this (or adding more modes to RC units
with just a two-position toggle) with various RC systems:

 JR XG8 DMSS
 JR9303
 JR X2720
 FlySky FS-I6
 Futaba T8FG
 Futaba T8J
 Futaba T7CP
 Futaba T6EX
 Futaba 9ZAP/ZHP
 Futaba T10CAG
 Futaba T14
 Futaba T14SG
 Futaba 9C Super
 Graupner MX-16
 Turnigy 9x(or an even easier way) (Here!) - Turnigy 9x with ER9x firmware
 Turnigy 9XR
 Turnigy TGY-I6
 Hitech Aurora 9
 Spektrum DX8 (alternate method below)
 Spektrum DX7s
 Spektrum DX7 Version 6

Or build your own six-position switch!

Spektrum DX8 (alternate method)


This section describes an alternative way to set 6 modes with the Spektrum DX8. This
method uses the Gear switch and the Flight mode switch. All the other switches can be
assigned as preferred. This method also allows each mode to be set in the middle of each
mode’s pulse width range so small changes will not change modes. Use Mission Planner
Flight Modes setup to monitor the Current PWM for these adjustments.

1. Setup the switches (required for the 6 modes)

o Hold roller bar down, turn on DX8, scroll down to Switch Select, Click roller bar. Set
switches as follows:
 Gear = Gear (Channel 5)
 FMode = Inh Not assigned to a channel – Used to mix with Gear Sw
(Channel 5) for 6 modes
o Others anyway you want. One method is as follows:
 Knob to aux1 = channel 6 for camera tilt / tuning
 Mix = aux2 = channel 7 to save Way Point or RTL, auto trim or other
settings in APM configuration.
 Flap to aux3 = channel 8 for other uses
o Click BACK until the normal screen appears, or turn off power, then turn power back
on.

2. Set up the non-mixed servo setting for channel 5 (Gear channel controlled by the Gear
Switch)
This will be the values with no mixing - F Mode switch in the 0 position and sets the lowest pulse
width to 1165 ms (mode 1) and highest to 1815 ms (mode 6)

 Click the roller bar, scroll down to Servo Setup, Select the Gear channel, Select Sub Trim.

 Set sub trim to 0

 Select Travel.

 Set travel (left, position 0) for 1165 ms pulse (~90%).

 Set travel (right, position 1 for 1815 ms pulse (~74%).

 Set up Mix 1 to change the Gear Pulse width when F Mode is in position 1

o Click roller, scroll down to Mixing, click roller, scroll to first line under Mix (has xxx
> xxx, AIL > RUD, or some other mix set),click roller, Select Mix 1, Click roller.

o Set Mix: Gear > Gear. Gear changes Gear depending on Switch F Mode setting

o Set Offset = 0, Trim = Inh.

o Set SW = FM 1

o Set the F Mode switch on the transmitter to position 1.

o Set the Gear switch on the transmitter to position 0.

o Set top Rate for pulse width of 1290 ms for mode 2 (~-35%)

(change = 400 ms * -90% * -35% = 126 ms. Result = 1165 ms + 126 ms = 1251 ms = mode 2)

o Set the Gear switch on the transmitter to position 1.

o Set bottom Rate for pulse width of 1685 ms for mode 5 (~– 45%)

(change = 400 ms * +73% *- 45% = -131 ms. Result = 1815 ms - 131 ms = 1684 ms = mode 5)

 Set up a mix 2 to change the Gear Pulse width when F Mode is in position 2
o Mix: Gear > Gear. Gear changes Gear depending on Switch F Mode setting.
o Set Offset = 0, Trim = Inh
o Set SW = FM2
o Set the F Mode switch on the transmitter to position 2
o Set the Gear switch on the transmitter to position 0.
o Rate top Rate for pulse width of 1425 ms for mode 3 (~–72%) (change = 400 ms * –
90% * – 72% = 259 ms. Result = 1165 ms + 259 ms = 1424 ms = mode 3)
o Set the Gear switch on the transmitter to position 1.
o Set bottom Rate for pulse width of 1550 ms for mode 4 (~–89%) (change = 400 ms *
+73% * – 89% = -262 ms. Result = 1815 ms - 262 ms = 1553 ms = mode 4)

Mission Planner Flight Plan


The APM Forum permits developers to respond to your questions and enables you to research
similar issues, Please choose the sub-forum that is most appropriate to the wiki page and
issues you are having.

Note

DRAFT

This section covers what you see and what you can do when in the Flight Plan area of
Mission Planner - selected in the menu at the top of the Mission Planner application. This
section provides for planning and executing flight plans - called missions.

The Flight Plan Screen


 Upper left corner: Displays the current latitude and longitude of the mouse position and the
distance between way points.
 Right side: Displays the Actions panel. To open/close the panel click the green chevron icon
[<<]/[>>] in the upper right hand corner
 Way Point Detail: At the bottom of the planner view you will see the green “Waypoints” bar
with a chevron (up or down icon) on the right side of the bar. Click the chevron to open or close the
way point detail. Each mission action entry is entered in the list.

Mission Planning Details


Here is where you will find the details for mission planning:

 Planning a Mission with Way points and Events


 Using Python Scripts in Mission Planner

Mission Planner Flight Data


DRAFT

This section covers the information you will need to use the features in the Mission Planner
Flight Data - selected in the Top menu of Mission Planner.

 :ref:`An Introduction <mission-planner-ground-control-station>` An overview with pointers


to the various areas of information.

 Heads Up Area (HUD) This is the area in the upper left side of the Mission Planner menu.
o See “An Introduction” above to see what each area and entry displays.
o You can detach the HUD to a separate window by double clicking anywhere in the
window. Close the window to put back in the Mission Planner.
o Options: Several Options are available by right clicking the HUD.
 User Items: You can add any of the telemetry parameters to the display by
right clicking on the HUD, clicking User Items, and checking the items you want displayed. Note that
you can view all of the telemetry in the Control and Status area - Status button.
 Other options - what they do TBD

 Control and Status (Lower Left) Area The Control and Status area of the Flight Data screen is
in the lower left hand portion of Mission Planner. In this area you can select any of several different
menu items. Some items provide informations (status) and other items allow control of the vehicle
using the telemety uplink. (Telemetry radio is required)
o Quick: Use this area for a quick look at just a few telemetry values in large text.
Double click to add items.
o Actions: Use this area to control your Auto Pilot either for testing (using USB and no
motor battery) or for controlling you vehicle More detail TBD
o Gauges: Use this area to gauges for the four popular telemetry data. Double click the
speed gauge to change the top speed.
o Status: Clicking the Status menu button will display all of the telemetry parameters
o Servos: TBD
o :ref:`Telemetry Logs <common-mission-planner-telemetry-logs>` Use this section to
view, analyze, convert, and play back telemetry logs that are recorded by Mission Planner.
 Playing Back Missions with Tlogs Specifics on playing back your mission
and viewing the mission in the map area.
o Data Flash Logs This is just a short cut to analyze a data flash log from this area
without going to the Terminal mode. Click Browse to open a log file and establish a new window to
view/analyze the log. Details here.
o Scripts: - A different way to create missions

 Map Area: The map area on the right side of the Flight Data screen displays the vehicle track
as it moves, provides other information and allows the user to enter some control actions - which send
commands to the vehicle (telemetry required)

 Right Click Options: Right click on the map area to select one of these options.

 Fly to here: (Command) This is guided mode (see bottom of this page Guided Mode)

 Fly to here Alt: (Command) Lets you enter an altitude.

 Point Camera Here: (Command)

 Trigger Camera Now (Command):

 Flight Planner: You can open the flight planner window in the map area and leave the rest of
the Flight Data Screen as is.
 Information/options at the bottom of the screen
o hdop, sats: shows information about the GPS reception quality and the number of
satellites in view.
o Legend: Each color corresponds to the color of the corresponding line showing
directions and headings. Black is the GPS track as you vehicle travels.
o Tuning: Opens/closes the tuning window. Details are found in various areas of the
website (Need links for Plane, Copter).
o Auto Pan: Checking this box will make the map follow the vehicle and thus keep the
vehicle in the center of the screen.
o Zoom: Shows or selects the current zoom level of the map.

 Scroll bar: Use the scroll bar to change the zoom level of the map.

 Other Hints and Tricks for Map area

o Change the map used: Right Click, select Planner, change the map, then close the
Planner view. The new map will now be used in the Flight Data view.

Note: To open the action pane in Planner view, click the little green chevron button [<<] in the upper
right corner.

Mission Planner Language Translations


The steps to do a translation are listed below.

1. Open Mission Planner


2. Press control-f
3. Press Lang Edit
4. Pick the language from down the bottom of the screen.
5. Edit “other lang” column.
6. Click save, once you’re done.
7. Please then post a link to the contents of the “translation” folder from inside the mission
planner

Other Mission Planner Features


Other features that aren’t specific to the modes already described in the menu:

 The Mission Planner Console: When you first open Mission Planner you will see a small
window with a black background with a lot of text scrolling by. When Mission Planner finally opens,
the window may disappear. That window is called the console. You can keep it alive by checking a
box at the bottom of the Mission Planner help screen.
 Shortcut Keys:
o F12 - disconnect or connect from/to USB or Telemetry
o F5 - Refresh parameters
o F2 - change to Flight Data tab
o F3 - change to Flight Planner tab
o F4 - change to Configuration tab
o F5 - Refresh parameter list
o CTL-G Nmea Output
o CTL-W Wizard config interface
 You can display video from your aircraft on the Mission Planner’s HUD if you are digitizing
it with the same laptop (with a video capture card or USB device). Just select the device in the
Configuration/Planner screen, chose video format and press “Start” to begin recording. If you select
the HUD checkbox, the video display will replace the artificial horizon in the HUD.
 You can also record the video that you’re displaying to an AVI file. Just right-click in the
HUD and choose from the menu that will pop up.
 You can send NMEA (GPS) output to the serial port. Press control-g and you will get a box
asking for a comport and baud rate to output standard NMEA data at 2 Hz, to any serial port. One
application would be to use com2com to emulate a serial port to use with third party applications.
 You can have the Mission Planner load non-standard firmware (any .hex files that you’ve
made or got elsewhere) to APM by pressing Control-C on the firmware loading screen.
 Mission Planner can give you audio speech alerts for events that you choose, such as hitting
waypoints or low battery. Just go to Configuration | Planner | Speech | Enable Speech
 Mission Planner source code can be downloaded and compiled (built) by those with
programming skills in C# and who are familiar with Microsoft Visual Studio - see Building Mission
Planner with Visual Studio (Dev Wiki).
 Mission Planner can be scripted - see Using Python Scripts in Mission Planner (planner wiki)
 Geotagging Images with Mission Planner
 Using Python Scripts in Mission Planner
 Swarming

Using Python Scripts in Mission Planner


One of the cool features of the Mission Planner is that it can run Python scripts, which is an
easy way to extend the functionality of the program beyond its built-in functions. It can also
enable integration easily with other dlls and modules far beyond the original scope of the
Mission Planner.

Overview
You can easily program your UAV to do anything, from robotic acrobatics to just script-
driven missions. Python 2.x is currently supported, up to 2.7 (Mission Planner uses an
implementation of IronPython internally)

Aside from the regular Python commands, these are the special Mission Planner commands
you can use:

cs.VARIABLENAME = currentstate
Any variable on the status tab in the planner can be used.

Script.METHODNAME(...)
options are

 Script.Sleep(ms)
 Script.ChangeParam(name,value)
 Script.GetParam(name)
 Script.ChangeMode(mode) (same as displayed in mode setup screen ‘AUTO’)
 >Script.WaitFor(string,timeout)
 Script.SendRC(channel,pwm,sendnow)

Here’s an example, which tells a multicopter to do a roll in the air!

print 'Start Script'


for chan in range(1,9):
Script.SendRC(chan,1500,False)
Script.SendRC(3,Script.GetParam('RC3_MIN'),True)

Script.Sleep(5000)

while cs.lat == 0:
print 'Waiting for GPS'
Script.Sleep(1000)

print 'Got GPS'


jo = 10 * 13
print jo
Script.SendRC(3,1000,False)
Script.SendRC(4,2000,True)
cs.messages.Clear()
Script.WaitFor('ARMING MOTORS',30000)
Script.SendRC(4,1500,True)
print 'Motors Armed!'
Script.SendRC(3,1700,True)

while cs.alt < 50:


Script.Sleep(50)

Script.SendRC(5,2000,True) # acro
Script.SendRC(1,2000,False) # roll
Script.SendRC(3,1370,True) # throttle

while cs.roll > -45: # top half 0 - 180


Script.Sleep(5)

while cs.roll < -45: # -180 - -45


Script.Sleep(5)
Script.SendRC(5,1500,False) # stabilize
Script.SendRC(1,1500,True) # level roll
Script.Sleep(2000) # 2 sec to stabilize
Script.SendRC(3,1300,True) # throttle back to land
thro = 1350 # will descend

while cs.alt > 0.1:


Script.Sleep(300)

Script.SendRC(3,1000,False)
Script.SendRC(4,1000,True)
Script.WaitFor('DISARMING MOTORS',30000)
Script.SendRC(4,1500,True)

print 'Roll complete'


Classes Exposed by Mission Planner to Python
Mission Planner exposes classes using the following code:

Linking classes into python

scope.SetVariable(Variablename, ClassInstance);
That the following classes are exposed:

 scope.SetVariable("MAV", MainV2.comPort);
 scope.SetVariable("cs", MainV2.comPort.MAV.cs);
 scope.SetVariable("Script", this);
 scope.SetVariable("mavutil", this);

This is where you can add your own classes. For now lets us explore the important methods
and properties you can use into your script using these classes.

Class Name: Script.cs

Python Variable: Script , mavutil

Method Description

bool ChangeParam (string param, float value)

Float GetParam (string param)

bool ChangeMode (string mode) Changes flying mode

bool SendRC (int channel, ushort pwm, bool sendnow) Send Chxout values.

Class Name: CurrentState.cs

Python Variable: cs

Method Type Description

roll float Roll (deg)

pitch float Pitch (deg)

yaw float Yaw (deg)

lat float Latitude (deg)

lng float Longitude (deg)

groundcourse float Ground Course (deg)

alt float Altitude (dist)

altoffsethome float Altitude Home Offset (dist)

gpsstatus float GPS Status

gpshdop float GPS HDOP

satcount float Satellite Count


altd100 float Altitude / 100

altd1000 float Altitude / 1000

airspeed float Airspeed (speed)

targetairspeed float Airspeed Target (speed)

groundspeed float Ground Speed (speed)

verticalspeed float Vertical Speed (speed)

wind_dir float Wind Direction (deg)

wind_vel float Wind Velocity (speed)

ax, ay, az float Acceleration Values in x,y,z

gx, gy, gz float Gyro Values in x,y,z

mx, my, mz float Mag Values in x,y,z

failsafe bool Faile Sate Active or Not

rxrssi float

chx1in, chx2in, …. chx8in float Input Channels from 1 to 8

ch1out, chx2out, …. chx8out float Output Channel form 1 to 8

nav_roll float Roll Target (deg)

nav_pitch float Pitch Target (deg)

nav_bearing float Bearing target (deg)

target_bearing float Bearing Target (deg)

wp_dist float Distance to Next Waypoint (dist)

alt_error float Altitude Error (dist)

ber_error float Bearing Error (dist)

aspd_error float Airspeed Error (speed)

wpno float Flying Mode

mode String Flying Mode

dimbrate float Climb Rate (speed)

tot int Time over target (sec)

distTraveled float Distance Traveled (dist)

timeInAir float Time in Air (sec)


turnrate float Turn Rate (speed)

radius float Turn Radius (dist)

battery_voltage float Battery Voltage (volt)

battery_remaining float Battery Remaining (%)

current float battery Current (Amps)

HomeAlt float

DistToHome float Absolute Pressure Value

press_abs float Absolute Pressure Value

sonarrange float Sonar Range (meters)

sonarVoltage float Sonar Voltage (volt)

armed bool True if Armed

Please note that although these properties are read/write howvever writing to some of them
can corrupt the status. Use methods from Script class to control the vehicle. for example use
Script.ChangeMode(xmode) rather than cs.mode = xmode.

Class Name: MavLink.cs

Python Variable: MAV

Method Description

bool setParam (string paramname, float value) Same as Script.ChangeParam()

bool doARM (bool armit) BE CAREFUL when using it.

byte getWPCount ( ) Gets Waypoints Count.

Using CPython Standard Libraries


You can import standard libraries from your regular Python 2.x folders by adding this line to
top of your script (replacing “c:\python27\lib” with whatever the folder is on your drive):

import sys
sys.path.append(r"c:\python27\lib")
Here, for example, we’re importing the serial, os, and threading libraries, which are in two
folders in a typical Python 2.7 installation. Appending the specific folder paths for those three
libraries first allows us to import them with the next “import” command:
import sys
sys.path.append(r"c:\Python27\Lib\site-packages")
sys.path.append(r"c:\Python27\Lib")
import serial, os, threading
Tutorials and sample scripts
 Scripting fixed-wing acrobatics
 Adding new variables and classes
 Writing a time-based script

You might also like