diydrones/ardupilot — pull request #7 by jschall (2013-01-12 06:50:18+00:00)
Title: ArduCopter: modify stability patch to eliminate ground bouncing and other bad behavior

This patch changes the stability patch so that only a given percentage of the roll and pitch command is considered "must have."

The percentage used is the percentage of the command that comes from the integrator. This means that disturbances don't cause an immediate increase in throttle - only steady-state error does.

In my testing, this reduced or eliminated several bad behaviors:
1. Landing bounces were eliminated.
2. Wobble caused by the user thrashing the stick causes far less climb.
3. Wobble caused by tuning rate P or D too high no longer causes an uncontrollable, unstoppable climb. (The cause of several crashes that I know of.)
4. Any climbs that still occur can be effectively prevented by the throttle controller or by the user's throttle input.

Note: it is my recommendation that the integrator limit on the rate controllers be increased to 3000 or 4500, and the default integrator be increased to 0.2 or 0.3.