Category: Mechanic

Thanks to some of the motor mount feedback we have now managed to improve the motor mount a bit. It now has a longer extruded cylinder and a larger stop to prevent the motor form popping out when landing hard. This should add a bit more protection but it is still a good idea to do one of the mods described in the wiki for even better protection, especially when expecting to do some hard crashes.

Motor mount v2

Motor mount v2

The improved motor mounts will be available in the next batch of kits, which is still scheduled to be ready in the end of June, and also as a separate spare part item. For the next batch the Crazyflie kit without the Crazyradio and antenna will also be available for ordering.

On another note we are planning on modifying our webpage a bit. We feel that when new people visit our webpage they get no overview of our projects. So we are planning a nicer landing page with some images and more general information. We will of course keep the blog and also keep updating it at least every Monday. Aside from this we are also planning on integrating the forum and wiki with the blog and also have the same theme. After doing a quick test with the forum we are pretty sure our green/black theme will look good, but we aren’t that convinced about the wiki…. Let’s see where we end up. If you have any suggestions or comments about the webpage and our plans then  don’t hesitate to leave a comment below.

Lastly we have also installed TapaTalk on our forum. So if you use the TapaTalk app you can find our forum in the directory by searching for Bitcraze.

After one week of flying the new copters we have to say that they are preforming very well. We’ve done a lot of crashes but only had one incident with a bent axis on one of the motors which we fixed by replacing the motor.

We have noticed that using some radio channels in combination with some link speeds causes too much packet drops when the motors are powered. It’s almost certainly the PWM that causes ripples on the power supply and that effects the radio transmission. It was by chance we saw this and changing the channel or speed works around the problem.

Currently we are working with Seeedstudio to sort out the details for starting up but we don’t have an estimate for when it will happen yet. But one thing is for sure, we will go with the rapid-prototype mounts for the first DIY kit. We are still working on the details for the molded motor mounts but since there’s a lot of leadtimes for this it would delay the kit with months and we really don’t want that. Since after the summer we have been using the same design for the rapid-prototype motor mounts and we have only had 2 that has broken.

The plan is to package 1 spare motor, 1 spare motor mount and 4 spare propellers with the kit. There will also be extra spare parts available for purchase.

On Wednesday we assembled and tested all of the kits in the pre-series. We ran though the production tests, that will be used once the kits are produced, as verification. Since we can’t test that they really can fly the test isn’t covering everything but it checks most of the components. One of the units had a solder-bridge between two of the MPU-6050 pins and our tests showed that the unit was faulty. We are glad our tests caught the problem and removing the short fixed it.

The assembly doesn’t take too long and once you have done a few it’s fairly quick. We timed the last one we assembled and it was finished in just under 10 minutes (including fixing errors that were made :-) ). And that time was done by the worst solderer of us! As long as you are a bit steady on you hand it should be ok. It was a really great feeling unpacking, assembling, testing and then directly flying them! We numbered all the units and will track them if there’s any problems. So during the next weeks we will be flying a lot :-). We cross our fingers that they will hold up to what we expect.

The change we did where, connecting the motors directly to the battery and not through the power management chip, turned out great and we could feel the 8% increased power difference (it might have been some placebo effect but it just feels great).

To sum it all up it was a great night and we are really happy with the results! We remember in the beginning when we had to be in a pretty big room to be able to fly the Crazyflie at all and now it’s so stable you can (if you are brave enough) hover it 10 cm in front of your face and then push the throttle and it swishes away!

As for the project progress we are now discussing with Seeedstudio on how to carry on and we are trying to sort out the motor mount problem and some smaller issues.

We’ve also spent some time creating a new page on the wiki describing the hardware. It’s still a work in progress, but there’s a lot of information. We will continue updating the wiki whenever there is time.

Head over to our Picasa albums for more pictures.

 

While we are waiting for the pre-series to arrive, which hopefully will be within 4-5 weeks, we have tested this idea we have had for a while. On the Crazyflie PCB we placed mounting holes in each corner for the possibility to add e.g. a landing gear, canopy or maybe a protective frame. The holes are about 0.9mm and plated so it is possible to solder something in it and a protective frame made of piano wire would be a good candidate.

We bought a couple of 0.8 mm thick 1m long piano wires at a nearby hobby store and got to work. On the first try we bend the wires into the shape solely by hand and it didn’t look or work well at all. We figured there must be some better way! And after searching the net we found this site explaining how to make your own DIY springs of different types. We however needed a circle with a much bigger diameter than normal springs use so it took us a while to find a tube with the right diameter to bend it around to get the right size. We found out that when bending the piano wire around a tube with the diameter of 20mm it ended up at about 55mm which was close enough to the 60mm we needed. Piano wire is a bit hard to solder but with plenty of solder flux it works well. We are pretty pleased with the result!

The piano wire frame itself weights about 3.5-4g so it is within the acceptable payload limit. The flight characteristics is changed a bit making it more controllable but less agile which is perfect for beginners. We have tested throwing it in the ground and crashing it several times and the Crazyflie just bounces so it works great. It might even be possible to go to a smaller piano wire diameter to save weight because now the frame is very stiff. Next step would be to come up with a design that could be attached/detached without soldering. It should also be cheap and easy to manufacture.

