These concern the TAKEOFF flight stage and address #27147.
* Logging metadata fixes
* Disabled continuous TECS reset during takeoff
* Fixed bug in reached_speed_takeoff calculation
* Limited SPDWEIGHT=2 to only first part of takeoff climb
* _post_TO_hgt_offset set to constant
* Takeoff I-gain now defaults to 0 and is used
* Use at least TRIM_THROTTLE during the climb
* Updated description of TECS_TKOFF_IGAIN with new behaviour
* Forced max throttle while below TKOFF_LVL_ALT
* Added throttle constraints in no-airspeed mode
Additionally, set_min_throttle() has been created, that allows one to
set the minimum TECS throttle for the next update_pitch_throttle() loop.
Additionally, the throttle limits system has been reworked. TECS will
receive external throttle limits from Plane and will always take them
into account and respect them.
Autotests for takeoffs have been added for Plane, covering AUTO and
TAKEOFF mode takeoffs.
An auxiliary `set_servo` method has been added to `vehicle_test_suite.py`.
autotest: tidy PosHoldTakeoff heli test
autotest: tidy StabilizeTakeoff heli test
autotest: tidy SplineWaypoint heli test
autotest: tidy ManAutoRotation heli test
autotest: tidy AirspeedDrivers heli test
autotest: tidy PIDNotches heli test
autotest: clean MotorVibration test for new infrastructure
autotest: clean VisionPosition test for new infrastructure
autotest: clean MotorFail test for new infrastructure
autotest: clean OpticalFlowLimits test for new infrastructure
autotest: tidy OpticalFlow test for new infrastructure
autotest: tidy SetModeViaModeSwitch test for new infrastructure
autotest: tidy SetModesViaAuxSwitch test for new infrastructure
autotest: tidy SplineLastWaypoint test for new infrastructure
autotest: tidy PIDNotches test for new infrastructure
autotest: tidy ThrottleGainBoost test for new infrastructure
autotest: tidy PrecisionLoiterCompanion test for new infrastructure
autotest: tidy BeaconPosition test for new infrastructure
If the Gyro/Accel ID is already in the registered list, do not try to add it again.
This stops an issue seen on a CubeOrangePlus BG3 where, during the very first boot after a parameter wipe, software incorrectly registers a fourth IMU.
The Fourth IMU is registered because the AUX IMU is the same DevID as the third ICM45686.