Part 01 / Software & machine learning
02 / 09Fly it classically, then break it
Establish a baseline worth trying to beat.
Close the loop with a cascaded PID and an LQR around hover. Freeze a benchmark, then expose the model mismatch that motivates adaptation.
The goal for this build
What you’ll be able to do.
- Turn a desired acceleration into collective thrust and body-rate commands.
- Tune a controller in a repeatable order with actuator limits.
- Build an LQR baseline from a local dynamics model.
- Separate steady-state errors, transients, saturation and delay-induced instability.
What to have ready
- Module 1 simulator and validated conventions
- Basic derivatives and matrix multiplication
Free account
Read the lesson, run the lab, pass the gate.
The whole course is free. Create an account to unlock the lesson, the build lab and the gate command for this module, and to download the starter kit.
03 / Prove it
Keep the evidence.
Then run the gate.
What you ship
- Cascaded PID and hover LQR controllers
- Pinned gains, actuator limits and reset behavior
- Per-seed benchmark rows and aggregate plots
- Written failure analysis and Module 02 evidence
Module 02 gateEvidence required
- Nominal tracking RMS is below 5 cm for both controllers on every trajectory, with no crash or abort.
- At least one prescribed perturbation pushes mean maximum error above 30 cm or produces a crash or abort.
- A baseline that survives every prescribed perturbation passes by documenting a separate stress sweep that breaks it, not by being weakened.
- Explain every controller and condition result, nominal included, and retain failure counts.
With a free account: the gate command and how to record your evidence.
The story behind the build
Episode companions.
Written companions are available now. Recordings and customer access are forthcoming.
Made it through the lesson?
Save your reading progress here. Record your gate result in your project.