One of the goals during this project has been to only use open-source tools for development. The main incentive for this is that we want everyone to be able to take part in the development and look at the all the parts of it once it has has been released. Also it was a great opportunity to see how far we could push open source free development software in a non-trivial embedded project.

Some of the tool has worked great and some has caused us some headaches since we have worked with the proprietary alternatives during the daytime. Our conclusion is that a project like this is definitely doable, but some parts does still require more work (and some frustration). The open-source tools for firmware development and PC client are state of the art and could be used instead of there proprietary counterpart (of course most of the time there is no GUI and some more setup or manual job might be required, but this comes with the benefits of a greater flexibility). However the hardware design tolls are still behind there (expensive!) proprietary counterparts and often requires a great deal of efforts to reach the wanted result.

Of course it’s great that these open-source alternative exists and that a lot of great developers puts time into making them. Without them this project would not have been possible!

The firmware – For firmware development we use a wide number of applications: gedit, Eclipse, Mercurial, gcc, make, openOCD and gdb. On Crazyflie we run  FreeRTOS. As we built the development environment with cross platform tools the development can be done seamlessly on Linux or Windows, on the console or with Eclipe. The radio dongle has been developed from scratch (ie, just from the datasheet) with the help of sdcc to compile for the 8051 contained in the nordic chip.

The client software – For the client side software we use Python, libusb, pyusb, QT/PyQt. Even though there was a lot of discussion within the group (Ruby vs Python, qt vs gtk) we landed on Python due to all the bindings that works out of the box on Linux and Windows. This enables you to quickly create applications. Combining this with QT/QTDesigner and you get a nice GUI application.

The hardware – Since the very first prototype we switched from Eagle CAD to Kicad to use a fully open source e-cad program. It does the job perfectly fine but the routing part requires a lot more time as many of the time reducing functions are still lacking compared to proprietary programs.  For complex boards, if time is an issue, Kicad is not the e-cad to use, but for simple board and typical DIY boards it does the job fine (ie. our experience of kicad is a lot smoother for the radio dongle than for the copter).

The mechanics – For the mechanics we have used freeCAD which is one of the few open-source 3D CADs tools that we have found. When we started out we had a lot of problems with this software because it keep crashing during the design. After the stable release of the 0.12 branch it’s gotten better but we’ve still had some problems with crashes. Over all we managed to design and 3D print many revision of the motors holder with freeCAD.

The website – On our server we are running WordPress, Mercurial and Redmine, all these on a Linux and Apache. We will probably also run phpBB later on.

 

Sensor poll

Waiting another week did not make things clearer whether to mount all sensors or not, but the quotation to buy and mount them did. The $20 we estimated was too low, depending on the amount of boards we make of course, but we would probably have to add another $10 to that which made the decision simple. It is mainly the barometer that is very expensive so we might still decide to mount the magnetometer. First we will do some tests though to find out how much “value” it really adds. For people that wants the barometer it will still be possible to manually mount it afterwards making it a win-win decision.

The coming week we are reviewing the new revision of the hardware before we press the order button. With the previous prototype we had a few violent incidents where one of the arms broke off. Fixing it wasn’t to hard. We used an aluminium tube we cut to the right size and glued over the arm and it holds up well. For this next revision we have changed the board outline around the arm joint to be smoother as this seams to be the weakest point. If everything goes according to plan the next prototype should be the last before we can order a larger batch.

During the last week we also did a little test making an small Android app and plugging the radio dongle in one of our Galaxy Nexus. It’s detected and can be used via the USB API.  It’s nothing that we are planning on spending any time on right now but in the future…

 

 

 

One of the ideas with the Crazyflie was to make a simple flying platform and what’s simpler than just attaching the motors directly to the PCB? On our first prototypes we used hot-glue to attach the motors which work out pretty well. The problem was that when you crashed the motors often came loose, and in some cases, so did the wires attached to the motors. Reparing this turned out to be pretty teadious and it makes flying it a lot less fun, since the iteration time for trying new things becomes longer. We did a few tests with different protections, like soldering a ring of piano-wire, but when we decided to make a kit out of the Crazyflie we realized that we needed something that was easier to manufacture.

Since we could not find any off-the-shelf motor mounts we decided to make our own. Our idea is to place the motor in the mount and the mount on the wing. We have tried a few different solutions but the current leading design is one where we feed the cable from the mount out under the wing and to the soldering point for the wire. We have also made a telescopic version so it is possible to adjust the arm length for adjustable flight dynamics or to attach bigger propellers. After some more testing we will decide which one we will go for.

The CAD work is done in an open-source CAD tool named FreeCAD. After struggling for a while with an unstable versions, the 0.12 branch finally became very stable. The images below is the second iteration of prototypes that we have done using Shapeways. It’s is a 3D printing house in the Netherlands that has a great service where you upload models, choose what material you want them printed in, and then two weeks later you receive them in the mail! The durability is pretty good as well. We have only managed to break one, and that’s after a lot of violent crashes and a more fragile design.

 

FreeCAD showing a model of the motor mount prototype

 

Prototype 1 (shown in CAD model above)

Prototype 2

Crazyflie with Prototype 1 motormounts