QGroundControl v0.8 Preview Binaries - New Features


From 0.7.7 to 0.8.0 QGroundControl got many new features and bugfixes, it's impossible to fit all of them into one post. We will therefore run a small blog post series over the next few days to cover them. An experimental release is already available for Windows and Mac OS, so you can try it out on your machine if you like. The application might have still some minor rough spots, the current release is mostly targeted at the different autopilot developers to allow them to give feedback for the "official" release.


Major Improvements and new Features

  • New, flexible widget system, every user can have his personal arrangement of the interface (contributed by SLUGS project, Mariano Lizzaraga, JFR Camacho)
  • ArduPilotMega MAVLink branch support and actions in waypoints (James Goppert)
  • Google Earth support
  • QGroundControl now stores many of your preferences automatically, including window size and position, selected widgets, serial port baud rate, etc.
  • Support for small screens
  • Data logging and plotting (after flight, time line or e.g. lat vs lon)
  • MAVLink protocol version detection, user gets warned if MAV and QGroundControl protocol versions mismatch
  • Many, many bugfixes


Windows Google Earth View

The screenshot below shows QGC running on Windows 7, with a custom widget arrangement showing the SF area with Google's new 3D trees.



Linux 3D View

The non-maps 3D view is very handy for robotics applications where the focus is on the trajectory of the vehicle and additional 3D information, like e.g. the occupancy grid, should be displayed. The tool widgets surrounding the view can be freely enabled / disabled and will be loaded on the next startup again.



Live Plotting / Engineer View

The live linechart is very handy for reading out sensor or filter values. The parameter tree widget on the right allows to adjust controller or filter values (e.g. PID gains) in realtime and watch the result on the left. Of course other widgets could be activated as well, but this screenshot is a nice example of a really reduced interface.



Data Analysis View

It is often annoying to import logged data into an external plotting tool for just having a quick look at the data. QGC therefore now switches after finishing a logging session in the line chart (live) view to the data analysis view, where you can plot the data in other formats, plot X vs Y instead of X vs time, etc.



Experimental preview executables: They are stable and can be used to test the new features, but are not intended for flight use! We will test the current release thoroughly over the next days and then release the stable version once it is rock-solid. Please note that runtime performance and stability will improve until the final release.


Please use the Github issue tracker to report back bugs or odd behaviour!

Please feel free to add any feedback or feature requests to the bottom of this post.

E-mail me when people leave their comments –

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

Join diydrones


  • Developer
    Bill, I would have thought in the issues section of the GIT repository for QgroundControl  ?
  • I've ported mavlink to AutoQuad and am trying to use QGroundControl to test.  Although it is generally working, there are a lot of problems I encountered with QGroundControl.  I am using the Mac version I compiled showing as v8.3 (ALPHA RC6).  Where should I posts these issues?
  • Developer
    Should add that I have re-installed version 0.8.0 (Beta) instead of the newer 0.8.3 and 0.8.0 runs and displays data for simulation and for the serial link correctly.
  • Developer

    Hi, thanks for posting an update.


    The code crashes when I run that code on my Windows 7 ultimate 64 bit Thinkpad T61. The code crashes when I open the USB serial port to connect to the UAV Devboard, or if I connect for "simulation".

    I am using


    I get the same symtoms when I compile the origin/dev code myself on the computer. A screenshot of the crash happening in debug mode for Nokia QT creator is shown here.


    Best wishes, Pete





  • Another binary update with substantial improvements, serial console is now significantly improved, with auto-adding line endings, getting old commands with the up/down arrows and correctly displaying and sending CRLF/LC/etc.

    Various other bits and pieces are fixed as well, including the 2D map, tooltips for most buttons, etc.


    Visual issues were fixed as well (the gauge menu fix is not part of the binary, but done). Please note that an executable for Win XP is currently not online - one for Win 7 will work on XP, but audio and Google Earth won't work. We're working on installing a virtual machine with XP and an old Visual Studio version.


    The new binaries can be found at:


  • T3

    OK, looking at the new qgroundcontrol-windows-0.8.1-experimental-installer.exe.

    Several small issues with window graphics and one big: CRLF handling is ill both ways.


    Small things:






    Here, a set of absurdally chosen values.

    Basically a user woudl rather prefer to not touch the dials as they are.


    And now the BIG thing:

    Receiving endline

    CRLF is not treated correctly.

    In fact there are the following line endings from different systems:

    CR, LF, CRLF, and even LFCR when you got lost characters.

    On the other hand CRLFCRLF should be 2 line endings and not 4.

    On the other hand you got binary protocols running so you just cannot dump all LF or all CR.

    The algorithm could be:

    if (hide_mavlink==false || (hide_mavlink==true && parsed_mavlink==false) )
      if(character==CR || character==LF)
        if(last_printable_char==character || (last_printable_char!=CR && last_printable_char!=LF) )
          print_line_end();//CR/LF/CRLF whatever you use for your console
        //else ignore CR or LF


    Second thing is that adding CRLF to strings sent is messed into drop-down list,

    but when you SELECT and element from that list, only then magic chars are appended to the line where you type the message. When you type something in again, and leave the list selected, then click send, nothing is appended. This is particularly annoying when you are not sure what to append, click different versions, and the mess on the typed line grows.

    In short the characters are appended in completely wrong place, it should be added silently to the data coming out after clicking send. Leaving the necessity of selecting the element as it is:

    -it is agains drop-list functionality, which normally should be modifying action, and not triggering the action

    -it is extremely annoying to select an element in the list for every message you want to send.


  • Ok, I just verified here on a freshly installed machine using:


    - Latest msysgit

    - Latest TurtoiseGit (selected to checkout Windows line endings and commit as Unix line endings)

    - Latest Qt MinGW SDK (2010.05)


    And I can build without errors.


    Did you adhere to the following guidelines?


    Qt installed to C:\Qt\2010.05

    QGroundControl code in:





    If you have a setup like this, it should build.

  • Yes, of course. Please feel free to post there or in the GitHub issue tracker. You will also find the other developers there.
  • pixhawk,


    I'm having trouble compiling following instructions you've posted, can I ask questions here:



    Do you watch discussions there? Looks more appropriate place than this thread.



  • T3

    Nice work.

    Personally I dislike the scientific notation for flying, because both 1.123456e2 and 1.123458e7 look very similar, you simply know NOTHING if the value of say.. roll angle, is alarming or very nice. The same way it is easy to mistake moscow for london in scientific notation, an order of magnitude here or there.

    I would prefer something like printf("% 11.6f" val); because it fixes all. Note: 11=6+comma+3significants+sign

    There is never more than 6 significant digits after comma in float32, if I remember well.


    I would be soo happy to see angles in degrees.. if possible...


    And there are no units: either all or none...

This reply was deleted.