Search arXivSearch

arXiv · 2607.09947

A Numerically-Robust ROS 2 Port of iG-LIO: Diagnosing and Fixing Toolchain-Induced Failures in Incremental GICP LiDAR-Inertial Odometry

Abstract

iG-LIO is a tightly-coupled LiDAR-inertial odometry system fusing generalized-ICP and point-to-plane constraints in an iterated error-state Kalman filter over an incremental voxel map. We report an open-source ROS 2 Jazzy port of the original ROS 1 implementation and, more importantly, the diagnosis of environment-induced numerical failures that appear only after the port: a mechanically faithful migration -- estimation mathematics left unchanged -- compiled and ran, yet diverged with NaN internal values. Both causes trace to the modern ROS 2 toolchain, not the algorithm: a Quality-of-Service (QoS) mismatch that silently drops and reorders IMU samples, and an uninitialized parallel-reduce accumulator arising from the oneTBB + Eigen combination shipped with current distributions. We further correct Ouster point-field parsing to ensure correct point cloud undistortion with newer Ouster revisions, add Velodyne Velarray M1600 support, provide both a compile-time-gated Livox CustomMsg path and a driver-free path for Livox sensors publishing standard PointCloud2 (e.g. Mid-360), and expose the runtime via YAML. The result has been validated in an Ouster OS0 Rev7, an Ouster OS1 Rev 7, and a Livox MID-360. This report is a citable reference for the port itself, not a claim on the underlying algorithm [1]. The ROS 2 port of iG-LIO described in this document can be found at https://github.com/Forestry-Robotics-UC/ig_lio/tree/ros2-jazzy.

Explore related subjects

Keep this discovery

Explore connections, maps & timelines

BibTeXRIS

Afonso E. Carvalho, David Portugal, Paulo Peixoto. 2026-07-10. A Numerically-Robust ROS 2 Port of iG-LIO: Diagnosing and Fixing Toolchain-Induced Failures in Incremental GICP LiDAR-Inertial Odometry. https://arxiv.org/abs/2607.09947

Cite the original work for its findings. Save a collection to share your selection of sources.

KEEP EXPLORING

Related papers

Highly-Efficient Differentiable Simulation for Robotics

Robotics simulators have improved significantly in computational speed and scalability, enabling them to generate years of simulated data for complex systems in minutes or hours. Despite these advances, efficiently and accurately computing simulation derivatives remains an open challenge. Addressing this would accelerate the convergence of reinforcement learning and trajectory optimization algorithms, particularly for contact-rich problems. This paper introduces a unifying framework for robotic simulation that accounts for all factors, including dynamics, collisions, and friction. The resulting algorithm computes analytical derivatives of the simulation by implicit differentiation, explicitly handling the intrinsic non-smoothness of the collision and frictional stages while exploiting the sparsity induced by the multi-body structure. Benchmark results demonstrate state-of-the-art performance, with timings ranging from $5\,μ$s for a 7-dof manipulator to $95\,μ$s for a 36-dof humanoid, an improvement of at least two orders of magnitude over alternative methods. Implemented in C++, the code will be open-sourced after the review process to support applications such as simulation-driven learning and real-time control.

cs.RO

GeCCo -- a Generalist Contact-Conditioned Policy for Loco-Manipulation Skills on Legged Robots

Most modern approaches to quadruped locomotion focus on using Deep Reinforcement Learning (DRL) to learn policies from scratch, in an end-to-end manner. Such methods often fail to scale, as every new problem or application requires time-consuming and iterative reward definition and tuning. We present Generalist Contact-Conditioned Policy (GeCCo) --- a low-level policy trained with Deep Reinforcement Learning that is capable of tracking arbitrary contact points with a quadruped robot. We shift from task-specific end-to-end learning to a modular hierarchy in which a single planner-agnostic, contact-conditioned tracking policy serves as a robust interface between planning and control. By maintaining stable contact execution under dynamic uncertainty and planner mismatch, the policy enables high-level planners (e.g., handcrafted, learned, or optimization-based) to be composed and swapped without retraining. We demonstrate the scalability and robustness of our method by evaluating on a wide range of locomotion and manipulation tasks in a common framework and under a single generalist policy. These include a variety of gaits, traversing complex terrains (e.g., stairs and slopes) as well as previously unseen stepping-stones and narrow beams, and interacting with objects (e.g., pressing a button, pushing a barrel). Our framework acquires new behaviors more efficiently, simply by combining a task-specific high-level contact planner and the pre-trained generalist policy. Project website: https://vassil-atn.github.io/gecco.github.io

cs.RO

ERUPT: An Open Toolkit for Interfacing with Robot Motion Planners in Extended Reality

We present the Extended Reality Universal Planning Toolkit (ERUPT), an extended reality (XR) system for interactive motion planning. This paper serves to introduce our open-source system to others who can use it as a base to develop immersive robot interaction applications. Our system allows users to create and dynamically reconfigure environments while they plan robot paths. ERUPT uses XR to provide a broad range of natural interaction capabilities, allowing users to grab and adjust objects in the environment similar to interaction in the real world, rather than using a mouse and keyboard with the scene projected onto a 2D computer screen. Our system integrates with MoveIt, a manipulation planning framework, allowing users to send motion planning requests and visualize the resulting robot paths in virtual or augmented reality. We provide a broad range of interaction modalities, allowing users to modify objects in the environment and interact with a virtual robot. Our system allows operators to visualize robot motions, ensuring desired behavior as it moves throughout the environment, without risk of collisions within a virtual space, and to then deploy planned paths on physical robots in the real world. Code can be found at https://github.com/parasollab/erupt.

cs.RO