Home How to install Mission Planner on Linux?
Post
Cancel

How to install Mission Planner on Linux?

As we all know, there are many mavlink supported Ground Control Station (GCS) software like QGroundControl, APM Planner 2.0, UgCS, MAVProxy, etc., available for Linux based operating systems. But actually, there’s one more GCS software that stands out in the list named Mission Planner, which natively supports only the Windows operating system.

Because of its modest user interface and the additional features compared to others, Mission Planner is one of the preferable GCS for most drone operators and developers.

Mission Planner running on Ubuntu Mission Planner running on Ubuntu

Mission Planner is a Windows-based application built using .NET Framework. It’s not possible to directly install Windows applications on Linux, but it’s possible to run Windows applications on a Linux environment using any cross-compilers.

Mono is a software platform designed to allow developers to create cross-platform applications part of the .NET Foundation. It is possible to run most Windows-based programs on many Linux distributions using Mono. Hence, it’s possible to run the Mission Planner on Linux using Mono.1

In simple words, you cannot able to install Mission Planner on Linux but, you can able to run Mission Planner on Linux using Mono.

You can follow these steps to run Mission Planner on your Linux machine:

Installing Mono on Linux

It is possible to install the latest stable version of Mono on the following Linux Distributions:2

  1. Ubuntu
  2. Debian
  3. Raspbian
  4. Red Hat Enterprise Linux (RHEL)
  5. CentOS
  6. Fedora

Since I’m using the Ubuntu distribution, I’ve added the installation steps for Mono on Ubuntu. Kindly follow the instruction on the official downloads page of Mono for other distributions.

For installing Mono on Ubuntu, you can follow the below-mentioned steps:

Add Mono Repository

For Ubuntu 20.04 (amd64, armhf, arm64, ppc64el)

1
2
3
4
$ sudo apt install gnupg ca-certificates
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
$ echo "deb https://download.mono-project.com/repo/ubuntu stable-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list
$ sudo apt update

For Ubuntu 18.04 (i386, amd64, armhf, arm64, ppc64el)

1
2
3
4
$ sudo apt install gnupg ca-certificates
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
$ echo "deb https://download.mono-project.com/repo/ubuntu stable-bionic main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list
$ sudo apt update

For Ubuntu 16.04 (i386, amd64, armhf, arm64, ppc64el)

1
2
3
4
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
$ sudo apt install apt-transport-https ca-certificates
$ echo "deb https://download.mono-project.com/repo/ubuntu stable-xenial main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list
$ sudo apt update

Advertisement

Kindly copy the above commands and execute them in the terminal. You can also open the terminal window using the keyboard shortcut Ctrl + Alt + T

Install Mono

Once completing the above step, run the following command to install Mono on your machine

1
$ sudo apt install mono-complete

Verifying Installation

The installation of Mono on your device can be verified using the following command:

1
$ mono

Once after the execution of the above command, if the terminal shows a warning like the below means then, Mono is successfully installed on your machine.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Usage is: mono [options] program [program-options]

Development:
    --aot[=<options>]      Compiles the assembly to native code
    --debug[=<options>]    Enable debugging support, use --help-debug for details
    --debugger-agent=options Enable the debugger agent
    --profile[=profiler]   Runs in profiling mode with the specified profiler module
    --trace[=EXPR]         Enable tracing, use --help-trace for details
    --jitmap               Output a jit method map to /tmp/perf-PID.map
    --help-devel           Shows more options available to developers

Runtime:
    --config FILE          Loads FILE as the Mono config
    --verbose, -v          Increases the verbosity level
    --help, -h             Show usage information
    --version, -V          Show version information
    --version=number       Show version number
    --runtime=VERSION      Use the VERSION runtime, instead of autodetecting
    --optimize=OPT         Turns on or off a specific optimization
                           Use --list-opt to get a list of optimizations
    --attach=OPTIONS       Pass OPTIONS to the attach agent in the runtime.
                           Currently the only supported option is 'disable'.
    --llvm, --nollvm       Controls whenever the runtime uses LLVM to compile code.
    --gc=[sgen,boehm]      Select SGen or Boehm GC (runs mono or mono-sgen)
    --handlers             Install custom handlers, use --help-handlers for details.
    --aot-path=PATH        List of additional directories to search for AOT images.

Verification of Mono Installation - Ubuntu Verification of Mono Installation - Ubuntu

Downloading Mission Planner

The official downloads page of Mission Planner hosts different versions of Mission Planner in two formats, such as .msi and .zip formats. For running Mission Planner on Linux, we need to download any of the zipped versions available.

Advertisement

I’m adding links for both the latest version and the stable version of zipped Mission Planner. Kindly download any one of the versions that suit your needs:

Executing Mission Planner on Linux

After downloading any of the zipped Mission Planner versions(MissionPlanner-stable.zip or MissionPlanner-latest.zip), unzip the file.

Navigate to the decompressed folder (that you’ve unzipped now) in the terminal or open the terminal in that folder by right-clicking on that folder.

Now, run the following command in the terminal:

1
$ mono MissionPlanner.exe

Tada, now you can able to run Mission Planner on your Linux device!!!

Mission Planner running on Ubuntu Mission Planner running on Ubuntu

Conclusion

I’ve tried to explain how to run Mission Planner on Linux with the acquired information from various sources. I’m expectantly waiting for your valuable feedback and suggestions regarding this article.

At last, Sharing is Caring, feel free to share with your friends if you’ve liked this article. Thank you!

References

Advertisement

This post is licensed under CC BY-SA 4.0 by the author.

Advertisement

Contents

Advertisement

Dhulkarnayn - Elucidate Drones

Dhulkarnayn

I am 25 years old drone developer, holds a postgraduate degree in Avionics. I've worked on a few complex projects like drone swarms, drone light shows, autonomous landing of drones using computer-vision algorithms, etc. Since childhood, I'm much passionate about electronics, aerospace & engineering.

Please consider supporting this project!

If this article has been of help to you, and you feel generous at the moment, don’t hesitate to buy me a coffee. ☕

Buy me a coffee

12 Prominent Applications of Drones - From Agriculture to Military

What is Drone in a Box technology?