  This paper presents a method to recover quadrotor UAV from a throw, when no
control parameters are known before the throw. We leverage the availability of
high-frequency rotor speed feedback available in racing drone hardware and
software to find control effectiveness values and fit a motor model using
recursive least squares (RLS) estimation. Furthermore, we propose an excitation
sequence that provides large actuation commands while guaranteeing to stay
within gyroscope sensing limits. After 450ms of excitation, an INDI attitude
controller uses the 52 fitted parameters to arrest rotational motion and
recover an upright attitude. Finally, a NDI position controller drives the
craft to a position setpoint. The proposed algorithm runs efficiently on
microcontrollers found in common UAV flight controllers, and was shown to
recover an agile quadrotor every time in 57 live experiments with as low as
3.5m throw height, demonstrating robustness against initial rotations and
noise. We also demonstrate control of randomized quadrotors in simulated
throws, where the parameter fitting RMS error is typically within 10% of the
true value.
