Over the past few weeks I've been working on a raspberry pi powered quadrocopter, finally cumulating in todays first test flight! This flight went infinitely better than I expected, as it seems I have guessed nearly perfect PID gains.
The Picopter is currently based on the same filtering and control algorithms as my previous platform, however now all of the processing is handled by the on-board Raspberry Pi. This initially seems rather counter intuitive, as time sliced operating systems like Linux are not as predictable in their execution time as a simple real-time microcontroller program, but I've found in practice preemption allows the main control loop to run at a very reliable frequency. This now means the copter can perform the same as a basic microcontroller powered platform, but also has heaps of CPU time leftover to run things such as an SSH interface to my laptop via a wireless adapter, the logging of every scrap of data imaginable to the on-board SD card (think 200MB per flight), and the potential for complex route mapping and real-time integration into something like Google maps.
I'll continue PID tuning over the next few days, and will hopefully be able to acquire a better camera to obtain some better quality video. For now, here's some more phone quality pictures: