This is my internal not so well tested version of 2.0.24a.
I had hoped to fly it more this weekend, but a bad ESC stopped me Saturday and Sunday I didn't get to try alt hold, which is totally new.
If you are brave and a good pilot, try it. I have implemented some DCM changes to resist drift and correct gyro saturation events faster. I am working with Doug in the next few days to improve this even more. (And don't fly this release without the filter pads soldered up.)
If you choose to fly this, alt hold is the thing to look out for. I have a new mixing algorithm and have increased the baro performance. Expect less noise and less random drift. Please use some felt over the sensor. I don't want to get bad info back from test flights.
I wouldn't try auto or RTL with this code until the basics are proven to work properly.
Incremented firmware version to 100
Added motors logging - logs PWM output
Added 6 position moving average filter to barometer
Reduced and filtered temperature readings from baro - the cause of random walk errors
Significantly increased THROTTLE_BARO_D to leverage less noisy barometer.
Removed error limit on alt hold
Combined sonar and baro reading with a mixing algorithm
Combined sonar and baro PIDs into one.
Added auto-level mode - enter by holding motor arm position for 20 seconds. fly as stable as possible at 3-4 feet for 45 seconds.
Added in-field level command - hold disarm for 10 seconds
Increased dead zone on Yaw to prevent backwards turning on crooked airframes
Increased yaw output limit
Added startup message in log
Removed ground_temperature, ground_pressure from EEPROM - not needed
Increased kp_rollpitch in the DCM to .1 (about 2x) for faster recovery
Added dynamic drift control - neutral sticks and lower throttle will trigger higher (1.5) DCM gain. untested.
Fly at your own risk!, a release version will come out next week. I just don't want to hold on to this code too long without feedback.