strncpy() does not enforce NUL-termination, but snprintf() does. So we need to ensure all strings are terminated. Another issue was the use of the wrong length parameter for these functions, resulting in the limiting arguments not being applied to the right length.
These headers files were missing from the header files that
I added them to; the fact that they were missing didn't
lead to compile errors because by coincidence the missing
headers are included in the source files before including
these headers. But, after the reordering of header inclusions
by Tools/fix_headers.sh, these cases will give rise to compiler
errors.
In most cases, _extern_address was unused, thus wasting cycles & RAM. This
adds a separate class BlockParamExt with the field and uses it in ekf2_main
Frees roughly 0.5KB of RAM on Pixracer
It makes more sense to set the optimization flags on a platform basis
instead of individually for each module. This allows for different
optimization options for SITL, NuttX, Snapdragon, etc.
__STDC_FORMAT_MACROS changes the behavior of inttypes.h to allow
defining format macros for printf-like functions. It needs to be defined
before any include is done, otherwise due to include chains and header
guards it may not take effect.
Instead of having to define it everywhere it is used, move the define to the
build system. Also update ecl and DriverFramework submodules to deal with the
changed definitions.
* Use variance to control publishing for LPE.
* Don't stop publishing if we have gps/ baro.
* LPE tuning and cleanup.
* Added bias saturation to LPE.
* Added vector enabled low pass filter block.
* Added rk4 integration and pub lowpass to LPE.
* Fix std::abs issue on mac/ reset lowpass on state reset.
* Don't estimate gyro bias when rotating at high speed att_est_q.
* Lowered low pass on position to 5 Hz for LPE.
* Streamline state space update for LPE.
* Added health flags to est2 log.
* Revert to old tuning, more conservative, less faults.
* Formatting.
* Fix for fault message on LPE.
* Added subscription throttling to LPE.
* Formatting.