pixhawk's Posts (15)

Sort by


GroundControl and MAVLink have been improved substantially behind the scenes over the last months. The most obvious new feature on the user level are custom user widgets. You can configure yourself parameter sliders and buttons and even export this widget into a *.qgw file, which other users can import. The video shows how to create a custom attitude control widget for ArduPilotMega. Most of the other improvements are speed and stability improvements which are not directly visible, but improve the user experience a lot. Since we wanted to make sure to get some testing done this is the first preview of the new version. Before end-users can test it, it will also require porting all autopilots, e.g. APM, to MAVLink v1.0.0, which is already scheduled and will happen in a few weeks. Porting is straightforward, as the C-API is mostly unchanged, only a few message signatures were updated.


Thanks to Andrew Tridgell and Paul Grobler for their contributions on the protocol. And Andrew Tridgell completely rebased the protocol generator on Python, allowing to now generate C and Python code from a single generator.


A porting guide for autopilots will be available soon.





Read more…


The MAVLink mailing list is currently very actively discussing which route to take to CAN-MAVLink integration. Especially engineers working in their day jobs on ARINC 825 or CANaerospace could bring important feedback to the table, so please share your knowledge.

Google Groups MAVLink CAN discussion

 Since this design will be very likely the reference design not only for the first 2-3 autopilots implementing it, but might also become the DIYDrones community standard, I'd like to invite all potential developers and adopter to join the discussion (on the mailing list please, not in the comments).

Further reading:


Read more…

PIXHAWK Gumstix Camera makes it to product!


The design we pioneered in 2009 for machine vision with Gumstix Overo is now finally available as product from Gumstix. They did a great job of converting our initial raw open source design into a usable product, our internal prototype made it not beyond basic sensor readout routines. The picture on the top shows the finished Caspa board, the image on the bottom one of the earlier prototypes:

3689391986?profile=originalThe module provides 752x480 (640x480) pixel resolution in color and can be purchased from Gumstix either with IR (VS) or without IR cut filter (FS). For most applications not operating at dawn/dusk the version with IR cut filter will provide better image quality.


PLEASE NOTE: We're thrilled that this tiny machine vision platform is now available for the general public. PIXHAWK is however not associated to Gumstix or does benefit financially from the product. We're just happy that the concept of open hardware worked out again.



Read more…

QGroundControl 0.8.3 beta - User Configurable

