Port a Drone Flight Controller from Bare-Metal to FreeRTOS
Overview
What this challenge is about.
Port bare-metal drone firmware to FreeRTOS, assign priorities with Rate-Monotonic scheduling, and validate on hardware. Earn a verifiable certificate.
The scenario
The startup (around EUR 4M ARR, 280 drones deployed) has had 2 near-crash incidents traced to control-loop jitter and cannot ship the next product line without a real RTOS.
The Brief
What you'll do, and what you'll demonstrate.
Port a Cortex-M7 flight controller from a bare-metal super-loop to FreeRTOS and prove the 1 kHz control-loop deadline is met under worst-case load.
Earning criteria — what you'll demonstrate
- Apply Rate-Monotonic scheduling theory to a real embedded task set
- Port bare-metal firmware to an RTOS without regressing real-time behaviour
- Measure worst-case execution time with cycle-accurate instrumentation
- Choose synchronization primitives (mutex, semaphore, queue) appropriate to each task interaction
Program Fit
Where this fits in your program.
Sharpens the same skills your degree expects you to demonstrate.
Aligned coursework coming soon.
Skills
Skills you'll demonstrate.
Each one shows up on your verified credential.
- Freertos
Apply freertos to solve real industry problems and demonstrate production-level capability.
- Rate Monotonic Scheduling
Apply rate monotonic scheduling to solve real industry problems and demonstrate production-level capability.
- C Programming
Apply c programming to solve real industry problems and demonstrate production-level capability.
- Wcet Analysis
Apply wcet analysis to solve real industry problems and demonstrate production-level capability.
- Arm Cortex M
Apply arm cortex m to solve real industry problems and demonstrate production-level capability.
- Real Time Systems
Apply real time systems to solve real industry problems and demonstrate production-level capability.
Careers
Career paths this challenge builds toward
Completing this challenge demonstrates skills that transfer directly to these roles: