The AR.Drone 2.0 is, at the time of this post, an older quad-copter… With Brushed motors and minimal controller options, it doesn’t hold a candle to today’s modern devices. However, it was my first real quad, parts are now readily available and fairly cheap, and I’ve put days (weeks, months?) into customizing this toy. This is my story of hacking the AR.Drone 2.0 into submission.
I received my AR.Drone as a gift in 2013; my first indoor flight was a success, and I was fascinated by the software and hardware that made this machine work. When I got the quad back to my house, at 10k ft., I quickly realized physics was not on my side. At elevation, where the air is thinner, it takes more power to get objects off the ground; the AR.Drone did not have this power, and my determination to get it working lead me down quite the hobby path.
My first task was to strip the drone of all unnecessary weight. Obviously the indoor hull had to go, but that still wasn’t enough. The outdoor hull was still too heavy, so my next effort was to strip the quad down to the board and print a new body. I’m simplifying this effort but after weeks of design and testing I finally had my first working model. It wasn’t pretty, it wasn’t weather proof, but I could finally fly my AR.Drone at 10k+ ft above sea level.
This design eventually progressed into a slightly more mature form:
AR Drone 3.0
Cool! Hardware done! Now on to the software… The AR.Drone 2.0, out of the box, can only be controlled with a phone. The quad only has on-board wifi for communication, so I ventured down the path of custom software to control the drone. Here is a sampling of what I tried and my results:
AR Drone 2.0 Control Methods
|artoo.io||http://artoo.io/documentation/platforms/ardrone/||Ruby library to control the AR.Drone||Works alright. Some lag and not completely reliable.|
|ardrone-wpa2||https://github.com/bg-wa/ardrone-wpa2||Allows The AR.Drone to connect to a remote AP.||Works well. Increases control distance.|
|AR.Drone Webflight||https://github.com/eschnou/ardrone-webflight||Browser-based control of the AR.Drone||Works well for flying the drone from a laptop keyboard.|
|QGRoundControl||http://qgroundcontrol.com/||Automated Flight Control||The AR.Drone only works with one really old version of QGroundControl. While it works well for newer flight boards, I can't recommend this option for the AR.Drone|
|UgCS||https://www.ugcs.com/en||Desktop Flight Control||This works fairly well for controlling the AR.Drone from a laptop, but setup was somewhat confusing.|
|Nvidia Shield||https://www.drone-forum.com/forum/viewtopic.php?f=75&t=8262&p=81189#p81188||This software was never released, as it was designed to work with a hardware controller that was also never released...||This works great inconjunction with a generic bluetooth controller!|
While I spent a lot of time trying different options and writing my own software, in the end, I liked the feel of the unreleased Nvidia Shield software for flying the AR.Drone. While its only available for Android, I was able to fly the AR.Drone comfortably and reliably with a generic bluetooth game controller.