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

· devtools coding open-source · Source ↗

TLDR

  • ROS 2 sensor fusion SDK using a 22D UKF to combine IMU, wheel encoders, and GPS with adaptive noise covariance and no manual tuning. Apache 2.0.

Key Takeaways

  • Fills a real gap: robot_localization lacks ECEF GPS fusion and IMU bias estimation; its designated replacement fuse has no ECEF handling or RTK quality gating as of early 2026.
  • NCLT benchmark: FusionCore wins 5 of 6 sequences against robot_localization EKF; robot_localization UKF diverges with NaN on all six sequences.
  • Chi-squared outlier gating on all sensors plus GPS fix-quality tiers (GPS / DGPS / RTK_FLOAT / RTK_FIXED) replace the blunt mahalanobis_threshold knob in robot_localization.
  • ZUPT auto-suppresses velocity drift when stationary; lever arm correction activates only when heading is independently validated; filter reset service clears GPS reference without a node restart.
  • Headless install (Raspberry Pi, server) works cleanly: add COLCON_IGNORE to skip the Gazebo package, which otherwise pulls in a large GUI dependency chain.

Hacker News Comment Review

  • No substantive HN discussion yet.

Original | Discuss on HN