Category: Random stuff

It’s been another busy week at Bitcraze. Unfortunately we are lagging a bit behind on pull-requests and such, but we are doing our best to catch up. Also development taking place in the forum has accelerated and we will try to summarize some of it next week.

The planning for the next batch is finished and it’s now going into production. Expected to be ready in the end of June. For this batch we have modified the motor-mounts to add some space at the bottom and also increased the size of the “stopper” at the bottom of the mount to keep the motor from popping out.

From now, as been requested, we will also start offer the parts of the kit separately: The Crazyflie 6/10-DOF, the Crazyradio and the antenna. Aside from this we will still be offering the previous kits and all the spare parts.

A new source version of the Crazyflie PC client has been uploaded to the Bitbucket page. Since this new version mostly fixes critical bugs related to mac, there’s no new version for the Windows installer.

For the next version of the windows installer we are looking at packaging and installing Crazyradio driver with the client. We are also looking at making Ubuntu packages accessible in a PPA as well as Fedora/OpenSuse packages. This would simplify the Client installation on Linux. ArchLinux already have a package in AUR  courtesy of Gergely Imreh.

Development is starting to accelerate and we are really having a hard time catching up on pull-requests and forum activity.  It’s like an avalanche, once it is started, it is impossible to stop :-).  We are also doing our best on the support side and we want to send out a big thank you to all the users that help out with all the support as well. Just to name a few: foosel, alex, skube, TheFrog4u, DesTinY, atimicdog, etc. The list will be too long to list all but you know who you are, many thanks!

We will soon be releasing a new cf-client that will close some bugs and especially the OSX bug which could make your Crazyflie go full throttle if the controller is accidentally disconnected during flight.

Our to do list is currently huge but this is a subset of what’s on the list right now.

  • Implementing GUI in the cf-client  for updating the Crazyradio.
  • Updating the wiki and especially the trouble shooting page.
  • Fixing bugs
  • Implementing brushless controller driver.
  • Support
  • Accepting pull-requests
  • Administration
  • Cleaning up in the forum
  • Planing JavaForum presentation
  • Crazyradio PPM input

As you can imagine we have our free time pretty much planned out :-).

Finally after more than 2 years of work on the kit, the first Crazyflie Nano Quadcopters are arriving at customers! It’s been a long journey with lots of ups and downs, and we are really happy that we managed to reach the goal (and on time).

For anyone who missed the pre-order, more kits will be available at Seeedstudio from the 6th of May. In addition to the products that are already there we will also make the motor-mounts available as spare parts. The 6-DOF and 10-DOF kits will be the same as for the pre-order (include the Crazyradio dongle) but the price for the 10-DOF kit will be updated to $179. Why the new price? Adding the two sensors turned out to be a bit more pricey then we thought.

Now to the technical stuff, here are some of the updates since last week:

  • Updated assembly with the new motor-mounts
  • Binary distribution page containing a brand new Windows installer for the Crazyflie Client (no need to install dependencies anymore) and also the latest firmware build for the Crazyflie.
  • A lot of smaller bug-fixes in the client and improved performance of the Crazyflie. So make sure to update to the latest firmware/client when you get you Crazyflie.
  • The Wiki is being updated (as always) and we are doing our best to catch up. We haven’t had time to set up the registration for the wiki, but if you feel like doing some editing drop us an email and we will set you up with an account.

Since this is the first time the Crazyflie and Crazyflie PC client are distributed there are bound to be bugs that we haven’t caught yet. So if you find any bugs it would be great if you wanted to drop by our Bitbucket page and report issues. And if you feel the urge to write some code, then have a look at how to contribute. There will probably be some bug reports and if not there’s always the wishlist.

We are always eager to get some feedback from our users so drop by our forum and let us know what you think about our projects or to pitch some crazy project ideas.

We finally got to measure the weight more precisely, just under 19g

Crazyflie weight with new motor mounts

Crazyflie weight with new motor mounts

A big thanks to Seeedstudio for making this possible. And to all of you, we really hope you enjoy your new Crazyflies :-)

 

