Skip to content

FusionCore

  • Software
  • Navigation and mapping
  • Library

A sensor fusion filter for outdoor wheeled ground robots that keep working when GPS drops out, fusing IMU, wheel encoders, GPS and visual SLAM at 100 Hz.

Source on GitHub: github.com/manankharwar/fusioncore (opens in a new tab). Facts read at commit ec593f2 (opens in a new tab).

Licenses

Code
Apache-2.0 (opens in a new tab)

Read by Robotheca from LICENSE (opens in a new tab) (Apache-2.0) at commit ec593f2 (opens in a new tab), on 22 Oct 2026.

Commercial use
Yes

What it does

  • Estimates pose with a 23-state unscented Kalman filter that uses a declared platform profile to skip states a wheeled robot cannot observe.
  • Needs only two numbers from the IMU datasheet for noise settings, with adaptive estimators handling the rest.
  • Reports why each GPS fix was accepted or rejected and publishes filter health, including heading source and uncertainty.
  • Includes a tool that inspects a rosbag for estimation-setup problems without requiring ground truth.
  • Can convert an existing robot_localization configuration into its own format, flagging anything that does not map cleanly.
  • The filter core is a plain C++ library with no ROS dependency; a separate ROS 2 wrapper is provided.

Written by Robotheca from the project's README (opens in a new tab) at commit ec593f2.

Getting started

Difficulty
Intermediate
Hardware it needs, as the project states it
Runs on a Raspberry Pi 4 in a Release build with well under 1 ms per cycle; the same source builds for ARM and x86 through Eigen. No GPU is mentioned. Targets ROS 2 Jazzy and Humble, and Docker is offered as an alternative.

Maintenance

Status
Active: a commit in the last 90 days
Newest commit
22 Oct 2026 on main
Latest release
0.4.0 (15 Sept 2026)

Checked on GitHub on 22 Oct 2026.

Robots that can run it

No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.

Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.