While waiting for our next round of prototypes we are continuing the work on the software. As we feel that the copter is now stable enough for release we are concentrating on making the software easier to use and better organized.
We have also run a little profiling test on the Crazyflie firmware to see how much CPU was used by the current stabilisation algorithm. We use FreeRTOS and added some functionality to log all the task transitions. The first result was quite worrying as it seems that we where using about 90% of the avaliable CPU. After further investigation is appeared that the problem came from the fact that we where testing Debug buils. When optimizing for size (-Os of GCC) it brings us back to 70% cpu usage and optimisation for speed (-O3) to 65%:
We are currently running two sensor fusion algorithms in parallel and have a lot of room for improvement for the code efficiency but we believe that would be good enough.
There has also been some work done on the PC GUI, there are now more flight settings and it is easier to use. We are currently adding a Joystick configuration window to be able to add support for new joysticks/gamepads more easily: