Updated to conform to style guide.
Fixed issue with statement ordering. Minimum rates of 200deg/s.
Added rate limits to MSP for use in Configurator.
Refactoring to improve efficiency.
Revert 'msp.c' changes.
Added BUILD_BUG_ON(CONTROL_RATE_CONFIG_RATE_LIMIT_MAX > SETPOINT_RATE_LIMIT).
Added rate_limits to log header to faciliate support for blackbox-log-viewer to correctly handle the rate calculation.
Use STATIC_ASSERT() for build protection.
OSD and telemetry output of vario data is enabled on F4 and up targets
that have
USE_BARO defined. Settings and telem elements are removed from all
other targets.
F3 targets are not supported to free memory.
Iterm Relax was inserted before crash recovery and this was causing the recovery to be ineffective or fail completely. The problem was that the subsequent iterm calculation was not using the calculated recovery error and instead was using the setpoint error. As such I ended up accumulating and opposing P based on recovery error. This prevented the efforts of crash recovery to level the quad and since it couldn't reach the level state crash recovery wouldn't shut off. This resulted in the pilot only having control over yaw and throttle while crash recovery was still ineffectually trying to control roll/pitch.
The fix is to move crash recovery handling ahead of the iterm relax calculations and make sure that iterm relax uses the error calculated from crash recovery if active. This also allows crash recovery to reset the iterm accumulation as originally designed.
4.0 seems like a good time to rename these confusing legacy parameters to something that matches their function.
p_level -> angle_level_strength
i_level -> horizon_level_strength
d_level -> horizon_transition
Add config.c file to setup ICM20602's calibration threshold 148.When FC switch GYRO_CONFIG_USE_GYRO_1,it recover default value 48.
The function targetValidateConfiguration() will executes every time,so Increased judgment to check,avoid CLI set fail.