Simple Quadcopter Testbed Clears The Air For Easy Algorithm Development

We don’t have to tell you that drones are all the rage. But while new commercial models are being released all the time, and new parts get released for the makers, the basic technology used in the hardware hasn’t changed in the last few years. Sure, we’ve added more sensors, increased computing power, and improved the efficiency, but the key developments come in the software: you only have to look at the latest models on the market, or the frequency of Git commits to Betaflight, Butterflight, Cleanflight, etc.

With this in mind, for a Hackaday prize entry [int-smart] is working on a quadcopter testbed for developing algorithms, specifically localization and mapping. The aim of the project is to eventually make it as easy as possible to get off the ground and start writing code, as well as to integrate mapping algorithms with Ardupilot through ROS.

The initial idea was to use a Beaglebone Blue and some cheap hobby hardware which is fairly standard for a drone of this size: 1250 kv motors and SimonK ESCs, mounted on an f450 flame wheel style frame. However, it looks like an off-the-shelf solution might be even simpler if it can be made to work with ROS. A Scanse Sweep LIDAR sensor provides point cloud data, which is then munched with some Iterative Closest Point (ICP) processing. If you like math then it’s definitely worth reading the project logs, as some of the algorithms are explained there.

It might be fun to add FPV to this system to see how the mapping algorithms are performing from the perspective of the drone. And just because it’s awesome. FPV is also a fertile area for hacking: we particularly love this FPV tracker which rotates itself to get the best signal, and this 3D FPV setup using two cameras.

Fail of the Week: Two Rotors Are Not Better Than Four

Fair warning: [Paweł Spychalski]’s video is mostly him talking about how bad his “dualcopter” ended up. There are a few sequences of the ill-fated UAV undergoing flight tests, most of which seem to end with it doing a reasonable impression of a post-hole auger. We have to admit that it’s a pretty poor drone. But one can only truly fail if one fails to have some fun doing it, [Paweł] enjoyed considerable success, at least judging by the glee with which he repeatedly cratered the craft.

The overall idea seems to make sense, with coaxial props mounted in the middle of a circular 3D-printed frame. Mounted below the props are crossed vanes controlled by two servos. The vanes sit in the rotor wash and provide pitch and roll control, while yaw and thrust are controlled by varying the speeds of the counter-rotating props. [Paweł] knew going in that this was a sketchy aerodynamic design, and was surprised it performed as well as it did. But with ground effects limiting roll and pitch control close to the ground, the less-than-adequate thrust due to turbulence between the rotors, and the tendency for the center of mass and the center of gravity to get out whack with each other, all made for a joyously unstable and difficult to control aircraft.

Despite the poor performance, [Paweł] has plans for a Mark II dualrotor, a smaller craft with some changes based on what he learned. He’s no slouch at pushing the limits with multirotors, with 3D-printed racing quad frames and using LoRa for control beyond visual range. Still, we’re sure he’d appreciate constructive criticism in the comments, and we wish him luck with the next one.

Continue reading “Fail of the Week: Two Rotors Are Not Better Than Four”

Autonomous Spaceplane Travels to 10 km, Lands Safely 200 km Away

Space balloons, where one sends instrument packages to the edge of space on a weather balloon, are a low-cost way to scratch the space itch. But once you’ve logged the pressure and temperature and tracked your balloon, what’s the next challenge? How about releasing an autonomous glider and having it return itself to Earth safely?

That’s what [IzzyBrand] and his cohorts did, and we have to say we’re mightily impressed. The glider itself looks like nothing to write home about: in true Flite Test fashion, it’s just a flying wing made with foam core and Coroplast reinforced with duct tape. A pair of servo-controlled elevons lies on the trailing edge of the wings, while inside the fuselage are a Raspberry Pi and a Pixhawk flight controller along with a GPS receiver. Cameras point fore and aft, a pair of 5200 mAh batteries provide the juice, and handwarmers stuffed into the avionics bay prevent freezing.

After a long series of test releases from a quadcopter, flight day finally came. Winds aloft prevented a full 30-kilometer release, so the glider was set free at 10 kilometers. The glider then proceeded to a pre-programmed landing zone over 80 kilometers from the release point. At one point the winds were literally pushing the glider backward, but the little plane prevailed and eventually spiraled down to a perfect landing.

We’ve been covering space balloons for a while, but take a moment to consider the accomplishment presented here. On a shoestring budget, a team of amateurs hit a target the size of two soccer fields with an autonomous aircraft from a range of almost 200 kilometers. That’s why we’re impressed, and we can’t wait to see what they can do after a release from the edge of space.

Continue reading “Autonomous Spaceplane Travels to 10 km, Lands Safely 200 km Away”

Hands-On: Flying Drones with Scratch

