Category: Random stuff

Like we announced last week we will be releasing the Loco Positioning system in a couple of weeks. Last week, we added product pages for the Loco Positioning boards on our website. We have also made a new short video explaining a bit on how it works with a demo:

Early access means that we have tested the hardware and are pretty confident it performs well. Though the software is still in a beta stage and requires some more love and will be evolving a lot over time. Right now we made sure that the ranging is working and we have some software, based on ROS, to fly the Crazyflie autonomously. We will make sure to document carefully the steps so that you can get started with the system quickly. We see two big functionalities that will be worked-on first: making the system able to control much more Crazyflies at once (right now the software is designed to handle only one Crazyflie), and moving positioning and controller into the Crazyflie which has the potential to enhance the flight performance a lot. More on that later.

If you want to receive information as the system evolves, sign up to our mailing list (we have added everyone that mailed us last week ;-). If you want to talk to us directly do not hesitate to comment or send us a mail at

As early as when the first Crazyflie prototype did it’s first flight back in 2009, we where dreaming about a local positioning system that would allow our future micro quadcopter to fly autonomously indoor. This dream is now becoming a reality with the development of the Ultra Wide Band radio that we have been using the last months to develop our own local positioning system for the Crazyflie 2.0. We are now reaching a very important milestone: the first early access production batch has been ordered!

We sat down to find a name for the system and since ‘Crazy’ is kind of a theme for our products here at Bitcraze we settled for “Loco Positioning”. So the two products we are about to launch are the Loco Positioning Node and the Loco Positioning Deck.

To sign up for the Loco Positioning e-mail list, drop us an email at Information on the progress and availability will be published on the list in the coming weeks.

The positioning system is based on the Decawave DW1000 Ultra Wide Band radio chip. These radios work by transmitting very short pulses instead of full sinus waves the way a standard radio would, and the advantage for positioning is that it is possible to measure the time at which these short pulses are received very precisely. By using clever algorithms it is possible to measure the time it took for the radio signal to “fly” from one radio to another and from that we can calculate the distance between the radios.

A basic system is composed from a number of Anchors (Loco Positioning Nodes) at fixed positions and a Tag on the Crazyflie 2.0 (the Loco Positioning Deck). The system continuously measures the distances from the Tag to the Anchors and calculates the position of the Tag from that information. The concept is similar to GPS where the Anchors represent the satellites and the Tag the GPS-receiver. 4 Anchors is the theoretical minimum required to calculate a 3D position, but 6 has turned out to be more realistic number.

We have designed the Loco Positioning Nodes as standalone boards containing a micro controller and the DWM1000 UWB radio module. The nodes are intended to act as Anchors: they are setup at fix positions in the room and will serve as references for the system.


The Loco Positioning Deck, also based on theDWM1000 module, acts as a Tag and plugs into the Crazyflie 2.0 expansion port. It allows the Crazyflie 2.0 to calculate its absolute position in space and this is all we need to start flying it autonomously in the room. In this case the Crazyflie 2.0 acts as a Tag, but since we are always striving for flexibility, the nodes can also act as Tags for example for other robotic application.


We consider the first batch to be an early access release. This means that the hardware is finished and tested but the software is still very much work in progress. Currently the Crazyflie ranges with the Anchors, while a PC running ROS interprets the ranges and calculates the estimated position. More in depth information will come if future blog-posts and e-mails on the list. For a video and some more information see our previous post “Update on Local Positioning System“.

Two weeks ago we had the opportunity to make a field trip to Gothenburg (Sweden) where we visited the students and teachers at Chalmers University of Technology.


The Crazyflie 2.0 is used by the students as a development platform for the course “Embedded control systems“, which makes us all very happy since we are passionate about education. I mean how cool is it not to see how students use your product to gain new knowledge!

While visiting Kristoffer held a guest lecture to the students and we also took the opportunity to discuss with Associate Professor Knut Åkesson about why and how the Crazyflie 2.0 is part of the course.


A few of the topics that were mentioned was the big benefit with Crazyflie 2.0 being open and how that enabled the students to easily getting started implementing their own code.

If you want to read more about why the teachers at Chalmers choosed the Crazyflie 2.0 and how they use it for education, visit our newly added web section “Used in education”.

We have just released a new version 2016.04.1 of the Crazyflie client.


The biggest change is actually not so visible but very important: we have now separated the GUI client from the Crazyflie lib. The great advantage is that the lib became a small project and could be pushed to pypi. This means that if you want to control Crazyflie from your own Python program all you have to do is to “pip install cflib” and you are ready to “import cflib” in your program to control the Crazyflie.

For the new release of the client we also pushed the client in pypi as well. This will be mainly useful in Linux and Mac where you are now able to install the client with “pip3 install cfclient”. One little drawback however: since the GUI lib we are using, pyqt, is not in pypi it has to be installed on the side. This can be done in Ubuntu with something like “sudo apt-get python3-pyqt4 install python3-pyqtgraph” or on Mac with homebrew or MacPorts.

