Category: Crazyflie

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

 

The community interest for FPV flight made us buy a light weight analog FPV kits a while a go. We bought the 5.8GHz micro combo set from fpvhobby to do a first test. It took a little while to solder things together but it wasn’t that bad. We soldered the camera and the transmitter power to the VCOM voltage on the Crazyflie which is available on the expansion port. Then we taped the camera and transmitter to the Crazyflie and did a test flight.  The FPV kit is only about 3 grams which doesn’t affect the flight performances that much.

It was almost too easy, but as soon as we took off we noticed some vertical lines on the TV so maybe it wasn’t that easy. There seems to be some electrical interference, probably from the motors. Also the battery voltage drop generated by fast accelerations cuts the video feed after a couple of minutes of flight. We still think that there are some improvements to be done so hopefully it will work better in the future.

As for the production, so far it is still going forward as planned.

Finally an Alpha version of the virtual machine has been posted on the forum, you are welcome to test and report any problem/suggestion you may have :-).

Like we wrote last week we are busy with a lot of administrative stuff (box design, component sourcing, answering emails etc). But we managed to do a few commits to the crazyflie-pc-client during the week. We have also started preparing a virtual machine appliance that contains everything needed for development and flying. The idea is to make it easier for anyone that doesn’t want to bother about the pre-requisites. If you download Virtual Box or VMware Player, import the virtual machine appliance and pass the Crazyradio/USB game-controller into the virtual machine then you are ready to fly and do development.

If you missed the pre-order, don’t worry. The Crazyflie Nano Quadcopter Kit will be back in stock shortly after the last pre-orders has shipped. But we plan to split the special pre-order bundles so they will become three separate products: Crazyflie Nano Quadcopter Kit (6- and 10-DOF), Crazyradio USB dongle and the 2.4 GHz antenna.

So after three very busy weeks the pre-order will close today. We are really overwhelmed by the attention that the project hs gotten and number of Crazyflie kits that we have sold. We are also very excited about already getting feedback in the forum and by mail about new mods and features. If you have technical questions or suggestions post them over in the forum so we can answer them there and everyone can see the responses.

Currently we are finalizing the sourcing and test-plans for the production which will start very soon. We are also (as always) working on updating the wiki and answering questions in the forum. We added two new pages to the wiki: One about the Crazyflie Pyhthon API and one about how to contribute to our projects.

The upcoming weeks we will be busy with a lot of administrative stuff so don’t be worried if you don’t see any commits in the repos or new hacks, we haven’t stopped the development :-)

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!

So finally it’s Monday again :-) As you might have noticed the Crazyflie got released for pre-release last week! All our code has now been pushed onto Bitbucket and our repositories can be found here. Since we did some restructuring of the code before pushing there might be some bugs that we are currently hunting. The Crazyflie is mainly a development platform where you can either add new features/hacks or improve the current features. We added a feature wishlist to the Wiki for features that we never had the time to implement and also to add new features that you suggest. So if you feel like getting you hands dirty there’s still lots of stuff to do! In order to make development easier we have:

  • Wireless Radio Bootloader: This will enable you to easily update the firmware in the Crazyflie. The bootloader cannot easily be erased without using  a JTAG so don’t worry about bricking your Crazyflie when testing new firmware
  • Crazyradio USB bootloader: The Crazyradio contains a USB bootloader for easy update of the firmware
  • Well documented: We are currently doing our best to update the documentation on the Wiki and our goal is to create a well documented platform
  • Parameter setting/getting: This is detailed a bit more here but in short it’s a framework where you can easily add parameters/variables that can be set or fetched from the client. The tab in the client where you can change PID controller parameters on the fly is implemented using the parameter framework.
  • Variable logging: This is also detailed a bit more here but in short it’s a framework where you can easily log variable values to the client. You select variables that you want to log and the rate you want to get them and the Crazyflie will automatically send you updates for these variables. The attitude indicator and roll/pitch/yaw values on the FlightTab are implemented using the logging framework.

In the upcoming week we are planning on posting a video showing some of these features.