I’ll admit it. I have a lot of drones. Sitting at my desk I can count no fewer than ten in various states of flight readiness. There are probably another half dozen in the garage. Some of them cost almost nothing. Some cost the better part of a thousand bucks. But I recently bought a drone for $100 that is both technically interesting and has great potential for motivating kids to learn about programming. The Tello is a small drone from a company you’ve never heard of (Ryze Tech), but it has DJI flight technology onboard and you can program it via an API. What’s more exciting for someone learning to program than using it to fly a quadcopter?

For $100, the Tello drone is a great little flyer. I’d go as far as saying it is the best $100 drone I’ve ever seen. Normally I don’t suggest getting a drone with no GPS since the price on those has come down. But the Tello optical sensor does a great job of keeping the craft stable as long as there is enough light for it to see. In addition, the optical sensor works indoors unlike GPS.

But if that was all there was to it, it probably wouldn’t warrant a Hackaday post. What piqued my interest was that you can program the thing using a PC. In particular, they use Scratch — the language built at MIT for young students. However, the API is usable from other languages with some work.

Information about the programming environment is rather sparse, so I dug in to find out how it all worked.

Continue reading “Hands-On: Flying Drones with Scratch”

RC Paper Airplane From Guts Of Quadcopter

Mini indoor drones have become an incredibly popular gift in the last few years since they’re both cool and inexpensive. For a while they’re great fun to fly around, until the inevitable collision with a wall, piece of furniture, or family member. Often not the most structurally sound of products, a slightly damaged quad can easily be confined to a cupboard for the rest of its life. But [Peter Sripol] has an idea for re-using the electronics from a mangled quad by building his own RC controlled paper aeroplane.

[Peter] uses the two rear motors from a mini quadcopter to provide the thrust for the aeroplane. The key is to remove the motors from the frame and mount them at 90 degrees to their original orientation so that they’re now facing forwards. This allows the drone’s gyro to remain facing upwards in its usual orientation, and keep the plane pointing forwards.

The reason this works is down to how drones yaw: because half of the motors spin the opposite direction to the other half, yaw is induced by increasing the speed of all motors spinning in one direction, mismatching the aerodynamic torques and rotating the drone. In the case of the mini quadcopter, each of the two rear motors spin in different directions. Therefore, when the paper plane begins to yaw off-centre, the flight controller increases power to the appropriate motor.

Mounting the flight controller and motors to the paper plane can either be achieved using a 3D-printed mount [Peter] created, or small piece of foam. Shown here is the foam design that mounts the propellers at wing level but the 3D printed version has then under the fuselage and flies a bit better.

Making paper planes too much effort? You could always use the one-stroke paper plane folder, or even the paper plane machine gun.

Continue reading “RC Paper Airplane From Guts Of Quadcopter”

LoRa System Commands Drones From A Distance

LoRa has been making quite a stir in hacker circles over the past couple of years, as it offers a fascinating combination of long range, low power, and low cost. It does this by using spread spectrum techniques on unlicensed frequency bands, meaning it can send data a surprising distance and that you don’t need a radio license to use it. It is mainly used for Internet of Things things, but [Paweł Spychalski] has other ideas: he’s building a system to use it to control a quadcopter drone over distances of 5 kilometers or more. That’s an ambitious aim, considering that the parts he is using cost only a few bucks.

He’s using an off-brand Adafruit Feather LoRa board and a couple of home-made antennas with his own software that takes the data from the Taranis control port of the RC controller, encodes it and chirps it out over the LoRa radio. At the other end, a similar radio receives and decodes the data, feeding it out to the drone.

This is definitely still a work in progress, but he has got it working, flying his drone over the link, keeping control of it out to several hundred meters. At the moment, he can’t go much further as it seems that his LoRa radio is being overwhelmed by the video link on the drone, but he is working on changing the frequency spread & hopping and using a better antenna to provide longer range. We’ve seen some interesting stuff from [Pawel] before, like his DIY telemetry system, so this project is worth keeping an eye on if you are a drone fan.

Continue reading “LoRa System Commands Drones From A Distance”

Unlocking Drones with Go

Looking for a first project in a relatively new language that’ll stretch your abilities? [Ron] was, so he hacked a commercially available drone and opened up a lot of its functionality, while writing the client software in Go.

The drone is a DJI Tello, which has some impressive hardware like a 14-core Intel processor and excellent video processing abilities. There’s also a vibrant community and a lot of support, making it the ideal platform for a project like this. It communicates to a base station via WiFi, and using some tools like the Wireshark [Rob] was able to decipher a lot of the communications and create a whole new driver for the drone. While the drone can be controlled in the traditional way, users can also write programs to control the drone as well.

The project is both an impressive feat in reverse engineering an inexpensive drone, and a fun example of programming in the Go language. Because of the fun and excitement of drones, they have become a popular platform on which to hack, from increasing their range to becoming a platform for developing AI.