Official website for Linux User & Developer
FOLLOW US ON:
Jun
30

Bitcraze – Interviewing the Crazyflie team

by Rob Zwetsloot

Meet the open source quadrocopter that will teach the world how to fly, or play aerial laser tag. The choice is yours

Fads, by definition, come and go. Some may linger and evolve along the way, but none seems to have stuck around so far up the public consciousness as remote- control helicopters. From humble and cheap beginnings as novelties and stocking fillers, the concept has changed a fair bit in the past few years. Recent iterations come in the form of smartphone-controlled helicopters and quadrocopters. Quadrocopters are inherently more stable than their other rotary-wing relatives; however, the popular AR drone series of quadrocopters are huge pieces of kit that need a lot of space to fly. They’re also not completely open source.

This is where the Crazyflie comes in. Developed by three Swedish engineers in their spare time, this tiny quadrocopter is built entirely on open source software.

quadcoptor
The CrazyFlie is the tiny, open source quadrotor

We talk to the designers, collectively known as Bitcraze, about the Crazyflie quadrocopter and their desire for it to be a development platform for much more. “So we started out about three years ago, at a consulting company we were all working at, called Epsilon” – Marcus Eliasson, one of a team of three colleagues who created the Crazyflie, explains the origin of the device. “They had this development group concept where if you wanted to start a project after work, you could meet up with other colleagues. The company would help fund you if you wanted any materials or the like, but obviously you had to do this work in your free time. So that’s where it started.”

“We all met at one of these meetings,” interjects Arnaud Taffanel, another Bitcraze member. “Marcus wanted to make a quadrocopter because he thought it would be cool, and Tobias and myself came up with the idea of making it very small and fit on a PCB.”

Along with final member Tobias Antonsson, they have done just that. The Swedish team are now starting to sell the Crazyflie, which is still somewhat in development. What started off as a ‘cool project’ has changed a bit over the years, though, according to Eliasson: “Our aim now is to create a development platform that’s also fun to use. Since it’s also open source, we’re hoping that people will contribute to it. And through that, make even better applications for it than what we’ve done so far.”

“We’re actually only using open source software,” adds Taffanel. “Open source software is great because it’s working on Linux, which is our main development environment, and we’ve also got it working on other operating systems. So we were very quickly able to get a development environment that was working simultaneously in Linux and Windows.”

Open source projects are all about the community and how they can use or contribute to them. As such, there have been plenty of ideas on how to make use of the Crazyflie already. Taffanel explains to us that some people have had the idea of putting air sensors on it, and there are videos online of others attaching miniature cameras to it to aid in flying. More still are interested in the prospect of preprogramming flight plans into the Crazyflie to use it as a drone.

“We actually have some students from Texas that wanted to build a kind of dusting system using the Crazyflie in their main entrance,” Antonsson tells us. “They have these blinds which are inaccessible by normal methods, so the idea is you just fly close enough to dust the blinds or blow the dust off. This basic concept works in areas where you can’t really get to as a person, because it’s hazardous or even inaccessible like that. You can put sensors on it and fly a lot of them in there.”

Before the team get to that point, though, there’s still work to be done on the Crazyflie. Development for a few aspects is still ongoing, but at the very least, it can fly. Taffanel describes the process of even getting that far:

“We learned the hard way that debugging was important. At the beginning, when we had the motors and the propellers mounted to the PCB, we had software bugs. As soon as we started the copter, it was flying [into] the window or… the ceiling, crashing directly afterwards and almost breaking. So it was very hard to figure out the problems with something that would just fly away and crash. It was Tobias that had the idea of sticking a drinking straw on top of the copter, and that permitted us to fly it under our hands, yet still keeping it attached somehow. We could fly it in a controlled way, and then we could debug the software. In the same evening we thought of this idea, we had it working. It took us less than an hour to find the last software bug, preceded by a month of crashing.”

There weren’t just problems with the software in the beginning either. Getting the right motors and propellers to fit their idea was tricky, and construction of the device needed work.

“I remember the first prototype we had we glued the motors with hot glue, so every time we crashed it we had to reglue the motors,” recalls Eliasson. Taffanel elaborates, “They had a 10 per cent chance to break – the motors – so we had to buy a lot of model planes.”

“We went to this hobby store and bought about ten planes and they were giving us a strange look,” jokes Eliasson. The only way the team could source parts to begin with was through cheap model kits from a store in their home city.

With the hardware and software sorted out, the team had a working and very small quadrocopter. If you look over the specs, though, the MCU controlling the Crazyflie is comparatively quite powerful, with the team claiming they only use 40 per cent of available processing power while flying. Why did they choose this, and does it have any bearing on the seven minutes of flight time?

“When we first designed this, since it was kind of a competence development project, this was pretty much a state-of-the-art processor then, so we wanted to use it,” explains Eliasson. “We didn’t really design it to be that power efficient, but we can control the power pretty well now, so it can actually enter sleep modes.”

The extra power in the MCU can be used by other people if necessary, Taffanel mentions. Antonsson clarifies how it affected the power usage: “The electronic system uses about 70mA, and when we hover, the motors use about 1.4 amps, so it’s negligible compared to the motors.”

“It also permitted us to be a bit lazy,” says Taffanel. “We have everything in floating points, and because of that we didn’t have to think about fixed points.”

Now that the Crazyflie is starting to become commercially available, prioritisation has switched from adding ‘cool features’, as described by Antonsson, to making sure it’s ready to go.

“The focus is really to get it to work out of the box,” Eliasson tells us. “We’re really working towards making that happen. So we cannot focus on extra functionality and we don’t want people to be too frustrated when they receive the copter and it doesn’t work. For instance, last week, we did a virtual machine, an Ubuntu virtual machine, so that people can just run that and they will get all the program environment and all the software that we work from. These are [the] kind of the things we’re trying [in order] to make the out-of-the-box experience possible.”

That’s not to say that the team at Bitcraze will be satisfied with just making it work properly, as Taffanel explains:

“We have lots of ideas, it’s just… it’s the time. We all currently do this after work, we have jobs during the day, so this is something for weekends and late nights.”

Eliasson finishes off on a more positive note: “We’re hoping that it will eventually be something we can work on full-time of course, and hopefully we’ll get there. It’s not impossible any more.”

  • Tell a Friend
  • Follow our Twitter to find out about all the latest Linux news, reviews, previews, interviews, features and a whole more.