So, like we wrote last Monday, we are visiting Seeedstudio in Shenzhen, China. It’s been a great visit and we have gotten a chance to see both the Seeedstudio offices, the production and a bit of Shenzhen. And of course we also got a chance to do some shopping at the local markets. If you ever happen to find yourself in Shenzhen make sure to drop by the SEG Electronics Market, it’s a great place for electronics enthusiasts such as us!

Since we had some problems getting vacation all at once from our employers we decided to travel separately and overlapping each other a bit. Tobias left first and then me and Arnaud a couple of days later. After roughly 22 hours of travel we landed in Hong Kong and took the bus/train to Lo Wu to the Chinese boarder. Since I went traveling the week before and I couldn’t send my passport for the visa application we took the chance that we could apply for one at the boarder (after reading about it online). Turn out that it’s very easy to get a visa for the Shenzhen area (not all of China) at the boarder at Lo Wu. Took about 5 minutes and cost between ~130 yen. Just note that it’s not all nationalities that this applies to and the rules seem to change every once and a while.

Meanwhile Tobias spent his time visiting Seeedtudio and got to see the production. All the PCB assemblies was already done but the testing was running full speed. We use a simplified bed of nails test-jig that does the programming and tests voltages, current, battery charging, motor drivers etc. It is working very well and every Crazyflie plus Crazyradio takes about 2 minutes to program and test.

Visiting at Seeedstudio was great! We have been mailing and talking on Skype for the last 18 months with lots of people there and it was great to finally meet them in real life. Of course we got a guided tour around their offices which seems like a great place to work, lots of electronics everywhere :-) We also got a chance to catch up on the progress for the production. There’s lots of practical problems to solve when we scale up from only doing prototypes to full production, such as test-rigs for the Crazyflie.

After doing some research online we decided to head for the SEG Electronic Market to check it out and do some shopping. Inside it’s like a bazaar filled with small corridors and little booths selling all kinds of stuff. And this continues for 9 floors! On the first two floors you will find mechanics, electronic components, measurement equipment, leds, cabling… The list just goes on, they even had a small pick and place machine for prototype batches. Continuing upwards it becomes more and more computer hardware like graphics cards, mother boards, memory and hard-drives. These floors also have stuff like routers, cameras and tablets. Going even higher up everything is put together and you can buy laptops and computers. Its really amazing the diversity of things you can find, we even saw some cashier machines. Walking from the bottom floor upwards we really got the feeling that as you get higher things get more and more assembled. And everything is very cheap, for example we bought 300 pogo-pins in different variations for 100 yen (~16 USD), but expect the quality to be there after.

So what did we end up buying? Well, lots of stuff! We bought a lot of prototype stuff that we will use for the Crazyflie like cables, antennas, screws and batteries. And we also found a really nice USB microscope with a stand that does 500x magnification :-)

We uploaded some photos to our Picasa album for Seeed/Shenzhen.

Seeedstudio reception

 

This week and the next we will be visiting Seeedstudio for the first time so tonight we have been finalizing the travel plans! That might sound easy but it’s been a bit like solving a puzzle since we have to take vacation from our day jobs to go, and each one of us has slightly different vacations.

The purpose of the visit is to get a chance to finally meet everyone that we have been talking/mailing with during the last 18 months and also helping out during the final testing stage. And of course it will be really great to visit Shenzhen and fill our luggage with electronics for our trip back :-)

As for the production it’s still progressing according to schedule, we will post actual photos of the boards as soon as we see them :-D.

Map Copenhagen airport to Seeedstudio

Even though controlling the  Crazyflie with a PC is quite unique and permits a lot interesting things to be done, like controlling Crazyflie with a webcam or getting realtime telemetry, we have also been looking at controlling it with a, pc-free, standalone controller.

Current (unfinished) implementation of a standalone controller are using Crazyradio as a PPM to CRTP converter, a very experimental Android app, and using a raspberry pie as ground station. This week we finally managed to fly Crazyflie with an E-Sky transmitter:

