{"id":13573747,"url":"https://github.com/sunsided/libfixkalman","last_synced_at":"2025-04-11T05:21:27.554Z","repository":{"id":13263844,"uuid":"15949097","full_name":"sunsided/libfixkalman","owner":"sunsided","description":"Kalman filter fixed-point implementation based on libfixmatrix, targeted at embedded systems without an FPU and/or need for performance.","archived":false,"fork":false,"pushed_at":"2024-06-03T22:16:55.000Z","size":62,"stargazers_count":68,"open_issues_count":0,"forks_count":30,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-03-25T03:24:46.260Z","etag":null,"topics":["c","cpp","embedded","kalman-filter","libfixmath","libfixmatrix","signal-processing"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sunsided.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-01-15T21:31:58.000Z","updated_at":"2024-12-15T05:57:55.000Z","dependencies_parsed_at":"2022-09-01T12:41:06.294Z","dependency_job_id":null,"html_url":"https://github.com/sunsided/libfixkalman","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunsided%2Flibfixkalman","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunsided%2Flibfixkalman/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunsided%2Flibfixkalman/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunsided%2Flibfixkalman/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sunsided","download_url":"https://codeload.github.com/sunsided/libfixkalman/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248346255,"owners_count":21088426,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","cpp","embedded","kalman-filter","libfixmath","libfixmatrix","signal-processing"],"created_at":"2024-08-01T15:00:40.671Z","updated_at":"2025-04-11T05:21:27.525Z","avatar_url":"https://github.com/sunsided.png","language":"C","funding_links":[],"categories":["C","Code"],"sub_categories":["C"],"readme":".. image:: https://raw.githubusercontent.com/sunsided/libfixkalman/static/kalman.png\n   :align: right\n\nFixed point Kalman filter library\n=================================\n\nlibfixkalman is a Kalman filter computation library for microcontrollers.\nIt is based on the libfixmatrix_ and libfixmath_ libraries, which use 16.16 bit fixed point values.\nThe main focus is processors without an FPU, such as ARM Cortex-M0 or M3.\n\nA 🦀 Rust variant, albeit not a direct port, is available at `sunsided/minikalman-rs`_.\n\n----\n\nMatrix inversion in the correction step is implemented using Cholesky decomposition and an optimized\ninversion algorithm ported from EJML_.\n\nSee `function reference`_ for further details and `example_gravity.c`_ for example code.\n\n\n.. _libfixmath: http://code.google.com/p/libfixmath/\n.. _libfixmatrix: https://github.com/PetteriAimonen/libfixmatrix\n.. _EJML: https://code.google.com/p/efficient-java-matrix-library/\n.. _function reference: https://github.com/sunsided/libfixkalman/blob/master/FUNCTIONS.rst\n.. _`example_gravity.c`: https://github.com/sunsided/libfixkalman/blob/master/example_gravity.c\n.. `sunsided/minikalman-rs`: https://github.com/sunsided/minikalman-rs\n\nconan.io\n--------\n\nThis 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::\n\n    conan test_package --build\n\nIn general, to reference the library you'd provide a ``conanfile.txt`` with the following content::\n\n    [requires]\n    libfixkalman/20161008@sunside/stable\n\nwhich 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::\n\n    conan install\n\nor::\n\n    conan install --build\n\nto obtain all required references.\n\n.. _`conan.io`: https://conan.io/\n.. _`this package`: https://conan.io/source/libfixkalman/20161008/sunside/stable\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsunsided%2Flibfixkalman","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsunsided%2Flibfixkalman","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsunsided%2Flibfixkalman/lists"}