Back to browse
GitHub Repository

ROS 2 sensor fusion SDK: UKF, 3D native, proper GNSS, zero manual tuning. Apache 2.0.

259 starsC++

FusionCore: ROS 2 sensor fusion that outperforms robot_localization

by kharwarm·Apr 28, 2026·11 points·2 comments

AI Analysis

●●●BangerBig BrainNiche Gem

Beats robot_localization on 5 of 6 benchmarks with zero manual tuning.

Strengths
  • Native ECEF GPS handling eliminates UTM zone boundary issues.
  • Adaptive noise covariance and chi-squared outlier gating are genuinely clever.
Weaknesses
  • Fails badly on one sequence with degraded GPS — needs more robustness.
  • ROS 2 niche limits broader appeal despite technical excellence.
Category
Target Audience

Robotics engineers, ROS 2 developers

Similar To

robot_localization · fuse

Post Description

I built sensor fusion for a mobile robot and reached for robot_localization like everyone does. After spending too long fighting navsat_transform, UTM zone boundaries, and YAML covariance tuning, I wrote my own.

FusionCore is a 22 state UKF that fuses IMU, wheel encoders, and GPS in ECEF directly (no coordinate projection, no extra node). It estimates IMU bias, adapts its noise covariance automatically from the innovation sequence, and gates outliers with a chi squared test on every sensor.

I benchmarked it against robot_localization EKF on 6 sequences from the NCLT public dataset (University of Michigan, real robot, real GPS, RTK ground truth). It wins 5 of 6. On the 6th sequence (fall, degraded GPS over a long period) it loses badly. RL UKF diverged to NaN on all six.

Configs, methodology, and full reproduce instructions are in the benchmarks/ folder.

Similar Projects