libfixkalman is a Kalman filter computation library for microcontrollers. It is based on the libfixmatrix and libfixmath libraries, which use 16.16 bit fixed point values. The main focus is processors without an FPU, such as ARM Cortex-M0 or M3.
A 🦀 Rust variant, albeit not a direct port, is available at `sunsided/minikalman-rs`_.
Matrix inversion in the correction step is implemented using Cholesky decomposition and an optimized inversion algorithm ported from EJML.
See function reference for further details and example_gravity.c for example code.
This library now has experimental support for the conan.io package manager and is aimed at CMake. Both libfixmath
and libfixmatrix
dependencies are available on conan.io and you should be able to verify the package building process by calling:
conan test_package --build
In general, to reference the library you'd provide a conanfile.txt
with the following content:
[requires] libfixkalman/20161008@sunside/stable
which corresponds to this package, where 20161008
could be replaced with the latest version as found via conan search -v libfixkalman* -r=conan.io
. You can then just:
conan install
or:
conan install --build
to obtain all required references.