Wait, what? Is it Monday again already?! Well no, don’t worry you didn’t miss the weekend. The reason for breaking our “Monday post” tradition is that we couldn’t wait to announce that the pre-order has started for the Crazyflie!!

 

Crazyflie Nano Quadcopter

 

The last couple of weeks has been really busy finalizing as much as possible and finally the time has come. In the end we couldn’t decide on whether we should add the extra sensors or not so we decided on making two versions, one with the basic sensors and one with the extra sensors. Keep in mind that there’s no firmware for the extra sensors yet but if you are interested in more advanced regulation algorithms and performance then you should get the kit with the extra sensors.

We put together two bundles for the different “sensor packs”. One is called Crazyflie Nano Quadcopter Kit 6-DOF and the other 10-DOF. They both include the Crazyradio USB dongle and a 2.4GHz antenna for it. The price for the kits are $149 for the 6-DOF and $173 for the 10-DOF. For full product descriptions head over to Seeedstudio and have a look. There’s also spare parts available to pre-order which could be a wise choice depending on what you are planning on using the Crazyflie for :-)

Here’s the link to the Crazyflie pre-order at Seeedstudio.

Here’s the time schedule for the pre-orders:

  • Pre-order: Jan 31st – Feb 18th
  • Shipping: April 25th

To be totally honest we are not sure how to handle the transition from pre-order to “normal” orders. This depends a bit on how many we sell and how fast we can get a “normal” stock up again. So if you are interested in getting a kit make sure to get one during the pre-order!

Like we’ve said earlier we wanted to release the source for the firmware/software as well as the schematics so you know what you are buying and can already now think of hacks and projects for when your Crazyflie arrives. The choice fell on Bitbucket where all our repos and bugtrackers are located. The only thing we are not releasing yet is the complete KiCad hardware design, but once the pre-orders ship it will be in the repos as well. We are currently pushing the code into the repos on Bitbucket but haven’t had time to complete all of them so we will keep publishing them during the weekend.

So if you want a Crazyflie for flying, doing development or just to help support our project then head over to Seeedstudio and pre-order one.

Last but not least: What would an occasion like this be without a new video :-)

Back in November when we got the pre-series we shot an assembly video showing how to assemble a Crazyflie kit. We shot it in Tobias shed in his back garden where it was about 10*C, that’s why Marcus is wearing a winter jacket. It was also pretty late and it’s the 7th Crazyflie in a row that we have tested and assembled, so we where pretty tired. We are not trying to find excuses but it might not have been our best work. For example the words “the best way” is frequently used, and due to our Swedish heritage, “one good way” might have been more appropriate, but that day we where just feeling confident :-).

If you have ~8 minutes to spare have a look at the video, so you know what to expect in terms of assembly, when you pretty soon will be able to pre-order the kit.

We’re still busy with administrative stuff and preparing everything for release so sorry for the lack of tech posts. Hopefully there will be more time for those later :-)

But we did spend one night this week trying out something that we have talked about forever: Using OpenCV to auto-pilot the Crazyflie. For controlling the Crazyflie from a Python scripts it’s just a couple of lines and then you are ready to go. Add some object tracking to that and you can make an autonomous Crazyflie…or you could make a crashing one like the video below… The video is shot using a Playstation Eye lying on the floor. The camera has good potential for tracking since it’s low resolution, cheap and can do up to 120 fps. The plan is to use the size of the detection to control the thrust and the center of it to control the roll and pitch.

Unfortunately the latency was too large for doing a control loop for roll/pitch/thrust so it crashes. But hopefully in the future we, or someone in the community, will have some more time to spend on this. We think that it definitely has potential!

Part of this test was also to have another project where we use the Crazyflie Python API to make sure that it can easily be dropped into other projects.

 

We are back from vacation and now it’s full speed ahead! As you might have read during the holidays there hasn’t been that much going on, we have been resting up for a busy spring.

During the upcoming week we will be writing product descriptions for the Crazyflie Kit, Crazyradio and spare parts kit that will be published for the pre-order at Seeedstudio. We are also working on cleaning up the final parts of the code and cutting an assembly video for the hardware.

So the next couple of weeks will be busy and exciting so make sure to stay tuned :-)