Crazyflie standalone controllers

The transmitter is using a nordic-semiconductor chip compatible with our radio. The protocol is also well documented by dvdouden et al. It is using a power amplifier and uses a channel hopping scheme which makes the radio link quite secure.

Code to support this has been in the repo for a couple of week but a problem was that, by default, this transmitter was mixing pitch, roll and thrust channels which made the control of our Crazyflie nearly impossible (pitch and roll was changing by increasing the thrust ….). This week-end, we discovered two switches in the battery compartment, with which you can disable the mixing, and by doing that suddenly the Crazyflie is flying! There are still some work left to make RC transmitters works as good as a gamepad but the current source code is good enough to fly. Overall we have observed that a gamepad is really ideal to fly the Crazyflie in a fast and dynamic way. By comparison RC transmitter benefit by having more precision, mostly for the altitude control, but we are not used to it and it does not feel that ‘fast’ (our opinion).

As for the pre-order production, it is still going forward as planed. Testing of the first production samples  are finalized and now all the PCBs has been manufactured. The expected time of shipping is still according to the Seeedstudio Crazyflie product page.

We just received the first 10 sample boards from the production at Seeedstudio :-D

DSC_0210e

So far we got time to test only two boards and they are working. We have finalized the firmware, bootloader and production scripts so now it has really started :-)

Nothing new exiting about the production, it is still going as planned :-). Meanwhile we are focusing on stabilizing the Crazyflie firmware and its side projects.

This weekend we fixed a bug related to the memory allocation, which we have had a while now and that we never had time to track down. It kind of forced us to use heavier machinery so we decided to setup eclipse for debugging FreeRTOS threads and it happened to be very useful.

Since version 0.5 OpenOCD contains a rtos-awarness mode for FreeRTOS and, when painfully configured in eclipse, this allows us to observe the stack trace and the running state of all the tasks running on Crazyflie:

eclipse-threads

This helped us to track-down the bug much quicker and will greatly help us in the future. We also found a eclipse plugin, embsysregview, that enables one to show and analyse the peripheral register values, great little plugin!

The virtual machine will be updated with the debug environment and we will try to update the Wiki with the setup procedure.

As announced on the last Monday post and as well discussed on the forum, one of the things we are working on right now is to create a virtual machine (VM) that would greatly reduce the haste of getting the running/development environment up and running. The VM will be a Linux system that can run on Windows, Linux or Mac and that will be pre-configured to work with Crazyradio and Crazyflie. We are going to post the first alpha of this virtual machine during the week using Bittorrent so if you are interested to test it stay tuned to the forum!

As for the production of the Crazyflie’s things are running according to schedule, so far so good!

Also from the VM discussion we discovered that Mike has done a great job getting the Crazyflie client to work on Mac OSX. This is going to greatly help supporting Crazyflie on OSX.

Hi, Monday again. We just passed the two most exiting weeks in Bitcraze history. As we speak we are passing the 1K Crazyflie sold which is about 5 times over our optimistic estimations. Now the pressure is on, and there is still one week of pre-order left :-).

We are continuing to update the documentation, working on Crazyflie firmware, the PC gui client and as well all emails/administrative work that takes a surprising amount of time :-). Due to popular interest the focus has been on getting the client to work on Mac OSX and getting Crazyflie to work in a standalone mode (ie. no PC) with an E-sky R/C transmitter which is compatible with our radio chip. The transmitter is almost working (still some mapping issues to work out) and the OSX proof-of-concept is on the way to work (it should work out of the box if all the python libs where 64bits).

We should probably clarify that the PS3 controller we use to control the Crazyflie is just one possible input method. Actually any input device could be used which could be translated into roll, pitch, yaw and thrust. The GUI also simplifies it as there is a configuration dialog and soon we might have our first contribution which is for the xbox controller :-)

We are continually updating the wiki and are starting to get some activity on the forum. It is the right place to go if you have questions or want to discuss about the Crazyflie.

Thanks again for supporting us, one more crazy pre-order week to go!