(Changed text 5/24/2012, 6/20/13)

You can now find all the details for compiling Mission Planner here http://dev.ardupilot.com/wiki/compile-mission-planner/

This post will probably be removed and is not current.

Here you will find information on downloading, compiling and running Mission Planner using the github source code and Visual Studio 2012.  As progress is made it will be documented for those other persons that may want to try this massive task.  

Scroll down to my reply on 5/25/2013 for the process that works after Michael updated the repository.


Original post is text below..


What are the minimum requirements to compile Mission Planner Using WIndows 7.

Specifically: Can I use Visual Studio 2008 and Net 3.5? (no, VS 2010 +  Net 4.0)

Should all the current files required be here: https://github.com/diydrones/MissionPlanner

Argggg!  I know a lot of other persons have asked these questions so sorry. None of the posts I have found seem to help. Spent hours researching today and in the past. Probably doing something stupid.

In case it matters here are the steps I have done:

1. Learned about Git

2. Installed Git GUI on my PC

3. Using Git GUI created a copy of https://github.com/diydrones/MissionPlanner    (1.2.52) to my PC

     This seems to have all folders ( references, Libs etc)

4. Create a new Visual Studio project using existing code files   (Visual Studio 2008)  from the Git downloaded files folder.

     Selected Visual C# as project type,  Windows Application as Output type, and named it Mission Planner.

     So Far all looks OK.  All the references etc seem to get set.

However when I compile I get one error   (Ignore all this and go to later replies... )

Error 1 Invalid Resx file. Could not find file 'C:\Users\Dennis\Documents\AMP MP Gitb\ExtLibs\BSE.Windows.Forms\Resources\ListViewItemSorter.bmp'. Line 157, position 5. C:\Users\Dennis\Documents\AMP MP Gitb\ExtLibs\BSE.Windows.Forms\Resources\Resources.resx 157

Sure enough ListViewItemSorter.bmp is not in the indicated folder.

Patching that file with a dummy bmp image (just to test build) I then get then get other errors.  One indicates I need system.drawing 4.x.x.x.    I have 2.0.x.x.x  of that an most other references.  This may indicate I need NET 4.0    and / or and newer version of Visual Studio.

Is there a tutorial for setting this up - with prerequisites?   OK ,if not, and I can get it working, I will try to do such a thing and save lots of questions in the future.