Last but not least we have enabled Windows continuous integration with appveyor and fixed the Windows build. This means that a Windows build and installer are going to be generated for every commit in the Crazyflie client repos. Maintaining the Windows client has always been a challenge to us since we are mainly Linux users, so the this will help a lot to keep good Windows support. We still consider this Windows build to be somewhat experimental so please test it and report any bug you are hitting.

The last system to support for executable distribution is Mac. We did put some time trying to generate a mac app out of the client without any success. If anyone wants to give it a try or have some tips please head to the ticket on github.

Last week we had some great contributions at our platform page that you really should check out.

The first project is made by our good friend Fred that created a tutorial about how to do a FPV setup inspired by this video from LaDroneShop.


The second really cool project was made by Jim that have experimented with making “long exposure light paintings” using Crazyflie 2.0 and the LED-ring deck.


We are always very excited to see how people are using our Crazyflie, what is especially inspiring for us is to see that the diversity between the different usage areas is so great.

Finally please don’t hesitate to share you projects with us, we are more than happy to post them on our blog or promote them on our page.

Last week we where happy to learn that engineers at Stanford’s Biomimetics and Dexterous Manipulation Lab have been using the Crazyflie 2.0 as a prototyping tool when creating the robot SCAMP Stanford Climbing and Aerial Maneuvering Platform.

This very impressing work centers around the ability for a drone to actually land on vertical surfaces. In addition to this  the robot climb along that surface. Read more here and here. Really cool!

One of the future usages the researchers mention is to help out in the rescue work after earthquakes and other catastrophes. We are so proud that our drone is used in this research field!


If you haven’t watched it already, make sure to watch the TED talk “Raffaello D’Andrea: Meet the dazzling flying machines of the future”!

We are super excited to see that they use the Crazyflie 2.0 drones for the firefly swarm demo in the end of the talk. After all, our goal is to enable people to test their ideas, so this awesome demo makes us thrilled!

Greetings all community members!

This week we have a couple of requests that we hope you can help out with. First of all we would love to hear about all the cool projects you are using the Crazyflie for out there. We have wanted to collect this for a long time and now we have found Go to and add your favourite project. Also make sure to follow us at, if you don’t have an account already it’s quick to create one, our hope is to use to create a new way for our community to grow.


Secondly we are curious of how the Crazyflie is used in education. If you are using it as a teacher or as a student, we would be very happy if you send us an email to and describe how you use it and any other feedback you have.

Last week we finished the manufacturing of the first alpha builds of our new positioning system. A few systems have been shipped to selected users for initial trials but we still have a few left, so if you are interested in trying one out, drop us an email at and describe what you would use it for.

So as usual at Bitcraze it’s been a busy week. We have made a complete makeover of the front page of our website. The main goal has been to communicate what Bitcraze and the Crazyflie is about, in an engaging way to our visitors. We have added sections where we try to explain common use cases for the Crazyfile and all the exciting areas it is used in. We have also added a “used by” section where we want to collect all the cool organisations that use the Crazyflie. Since we made the site open, send us a pull request if your organisation is missing or if you find anything else that you think should be improved. By the way, we got the first pull request for the site the other day 🙂 Awesome! Finally we have updated the team member page, so now you can see what we look like and what we do.

We hope you like it! We love feedback, please share your thoughts.

Aside from being busy at the office we’ve also had a busy (and awesome) weekend at FOSDEM! When we go to conferences we normally try to either talk or exhibit something. But for FOSDEM we just wanted to take it easy and meet people, have interesting conversions and listen great talks. We had a great time and we’re definitely coming back next year. We were especially excited to catch Fred’s lightningtalk on the Crazyflie 2.0 and AdaCore’s talk on re-implementing the Crazyflie 2.0 firmware using SPARK and Ravenscar. The videos from the talks still aren’t available, but when they are we’ll make sure to let you know. Below are some images from our weekend at FOSDEM.


At last Fred published the slides for his talk:

If you are one of the lucky ones getting a Crazyflie for Christmas we are happy to tell you there is a new and fresh “getting started” guide to help you get going :-).

Before going on holiday me and Kristoffer published an updated version for the “getting started” part of the website which we are very happy about. Besides making a new edition of the “Assembling” part we have also added “Installing on a smartphone”, “Installing on a computer” and “Flying”.

We are hoping that these new additions for the “Getting started” section will be a big help for everybody who just got a Crazyflie for Christmas and feel unsure about how to start. Also this is an additional way to help people finding out if the Crazyflie is right for them, who otherwise might feel uncertain about buying one or not.

If you have any comments or suggestions about the new “Getting started” please feel free to contribute we are always open to ideas about improvements and tweaks.


It’s been a hectic time here att Bitcraze before Christmas with new decks coming out and the ongoing re-design of the website among others. So we are all taking some time off during the holidays but we will be answering email and support issues. However it might take a bit longer time since we will be occupied with drinking swedish glögg, french wine and stuffing ourselves with chocolate.