FusionCore: ROS 2 sensor fusion (IMU and GPS and encoders)

· coding · Source ↗

TLDR

  • ROS 2 UKF sensor fusion SDK combining IMU, wheel encoders, and GPS with ECEF-native fusion, adaptive noise covariance, and zero manual tuning.

Key Takeaways

  • Fills a real ROS 2 gap: robot_localization has no ECEF GPS or IMU bias estimation; fuse has no RTK quality gating as of early 2026.
  • NCLT dataset benchmarks: FusionCore wins 5 of 6 sequences vs RL-EKF; RL-UKF diverges with NaN on all six sequences.
  • 22D quaternion UKF state tracks gyro and accel biases; chi-squared outlier gating applied per-sensor with GPS fix-quality gating (GPS/DGPS/RTK_FLOAT/RTK_FIXED).
  • Supports dual antenna heading, lever arm correction with observability guard, ZUPT while stationary, and a ~/reset service that reinitializes without restarting the node.
  • Apache 2.0, native ROS 2 Jazzy (not a ROS 1 port), 39 tests passing, per-sensor SensorHealth diagnostics at 1 Hz.

Hacker News Comment Review

  • The one technical commenter pointed to WOLF as a competing pluggable sensor fusion framework worth evaluating before adopting FusionCore.
  • The README’s tone drew skepticism about AI authorship, which may affect trust in the benchmark methodology and claimed results.
  • The remaining discussion is thin; one commenter dismissed the project based on ROS aversion rather than evaluating the fusion logic.

Notable Comments

  • @jeremysalwen: flags WOLF framework as a promising pluggable alternative and calls the README “obviously AI generated.”

Original | Discuss on HN