EmbeddedRelated.com
Forums
Memfault Beyond the Launch

Matrix math C++ class library for MCUs?

Started by Dave Nadler November 1, 2022
Hi Guys - I'm searching for a C++ matrix math library suitable for 
Kalman filter implementation on MCUs. I found a few but they may be 
zombies, for example Eigen 
https://stackoverflow.com/questions/73883276/eigen-matrix-template-library-over-arm-cmsis-dsp 
got crickets.
What do you guys use?
Thanks in advance,
Best Regards, Dave
On 01/11/2022 16:16, Dave Nadler wrote:
> Hi Guys - I'm searching for a C++ matrix math library suitable for > Kalman filter implementation on MCUs. I found a few but they may be > zombies, for example Eigen > https://stackoverflow.com/questions/73883276/eigen-matrix-template-library-over-arm-cmsis-dsp got crickets. > What do you guys use? > Thanks in advance, > Best Regards, Dave
How big are your matrices? If they are just 2x2, you can probably roll your own code as quickly as you can find and test something from the net. Templates are sometimes very useful and elegant, but if you have fixed known types and sizes, specific classes and functions are often easier to debug.
On 11/1/2022 1:02 PM, David Brown wrote:
> On 01/11/2022 16:16, Dave Nadler wrote: >> Hi Guys - I'm searching for a C++ matrix math library suitable for >> Kalman filter implementation on MCUs. I found a few but they may be >> zombies, for example Eigen >> https://stackoverflow.com/questions/73883276/eigen-matrix-template-library-over-arm-cmsis-dsp got crickets. >> What do you guys use? >> Thanks in advance, >> Best Regards, Dave > > How big are your matrices?  If they are just 2x2, you can probably roll > your own code as quickly as you can find and test something from the > net.  Templates are sometimes very useful and elegant, but if you have > fixed known types and sizes, specific classes and functions are often > easier to debug.
Certainly a fair bit bigger than 2x2, non-sparse. Eigen does seem to be active but don't know about use on MCUs. M7 with adequate RAM should be OK though. Using templates for decades during which diagnostics have improved ;-)
Dave Nadler <drn@nadler.com> writes:
> Hi Guys - I'm searching for a C++ matrix math library suitable for > Kalman filter implementation on MCUs. I found a few but they may be > zombies, for example Eigen
I'm unfamiliar with Eigen and only vaguely informed about Kalman filters, but doing eigenvalue calculation properly takes some know-how, and you're better off using a library rather than rolling your own. Does the MCU angle actually matter in relation to the library choice? There are a zillion linear algebra packages out there, the best known probably being LAPACK. I have no idea if this is suitable for your requirements: https://www.gnu.org/software/gsl/
On 11/2/2022 1:14 AM, Paul Rubin wrote:
> I have no idea if this is suitable for your requirements: > https://www.gnu.org/software/gsl/
Thanks Paul, unfortunately GSL has polluting GPL license; can't use it for current project... Eigen license is non-polluting.

Memfault Beyond the Launch