This video shows how each user can configure the layout and even individual sliders and buttons of QGroundControl for his personal needs. This version is compatible with the current ArduPilotMega pre-release 2.0 codebase from the SVN repository (trunk). Please note that the video shows only a snapshot, not the final QGroundControl 0.8.3 release version (we're still improving it on a daily basis). User feedback is very welcome, if you want to try it yourself you can download a binary for Mac OS and Windows.



Read more…



QGroundControl is currently improved on a daily basis along with the efforts to implement a common mission interface for ArduPilotMega and MAVLink. While this is work in progress, I'd like to share some impressions of the new features. Once the next APM version is released, a matching stable version of QGC will be released as well optimally supporting APM. The picture above shows the Google Earth mission interface on Mac OS X, which supports waypoint creation (double click) and dragging. The Windows version is lagging slightly behind: Waypoint visualization works, dragging not yet. I would like to particularly thank our restless beta testers, their excellent feature requests and bug reports really helped improving the usability.


Realtime Linechart Plot: Allows to log data to a CSV file (e.g. for Matlab) and to see how sensors and filters behave in realtime. It includes mean and variance values (second and third column) and you can freely set the window size for the calculation of mean and variance.




2D Map: Perfect for mission planning and computers without the processing power for Google Earth




QGroundControl got now also persistent settings, which means that preferences are stored. Most of the widgets store the last configuration (e.g. which option you checked). You also can rename MAVs, e.g. MAV001 to ALPHA. You can even set QGroundControl to auto-connect your serial link with the last settings on startup. On the protocol side safety was improved by retransmitting lost packets, ensuring now that not a single parameter is lost.


QGroundControl can now also log MAVLink packets with timestamp and replay whole missions. It accepts binary logs (raw data from e.g. serial logs) as well. So you can now run a HIL simulation and view the output in realtime in QGroundControl, log it, send it to a friend or export the data to Matlab. The offline logfile analysis tool (not shown here) allows you also to print 2D plots or create PDF or PNG files from them.




For the brave: There are daily experimental builds that work with the SVN version of APM. They are in general stable, but of course not as well tested as a full release version. The executables for Windows and Mac OS can be downloaded at:



Since this is still beta software, bug reports and feature requests are welcome:


Read more…

MAVLink one year on and growing fast!

To my own surprise MAVLink has grown way beyond my expectations, quite a few projects a
re now using it as their main protocol or have at least support for it. When I started to work on the initial protocol mid-2009 every encoding/decoding routine was hand-written, and we just needed something to report the detected patterns in the EMAV 2009 competition. It worked, our helicopter detected the patterns onboard and sent the correct name via MAVLink back to the basestation -1st place EMAV 2009 indoor autonomy competition.


The protocol evolved end of 2009/early 2010 when I rewrote it to be used as hard-realtime link for the flying machines area at ETH's Institute of Dynamic Systems and Control. By now quadrotors play piano with commands sent over an early version of MAVLink (I did not do the setup or the flight control algorithms, I just did the control unit to vehicle MAVLink communication)
MAVLink got in the meantime automatic protocol generation features. By now there is quite a list of projects using it, ranging from ground control stations to complete middleware solutions (including a MAVLink ROS interface). But before you sift through the list, make sure to sign up for the new mailing list if you're interested in further updates.

MAVLink mailing list and website

Autopilots using MAVLink

Software packages using MAVLink

Projects using MAVLink
Read more…

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.

Read more…

QGroundControl with Google Earth 3D Trees


It was just one of these casual quick hacks (about 10 lines of code), but QGroundControl now also allows to use Google Earth for visualization, including the new trees feature. We're just in the beginning of the integration, a binary including this feature should be available next week.

While Google Earth is very shiny, it does not allow adding additional visualization components with the same degrees of freedom as OpenSceneGraph and osgEarth. We will therefore push the OpenSceneGraph/osgEarth integration further, as osgEarth also allows for better offline use without internet connection. As our MAVs collect aerial images, osgEarth allows to directly render them into the scene (as 3D mapping), a feature missing in Google Earth. But since we now support the best of both worlds, QGroundControl users have all choices at hand.

Read more…

Micro Air Vehicle CAD models for QGroundControl wanted

The QGroundControl dev team is currently hard working on the integration of more autopilots and the 3D outdoor view. In line with these efforts we would like to add more CAD models of airplanes, helicopters and other MAVs to allow users to select a CAD model close to their aircraft.

If you have a CAD file (.step/.stp or .iges or any other common exchange format), please send it to <pixhawk@switched.com>. Please note that the CAD model will be included into the GLP-licensed QGroundControl application. If you send it in, please do not forget to give the name of the model and the real/physical size.

Read more…

MAV Computer Vision on Gumstix Overo COM


We were already using the Gumstix Overo COM in our winning EMAV 2009 entry. Other projects have started to adapt the system design with Linux onboard computer. It separates the Linux computer vision system and control/estimation code running on an external microcontroller. At that time we already did the electronics design for a custom camera board, but eventually used a USB machine vision camera. However now we have a working driver, which allows to attach the Aptina MT9V032 machine vision CMOS sensor directly to the Gumstix Overo COM. The board will be available from Gumstix Inc., but is not yet released as a product. The pxOvero base board weights only 28g including the camera with M12 glass lens! It works under very low light conditions and has a much lower noise level than typical webcams. We hope to see this pair soon in many computer vision MAVs. Our upcoming aerial robotics middleware is lightweight and has been developed so scale to lightweight computers. Together with this camera, it will provide a very convenient toolkit for computer vision on micro air vehicles.

Read more…

QGroundControl Visual Designer wanted!

We are looking for a visual designer (contact) to improve QGroundControl's look and feel. QGroundControl is improved in it's functionality almost on a daily basis (please note the new 3D aerial view) and we want to keep the visual design improving as well. As the application is written in Qt 4.7, the look and feel can be controlled via the application's CSS stylesheet and the icon SVG vector graphics. No in-depth C++ knowledge is therefore needed. Most forms are designed using the Qt designer, which would allow the new contributor to work mostly with CSS, the visual editor and image files. QGroundControl has a simulation mode enabling the designer to test the live-behaviour without UAV. It supports through the open MAVLink protocol several autopilots.

If you're interested, please follow our one-minute open-source contributors tutorial and let us know once you have an improved proposal for the look-and-feel. Please use a new folder for image files and back up the old CSS file, so that users can eventually choose between different "skins". In general we made good experiences with the current coloring, but we're open for completely new ideas.
Read more…

IMAV 2011: Towards all-weather MAV swarms

EMAV 2009 Outdoor competition location at The Hague, Netherlands

Or slightly rephrased: The IMAV 2011 summer edition rules are out (original post). IMAV2011 is actually a perfect showcase why IMU-based autopilots plus onboard computer vision are a good choice for MAV competitions. And it is also a good occasion to mention the currently running pxIMU batch order, limited to October 20! You can get your own competition-proven , computer-vision ready research autopilot. For the time after the batch order: We provide all participants of the batch order the hardware design on request, so that they can build more hardware if needed later (and we'll offer future batch orders if feasible). The design files will also be made available GPL-ish licensed at some point early 2011.

Now back to IMAV 2011 itself: Why all-weather and swarms? The competition location in The Netherlands can be quite cloudy and windy in September, like in the last Delft-competition, the EMAV 2009. Although there was no rain, virtually no fixed-wing team was able to fly autonomously, as all relied on thermopiles. This time RC-based flight is banned, so any team sticking to thermopiles is taking chances! By now there are some hackable IMU-based fixed wing autopilots around (ArduPilot, UAVDevBoard v3 and soon pxIMU). We actually hope for similar weather conditions in 2011: An overcast sky provides computer-vision-optimal diffuse lighting (perfect to e.g. locate pylons using pxOvero) and by using pxIMU or any other IMU-based autopilot, the attitude estimation does not depend any more on a more or less clear sky.

And why swarms? Because the IMAV 2011 rules actually encourage teams to run multiple vehicles. We're really happy about this development, because the complete PIXHAWK framework is optimized towards swarm-use. Ongoing research in the team involves mesh-based image transmission (which would allow to transmit images over multiple hops (a chain of MAVs) to a base station). QGroundControl has also been optimized to scale to multiple vehicles from early on. For details on the rules, please refer to the preliminiary rules PDF.
Read more…

PIXHAWK pxIMU available! Hardware and Firmware


We proudly announce the launch of the pxIMU Autopilot! The boards, which are priced at 400 chf (about $420) each, will only be made in batches of at least 30, so when we get that many orders we'll put them into production. We have also released the pxIMU Autopilot Firmware.

You can register to the PIXHAWK user forums to hook up to other users, use the forums and help to push this open-source project.

Please note that PIXHAWK is currently evolving from a research system to a open-source community platform. We offer you the best combination of weight (8g), high-performance processing and sensor precision of any current open-source IMU. But you should be experienced enough or ready to learn to handle and to program the device. Our system is targeted at high-end hobbyists and research use. Of course the whole project is well-documented in our wiki, so it will be convenient to work with. Look for example at the excellent wiki articles onpxIMU, flashing the firmware or the Intel CORE 2 DUO baseboard for MAVs. We expect this user wiki to improve even further as more and more users are joining in. If you just want to get started and are looking for a very affordable system, we recommend to look at the projects on DIYDrones as well.

The pxIMU code is available at the PIXHAWK downloads page. You can browse it online or download a ZIP file.

Read more…

DIY Reflow Soldering - Ready for Pizza?


Solder yourself in a pizza oven! While we're still waiting for the last quotes to get pxIMU ready for the batch production, we'd like to share how we build the prototypes ourselves. Of course pxIMU will come fully assembled, this guide is just intended for those who want to tinker with their own electronics or want to assemble one of our bare PCBs.

It is actually quite easy and cheap, and all you need is a pizza oven and an oven thermometer. We are already working on the new pxServo board, which will have servo outputs on standard servo ports and a connector for the ArduPilot / DIYDrones GPS modules. It will be also available with a 5V / 2.25A (12.5W) power module mounted, but still be smaller than pxPower. This combination should satisfy all user needs. This tutorial was written with delicate ICs like gyroscopes, accelemeters and magnetometers in mind. We had good success and zero failure so far with the temperature curves from our tutorial.
Read more…

PIXHAWK Onboard Pattern Recognition Video

This video shows the PIXHAWK onboard pattern recognition. Interested in the hardware to run it onboard? Two approaches have been implemented: One is extremely efficient and runs at 30 Hz on a Gumstix Overo (ARM Cortex-A8, Smartphone processor). This approach is based on first detecting quadrangles and then matching the objects enclosed by these. We used this approach on a Gumstix Overo onboard our PIXHAWK Pioneer Coaxial helicopter and won last years EMAV 2009 competition with it.

The second approach is more general and uses closed contours fed into a SVM. It can detect arbitrary shapes, but requires more processing power. Through our PIXHAWK middleware, the camera image can be sent to both in parallel to allow a maximum detection.

The video shows the first, highly efficient and robust approach in action:

If you have questions on the video or approach, please contact Fabian Landau.

Please note that the detection is done onboard of our coaxial and quadrotor MAVs with no external processing. The software is part of the ai_vision PIXHAWK repository and will be made available as GNU GPLv3 code.

Read more…