This firmware is dedicated to two aspects of autopilot control, throttle and altitude management.
Throttle control will work on the autopilot modes RTH and Waypoint sequencer. It is based on three parameters, that can be found on the autopilot menu AP1/3.
This parameters are:
Set min thrust
Set max thrust
Cruise speed
Throttle P. gain
When enabled(RTH or Waypoint sequencer), the autopilot will start from the current throttle position, it will increase or decrease until it can match cruise speed with actual speed or until it does reach the maximum or minimum thrust settings. Throttle P. gain can change how fast it does "hunt" for cruise speed. Default is 20, but I think is better not to change this value.
There is also a secondary throttle adjust that will increase or decrease throttle(within the max and min boundaries). Throttle will be increased if the autopilot wants to climb and decreased if the autopilot wants to dive. How much it does depends on the Max pitch angle set as well as the difference between max and minimum throttle.
Altitude control is based on four parameters:
Cruise altitude
Altitude control limit
Altitude proportional gain
Vario gain
Will be enabled on autopilot modes RTH, Waypoint sequencer, Heading hold and Position hold.
First it will check if the airplane is within glide distance from home (it can glide to home with no power), so is important to properly set the glide ratio adjust menu.
If yes, it will try to climb or dive towards cruise altitude.
If no, then it will check if current altitude is bellow cruise altitude, when bellow it will try to climb to cruise altitude. If above, it will try to keep the current altitude.
The simplified formula(removing scaling factors) for control is:
Altitude error = Desired altitude - altitude, This error is limited within +- altitude control limit.
Desired Vario = Altitude error * Altitude gain
Pitch = Old pitch + ((Desired Vario - Vario) * Vario gain), pitch is limited within max and min pitch settings.
The autopilot will check altitude difference to cruise altitude, and will try to control the vario rate by pitching up or down the airplane attitude.
This is a beta firmware, remember to try all this at a safe altitude so you can quickly take manual control if something goes wrong.