You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –


  • Dennis,

    I am getting the same "UploadProgressArgs" error while trying to build Mission Planner v1.2.57 with Visual Studio 2012 Express.  How were you able to get past this error (all errors for that matter) and successfully build the MP and what version were you using? Do you have a detailed debugging processes you can share with me? Any help will be greatly appreciated.


    • It has been a year since I did my work with MP (The document at: http://dev.ardupilot.com/wiki/buildin-mission-planner/).  Since then many things have changed.  I was going to "git"  the commit for ver 1.2.57 that includes the project files and give it a go but I could only find the current commit..  I don't remember if the older commits were available on google but now removed or ???  I would need the project files for 1.2.57 to try on the 1.2.57.   I can only suggest a couple of things.

      1. Be sure you have the version 1.2.57 installed and running  ( http://firmware.diydrones.com/Tools/MissionPlanner/  ) as some of the dll files etc. will be in there. See the document for how to add the reference paths.

      2. Then follow the document step by step.  

      3. You might try working with the current commit and see if that will work, but I suppose you have a particular reason for working with version 57

      If that still does not help, then I am afraid I can't help much.  I have moved on from trying to modify MP

      and will probably not have time to rework the document for each release of MP.  You might try asking Michael O for some help but he is probably well past that version and may not be able to offer much except for the current release.


  • Hi Dennis,

    Great, I am happy to write this up, but I would also very much like it if you would join the Wiki Editors group here:

    http://diydrones.com/group/manual-editors There are also some editing tips here.

    And if you just post a note there to Joshua Ott and ask him to sign you up for editing privileges he can hook you in.

    Also, you will find editing tips in the Wiki Forum on Editing information Here:


    Once I get it in there, just go in and fix it as you see best.

    Good if you know a bit of HTML, but definitely not rocket science.

  • 5/25/2013
    This is the process used to download and build Mission Planner as of 5/25/2013. Please note that the process may or may not work in the future as the project is continually being updated and the developer(s) may not have had time to keep the github site configured to work with a default installation of Visual Studio.

    WARNING: Use your edited or not edited version of Mission Planner at your own risk. Do not assume that it will work the same as the installed version. It may corrupt your APM, firmware, parameters or have other unknown effects. If this happens, do not call!

    - You will need to install Visual Studio 2010 (VS) or 2012 and Net 4.0 (or higher?).
    - Start here: http://www.microsoft.com/visualstudio/eng/downloads and download either of these:
       Visual C# 2010 Express
       Visual Studio 2012 Express for Windows Desktop (This one used for this process. The install includes Net 4.0)
       The express versions are free but you will have to sign up for a Microsoft account and get the key code to keep using it.

        I have not tested the process on VS professional.

    NOTE: If you have never used Visual Studio, please do not assume the DIY Forum will be the place for answers to your learning issues. Get some training and learn how to use VS. Mission Planner is a very large project. in fact it is a complete solution with many projects. Many issues/errors/warnings will make no sense if you are new to VS so make extensive use of internet searches to find information.

    - Test your VS installation and make sure it works. Do a simple example or open one of your projects.
    - Be sure your installation of Mission Planner (MP) is current. Do an update or install fresh from the .msi and then do an update check.
    - You will need to download the MP source code. To do this in a windows environment you will need some tools. I use GIT for windows.
    This set of tools will not only download the source to your PC but will help you keep track of your changes. With proper setup and permissions from the development team you can probably even submit your changes. You will have to research how to do that.
    - There are various sources for the needed tools. I got mine here: http://msysgit.github.io/
    - Download and install the package and if you do not know what it does. Do some reading before you start using it.
    Here are some links: http://git-scm.com/documentation  or, click the online help button in Git GUI (the Graphic User Interface for the tools you installed.)
    - Now you can download the current source files (and all the supporting files) from the Mission Planner github location.
    - Open Git GUI
    - Click Clone Existing Repository. (This makes a copy of what is on the github web to your PC)
    - In the source Location enter https://github.com/diydrones/MissionPlanner
    - In the Target Directory enter the location and folder name where you want to put the download.
    (Note you will want to enter the name of a folder that does not exist)
    - Click [Clone]. It will work for a while without any feedback so be patient. After a while (up to 10 minutes) you will see the
    Git GUI open the downloaded folder. You can exit Git GUI at this time.
    - Run your installation of Visual Studio and open the downloaded MP project
    - Click [File] [Open Project..]
       Browse to the home directory of the downloaded folder and click on ArdupilotMega.csproj (or the .sin file)
       After initial setup you will see warnings. Ignore those for now.
    - In the VS solution Explorer, Right click the ArdupilotMega project (Icon is box with C#)
    - Select Properties
    - Click on Reference Paths in properties.
    - In the Folder entry, browse to and select the location of the installed Mission Planner.
      This will be in C:\Program Files (x86)\APM Planner or, on 32 bit OS, systems in C:\Program Files\APM Planner
    - Click the Add Folder button to put the path to the installed MP into the Reference paths box.
    - Do a build. Click [BUILD] [Build Solution]
    - You will probably see many errors (78 more or less) Most of these are about Namespace names that do not exist (Missing references). The File and Project are listed for each error.
    - Pick the PROJECT with the most errors (in my case it was OpenTK.GLControl project
    - In solution explorer, right click the properties for the project, select Reference Paths and add the path to the installed APM Planner just like you did for project ArduPilotMega. Be sure to click the [Add Folder] button.
    - Build the solution to see more errors. Add the Reference Path for the other projects with namespace problems and after each build.
    Here is the list of projects needing the Reference Path (as of 5/25/12)
         ArdupilotMega, OpenTK.GLControl, CsAssortedWidgets, GMap.NET.Core.
    - After all errors regarding namespaces are resolved, you will probably see some errors about not importing the key file mykey.pfx (in two projects KMlib and Core.)
    - For those two projects only, go to the properties, Signing, and un-check the signing box.
       (Do not un-check the signing for any of the other projects as that will cause other problems)
    - Build the solution. It should build without errors at this time. If not, do a web search on the errors to see if you can find a solution. Most errors will be related to having an incompatible setup on you PC, not having the latest .dll files or .dll files not compatible with Net 4.0, etc. If this is the case it may be that the developer(s) have made a lot of progress adding new tools, new .dlls and have not yet had time to clean up the github repository so that the project (solution) will build in a default Visual Studio installation. Searching the web for information on the errors is the way to learn and fix many issues without
    bothering the development team.
    - Click [Debug] [Start without debugging]. Mission Planner should run. Do not connect your APM at this time. There are configuration files missing from the Github download that are only provided in the Mission Planner installation package. You will need to copy those to the Folder you are using for the visual Studio project.
    - Doing a Debug will put up some warnings. You should learn what they mean and learn about debugging before you start editing.
    - Here are some optional steps.
    - In VS, Select [BUILD] [Configuration Manager] This will show you which projects are compiled (built) each time you do a build or re-build solution. Check 'Build' for the (three?) that are not checked:
      (3DRRadio, Updater, wix)
    - Do a Build, Clean Solution then Build, Rebuild solution. You may find 3DRadio needs a reference to IArduinoComs. I could not find this reference so I unchecked building for 3DRadio for now.
    - Uncheck the three option builds (3DRRadio, Updater, wix) Unless you need to change those you do not need to compile them. This is true for all the other projects you will not be editing.
    - In order for your VS version of MP to function with the AMP connected, you will need to copy several files from the folder where MP is installed (C:\Program Files (x86)\APM Planner) to the folder where your VS project is located. I just copied all the .XML files from C:\Program Files (x86)\APM Planner to my project folder (replacing 5) which seemed to work.

    - At this point my local VS version of MP seems to be working. I can connect to my APM, Flight Data including status works, Configuration brings up my parameters, Terminal works and Flight Planner seems to work. As mentioned before... Use your VS version at your own risk.
    I personally would not try to do an actual configuration or use it to fly my quad until I test a lot of things.

    For more details that may help see https://sites.google.com/site/npaecopterguide/source-codes/mission-...   I think the google site does not have the latest source but the notes are great.

    - Good luck

  • Hi Dennis,

    I looked at Michael's Readme .txt which references the VS compile 1 to 4 screens.

    When you do get this working which seems imminent, I would greatly appreciate it if you could write up a step by step walk through that leads to a successfully loaded and compiled version of Mission Planner.

    I have 2012 VS Pro, but if this is doable using VS Express, I will write it up for the Wiki.

    From what you have said so far it looks like Express which is free is a possibility.

    Are you using Windows 7? 

  • Developer

    VS 2010 + with .net 4.0

This reply was deleted.


DIY Robocars via Twitter
How to use the new @donkey_car graphical UI to edit driving data for better training https://www.youtube.com/watch?v=J5-zHNeNebQ
DIY Robocars via Twitter
RT @SmallpixelCar: Wrote a program to find the light positions at @circuitlaunch. Here is the hypothesis of the light locations updating ba…
DIY Robocars via Twitter
RT @SmallpixelCar: Broke my @HokuyoUsa Lidar today. Luckily the non-cone localization, based on @a1k0n LightSLAM idea, works. It will help…
DIY Robocars via Twitter
@gclue_akira CC @NVIDIAEmbedded
Nov 23
DIY Robocars via Twitter
RT @luxonis: OAK-D PoE Autonomous Vehicle (Courtesy of zonyl in our Discord: https://discord.gg/EPsZHkg9Nx) https://t.co/PNDewvJdrb
Nov 23
DIY Robocars via Twitter
RT @f1tenth: It is getting dark and rainy on the F1TENTH racetrack in the @LGSVLSimulator. Testing out the new flood lights for the racetra…
Nov 23
DIY Robocars via Twitter
RT @JoeSpeeds: Live Now! Alex of @IndyAChallenge winning @TU_Muenchen team talking about their racing strategy and open source @OpenRobotic…
Nov 20
DIY Robocars via Twitter
RT @DAVGtech: Live NOW! Alexander Wischnewski of Indy Autonomous Challenge winning TUM team talking racing @diyrobocars @Heavy02011 @Ottawa…
Nov 20
DIY Robocars via Twitter
Incredible training performance with Donkeycar https://www.youtube.com/watch?v=9yy7ASttw04
Nov 9
DIY Robocars via Twitter
RT @JoeSpeeds: Sat Nov 6 Virtual DonkeyCar (and other cars, too) Race. So bring any car? @diyrobocars @IndyAChallenge https://t.co/nZQTff5…
Oct 31
DIY Robocars via Twitter
RT @JoeSpeeds: @chr1sa awesomely scary to see in person as our $1M robot almost clipped the walls as it spun at 140mph. But it was also awe…
Oct 29
DIY Robocars via Twitter
RT @chr1sa: Hey, @a1k0n's amazing "localize by the ceiling lights" @diyrobocars made @hackaday! It's consistently been the fastest in our…
Oct 25
DIY Robocars via Twitter
RT @IMS: It’s only fitting that @BostonDynamics Spot is waving the green flag for today’s @IndyAChallenge! Watch LIVE 👉 https://t.co/NtKnO…
Oct 23
DIY Robocars via Twitter
RT @IndyAChallenge: Congratulations to @TU_Muenchen the winners of the historic @IndyAChallenge and $1M. The first autonomous racecar comp…
Oct 23
DIY Robocars via Twitter
RT @JoeSpeeds: 🏎@TU_Muenchen #ROS 2 @EclipseCyclone #DDS #Zenoh 137mph. Saturday 10am EDT @IndyAChallenge @Twitch http://indyautonomouschallenge.com/stream
Oct 23
DIY Robocars via Twitter
RT @DAVGtech: Another incident: https://t.co/G1pTxQug6B
Oct 23