This is the code for the new KFly PCB. HW Specs: * ARM Cortex-M4F STM32F405 CPU w/ FPU and DSP @ 168MHz * MPU-6050 accelerometer/gyroscope * HMC5883L magnetometer * MS5611-01BA01 pressure sensor * 8 PWM outputs (50/400Hz) * 4 expansion connectors (3 UARTs & 1 CAN) * 6 slot RC input connector with support for (C)PPM up to 8 channels in and signal strength SW Specs: * Runs FreeRTOS (with FPU support) with an Hardware Abstraction Layer on top for fast application development * USB Bootloader - no need for an external programmer! * Quaternion based Square-Root Multuiplicative Extended Kalman Filter (SR-MEKF) provides attitude estimation * "Control signal to Motor"-mixing for different types of frames * Flight control: Rate mode, Attitude mode and more to come TODO List: [X] Fix catalog structure to Modules [ ] Migrate comments to Doxygen --- [ ] Finish the bootloader [X] Add callback for I2C finished transfer [ ] Add SPI drivers for external Flash [ ] Add all serial manager parsers [X] Make sensor readings interrupt driven - Priority! [X] Finish the HMC5883L code - Priority! [X] Add interrupts on pin change for sensor data available - Priority! [X] Add PWM out for motors [ ] Add (C)PPM/PWM in for control [ ] Add support for all the communication interfaces [ ] Code the Attitude/Position Estimation [X] Code the controller - Priority! [X] Code the motor mixer - Priority!