Skip to content

© 2026 Rami Kronbi · Beirut, Lebanon

Back
Teaching · control

Teach it: a drone-control bootcamp

A seven-evening course that takes students from a simple circuit to a drone that survives losing a propeller; ready, not yet taught.

My partSole author

In short

A seven-evening course that takes engineering students from PID on an RC circuit to a quadrotor that survives losing a rotor, taught with my easyPID library and my rotor-fault study. Every session has notes, an auto-checked notebook, a lab, a quiz and slides. It is ready for a first cohort and has not been taught yet.

What it is
A ready-to-run, seven-evening bootcamp on drone control — PID, attitude, fault tolerance — with auto-checked notebooks, Arduino labs on a two-motor seesaw rig, slides, an instructor guide and a cohort plan.
Why it matters
Control theory is usually taught on paper. Students with printers and electronics still lack a structured path from “what is PID” to “how does a drone stay up, and what happens when a propeller breaks”.
My part
I wrote the curriculum and its software, ported easyPID to Python for the notebooks, designed the rig, and set up CI that runs every notebook and compiles every sketch.
Plot of the seesaw rig’s beam angle stepping to 10 degrees and then absorbing a tap: a single PID loop swings to 17 degrees, a rate and angle cascade to 13.
Session 4 on the rig model: a single loop against a rate and angle cascade, both stepping to 10° and then hit by a tap. Simulation with assumed parameters.

Step by step

  1. 1

    Bench PID

    An RC circuit and a three-stage RC ladder with easyPID: windup, filtering and relay autotuning, each measured against a known answer.

    Plot of capacitor voltage under P and PI control on an RC circuit: P settles below the 2.5 V setpoint, PI reaches it, and PI with too much integral gain overshoots.
    Session 1: P leaves an offset, PI removes it, too much integral gain overshoots. easyPID’s Python port on a simulated RC circuit.
  2. 2

    One drone axis

    A two-motor seesaw rig with a potentiometer on the pivot: a thrust curve from a kitchen scale, interlocks, and the first closed loop on a clean angle.

  3. 3

    Attitude

    The MPU-6050 estimate measured against the potentiometer, complementary and Kalman filters, and a rate and angle cascade built from two easyPID instances.

  4. 4

    The full vehicle

    A minimal quadrotor simulator checked against the research model, mixing priorities, and a four-loop cascade.

  5. 5

    Faults and capstone

    Fault signatures, CUSUM and re-allocation with the rotor-fault simulator, then an acceptance test that runs identically on the rig and in simulation.

    Plot of position error after rotor 1 is lost at two seconds: the passive controller diverges, the detect and yaw-relaxed pipeline peaks near 40 cm and recovers.
    Session 6: losing a rotor in the rotor-fault simulator, passive controller against detection and yaw-relaxed control.

Results

7
Sessions
about three hours each, plus optional build and open-lab evenings
41
Auto-checked exercises
in 7 notebooks built into student and solution versions; CI executes all 14
≤ 4.8 × 10⁻⁴
easyPID port
worst relative difference from the compiled C++ library over 3,274 randomised updates
USD 96–168
Kit per team
estimated from a parts list for the bench kit and rig, before shipping and contingency
For engineersHow it is built, its limits, and its keywords.

How it works

Bench electronics first, then one drone axis on a rig with a potentiometer for ground truth, then the full quadrotor and its faults in simulation. Every exercise is auto-checked, every lab is predicted by a notebook before it is measured, and the capstone is scored by the same code on the rig and in simulation.

Limits

  • The analysis panels are verified on simulated signals with known noise, vibration and distortion (the Noise Lab recovers the simulated white noise to within 1 %); long captures from the real unit are still to come.
  • Not taught yet: no student has taken the course, so I can’t say yet what students learn from it. A pilot plan says what the first cohort will measure.
  • No rig has been built from the documents. The printable parts have not been printed, and the sketches’ motor and IMU drivers have been compiled but not run on hardware.
  • Rig parameters, capstone pass limits and performance figures come from simulation with assumed values; session timings are estimates.
  • Testing easyPID for the course found a first-run bias in its relay autotuner: an ultimate gain of about 42 on the first run and 28 on the second, against an exact 29. The lab runs it twice; the library is unchanged so far.

Keywords

  • drone control course
  • PID
  • easyPID
  • quadrotor
  • control education
  • Arduino

Read the write-up →