* rtabmap_slam tests and doc
* another round of review of the doc
* Disable by default use_intra_process_comms on latched/transient publishers
* Added test to catch not unlocked mutex from early error exit
* updated coverage settings
* Using UScopeMutex on all tryLock()
* fix(rtabmap_slam): release scan mutex on conversion failure
* test(rtabmap_slam): cover scan transform recovery in native tests
Replace the standalone reproducer with registered C++ GoogleTests for 2D and 3D scan recovery. Use real ROS inputs, separate DDS domains and bounded timeouts, and include rtabmap_slam in supported CI and coverage jobs.
Validated on Jazzy with RTAB-Map core 9ed83a7: both negative controls fail map recovery without the unlocks; both pass with the fix, followed by five repeated runs per case (10/10 passed). Broader distro CI has not been run locally.
* chore(rtabmap_slam): keep upstream submission focused on mutex fix
Remove the regression test and CI integration from the proposed diff. Retain the reproducer in commit 254ca3b so it can be offered separately with the validation evidence.
---------
Co-authored-by: Matthew Kotara <[email protected]>
Co-authored-by: matlabbe <[email protected]>
* rtabmap_odom tests and doc
* opengv note
* added ci checks or humble-latest flaky dep cmake errors
* Added real data tests for rgbd_odom and stereo_odom
* added real data for icp_odometry's deskewing test
* fixing json cmake error on lyrical/rolling
* test 2d icp odom deskewing branch
* first review of existing OdometryROS tests
* testing with imu used as guess
* tested imu arrivals sync
* Fixed odom reset on right pose when guess frame id is used
* fixing header errors in ci >=lyrical
* Added support for input rgbd_image topic with features for odom, added multicam rgbd_odometry test
* Added stereo odom support for features-only frames. Added multicam stereo tests.
* forcing latest rtabmap version
* updated OdometryROS API
* ci: dont build non-latest docker in pull requests
* splitting docker jobs
* doc edit
* Making publish_null_when_lost:=false continous when guess is provided (using guess covariance when we cannot register yet)
* updated stereo doc
* ficing rolling ci (rviz Ogre header)
* Added test coverage of alll rgbd_image callbacks
* fixing rolling ci
* making docker ci build/run the tests on pull requests
* fixing ros2 ci testing
* improved sync callback coverage
* improving stereo_odometry test coverage
* improved icp_odometry test coverage
* lyrical voxel_grid ptr error
* make multicam tests working as well without opengv
* removing deps of missing packages on rolling
* PCL empty cloud conversion compiler errors fix
* fixing icp_odometry test failure on ci witohut libpointmatcher
* fixing nav2 costmap plugin build on lyrical
* joining thread when exiting
* updating icp test to work the same on pcl 1.15 (lyrical)
* Fix parallel tests seg fault
---------
Co-authored-by: mathieu86 <[email protected]>
* Lyrical support
* removed dep not available on lyrical
* updated docker lyrcical
* making cmake less verbose, disabled tests on rtabmap_python
* cleanup not used tests in rtabmap_python
* addressing some lyrical deprecated warnings
* cancel pr jobs on recommit
* small refactor
* disabled lyrical bin docker
* restored python test and fixed error
* trigger ci
* fixing docker lyrical
* disabled rtabmap_ros lyrical
* pytest
* fixing packages-skip
* bump 0.23.7
* Migrating tf to tf2
* Added ci action to test PR on ros1
* updated dev container with nvidia working
* backward compatibility with topics having frame_id with leading slash not allowed with tf2
* backward compatibility of leading slash for other tf2 buffers
* updated comment
* demo(turtlebot3): add FusionCore + icp_odometry feedback loop demo
Adds a TurtleBot3 Gazebo Harmonic demo (ref issue #1418 Option A) where
FusionCore (wheel + IMU UKF) and icp_odometry tighten each other in a
feedback loop: FusionCore's stable odom frame serves as the scan-match
initial guess via guess_frame_id, and the ICP result feeds back into
FusionCore as a second velocity source. rtabmap SLAM consumes the ICP
output for mapping/loop-closure. Nav2 uses /fusion/odom.
Files added:
launch/turtlebot3/fusioncore/turtlebot3_fusioncore_icp.launch.py
launch/turtlebot3/fusioncore/turtlebot3_sim_fusioncore_icp_demo.launch.py
launch/turtlebot3/fusioncore/README.md
params/fusioncore_tb3.yaml
params/fusioncore_tb3_bridge.yaml (TF-conflict-free bridge)
params/turtlebot3_fusioncore_icp_nav2_params.yaml
* demo(turtlebot3): add FusionCore demo entry to rtabmap_demos README
* fix(fusioncore-demo): remove Odom/ResetCountdown from rtabmap, strip GPS params
* docs(demos): add FusionCore icp_odometry demo GIF to README
* fix(fusioncore-demo): add imu.frame_id override and docking_server params
* fix(fusioncore-demo): remove docking_server from nav2 params
* Fixing turtlebot3 demos on Jazzy
* Updated humble
* Working turtlebot3 demos on humble and jazzy
* Fixed Twist->TwistStamped. Fixed rviz2 crashing because missing docking server
* demo(turtlebot3): add FusionCore + icp_odometry feedback loop demo
Adds a TurtleBot3 Gazebo Harmonic demo (ref issue #1418 Option A) where
FusionCore (wheel + IMU UKF) and icp_odometry tighten each other in a
feedback loop: FusionCore's stable odom frame serves as the scan-match
initial guess via guess_frame_id, and the ICP result feeds back into
FusionCore as a second velocity source. rtabmap SLAM consumes the ICP
output for mapping/loop-closure. Nav2 uses /fusion/odom.
Files added:
launch/turtlebot3/fusioncore/turtlebot3_fusioncore_icp.launch.py
launch/turtlebot3/fusioncore/turtlebot3_sim_fusioncore_icp_demo.launch.py
launch/turtlebot3/fusioncore/README.md
params/fusioncore_tb3.yaml
params/fusioncore_tb3_bridge.yaml (TF-conflict-free bridge)
params/turtlebot3_fusioncore_icp_nav2_params.yaml
* demo(turtlebot3): add FusionCore demo entry to rtabmap_demos README
* fix(fusioncore-demo): remove Odom/ResetCountdown from rtabmap, strip GPS params
* docs(demos): add FusionCore icp_odometry demo GIF to README
* fix(fusioncore-demo): add imu.frame_id override and docking_server params
* fix(fusioncore-demo): remove docking_server from nav2 params
* Fixing turtlebot3 demos on Jazzy
* Updated humble
* Fixed Twist->TwistStamped. Fixed rviz2 crashing because missing docking server
* fix(fusioncore-demo): tune IMU noise for Gazebo sim, add real-hardware comments
* docs(fusioncore-demo): add sim vs real hardware note to README
---------
Co-authored-by: manankharwar <[email protected]>
Co-authored-by: matlabbe <[email protected]>