Commit Graph
1897 Commits
Author SHA1 Message Date
matlabbe cb2117f1ed fix(rtabmap_slam): publish goal reached when built without nav2_msgs 2026-10-01 19:14:28 -07:00
matlabbe 5c82ffc2c9 bump version 0.23.13 2026-10-01 01:47:07 -07:00
matlabbe 5207dab7c2 rtabmap_slam tests and doc (#1460)
* 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()
2026-09-28 13:09:51 -07:00
853a434fe9 fix(rtabmap_slam): release scan mutex on conversion failure (#1459)
* 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]>
2026-09-22 17:50:04 -07:00
matlabbe 335d155768 CI: removed QEMU, use ubuntu arm runners (#1458)
* CI: removed QEMU, use ubuntu arm runners

* set back -j2

* executor sequential
2026-09-22 17:04:35 -07:00
matlabbeandmathieu86 11edc01d6a rtabmap_odom tests and doc (#1456)
* 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]>
2026-09-21 17:02:45 -07:00
matlabbe 73c98f87a8 rtabmap_python tests and doc (#1455) 2026-09-13 12:20:17 -07:00
matlabbe 5062bf0614 rtabmap_sync tests and doc (#1454)
* rtabmap_sync tests and doc

* Added some diagrams

* cleanup some diagrams

* fixing running tests in parallels
2026-09-13 11:25:32 -07:00
matlabbe 61edb4ee85 rtabmap_util tests and doc (#1450)
* Initial tests

* more tests

* More in-depth deskew() testing

* slightly less verbose clamping corruption warning

* added tf buffer related tests

* added remaining tests

* Added rosdoc2, improve tests when we require sync of odom stamp and sensor stamp

* cleanup doc

* fixing ci

* rtabmap_util tests and doc

* Added db_player tests

* Added MapsManager tests

* Added map_assembler tests

* Documenting node first draft

* relative links

* Fixed british->usa english style. Reviewed all md files.

* added link to install ros1

* updated badges

* added Iron

* added ubuntu

* added codecov

* updated coverage ci

* fixing rosdep

* updated ci cov job

* ci bump

* fixing cov ci

* small doc cleanup
2026-09-07 21:23:22 -07:00
matlabbe f77dda2b58 rtabmap_conversions tests and doc (#1449)
* Initial tests

* more tests

* More in-depth deskew() testing

* slightly less verbose clamping corruption warning

* added tf buffer related tests

* added remaining tests

* Added rosdoc2, improve tests when we require sync of odom stamp and sensor stamp

* cleanup doc

* fixing ci
2026-09-06 17:23:42 -07:00
matlabbe 1e6edb4579 Updated 2d scan turtlebot3 demo with deskewing option 2026-08-26 20:26:20 -07:00
matlabbe 16f6f05d70 map_assembler : cleanup nodes_ from latest node if it has been removed 2026-08-09 17:06:23 -07:00
matlabbe 0b60e52914 Fixing TransformBroadcaster *this on rolling (#1443) 2026-08-07 14:03:56 -07:00
matlabbe 99436c6e87 CI not required probes for flaky builds (docker humble-latest) 2026-08-07 11:34:47 -07:00
matlabbe 8f35accc41 rolling ci: skip not available dep packages 2026-08-07 11:21:02 -07:00
matlabbe 65de131a81 fixing rolling ci apt source, changed name of docker workflow on ros2 to docker-ros2 2026-08-07 11:11:30 -07:00
matlabbe accefde0fb CI: added dispatch_workflow for ros2 jobs 2026-08-06 15:02:30 -07:00
matlabbe 48d1ed1204 Merge branch 'master' of github.com:introlab/rtabmap_ros into ros2 2026-08-06 14:59:13 -07:00
matlabbe 38b45dca16 Update for rtabmap 0.23.10 (#1442)
* Update for rtabmap 0.23.10

* fixing min version

* Fixed PythonInterface compilation error

* CI Added workflow_dispatch
2026-08-06 14:50:22 -07:00
matlabbe 2eef2b3231 Lyrical support (#1433)
* 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
2026-06-21 12:55:28 -07:00
matlabbe 01711324b7 Disabling lyrical from ros2, wil lbe re-added by lyrical_support branch 2026-06-14 19:16:12 -07:00
matlabbe 6379a9c439 Added lyrical ci 2026-06-14 18:55:07 -07:00
matlabbe f74f5dec9f Merge branch 'master' of github.com:introlab/rtabmap_ros into ros2 2026-06-14 16:50:27 -07:00
matlabbe a2b3747120 Added some composition examples 2026-06-13 21:44:39 -07:00
matlabbe b51ba8798b Fixed output rwo_step when inputs are organized 2026-05-26 01:09:34 +00:00
matlabbe a6921845b6 ros1: Migrating tf to tf2 (#1425)
* 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
2026-05-23 15:08:21 -07:00
aec4f91f61 demo(turtlebot3): FusionCore + icp_odometry feedback loop (issue #1418 Option A) (#1419)
* 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]>
2026-05-13 22:26:25 -07:00
matlabbe d9cd332c53 Removing ament_target_dependencies (#1424)
* Removing ament_target_dependencies

* always update ros

* fixing rtabmap_costmap_plugins

* rtabmap rviz plugins Qt5

* fixing qt5 private, nav2 costmap 2d layers

* backward compatibility humble

* backward comaptibility pre lyrical

* fixing rolling build

* should work on rolling now

* fixed odom

* auto cancel previous jobs
2026-05-06 22:56:41 -07:00
matlabbe 8871f934b5 Fixing turtlebot3 demos on Jazzy (#1422)
* Fixing turtlebot3 demos on Jazzy

* Updated humble

* Working turtlebot3 demos on humble and jazzy
2026-05-05 22:23:02 -07:00
matlabbe 45375bb3c0 Demo multi-session: updated Kp/BadSignRatio 2026-04-19 18:23:34 -07:00
matlabbe 7c474d8522 Merge branch 'master' of github.com:introlab/rtabmap_ros into ros2 2026-04-19 18:22:53 -07:00
matlabbe f81536f508 typo 2026-04-20 01:22:12 +00:00
matlabbe c590afe069 Merge branch 'master' of github.com:introlab/rtabmap_ros into ros2 2026-04-19 16:11:54 -07:00
matlabbe 08e7d63678 Support upstream 0.23.5 2026-04-19 23:07:07 +00:00
matlabbe fb27ac0eda Fixed not all CoreWrapper's parameters updated when parameters callback is called 2026-04-18 16:22:50 -07:00
matlabbe 45c586c379 Added fatal errors on cv exceptions caused by possible multiple installed opencv versions 2026-04-18 14:45:56 -07:00
matlabbe 3bc26e1a41 Updated euroc example to use rectify_node instead of image_proc (#1404) 2026-03-21 14:06:02 -07:00
matlabbe 2fb3923212 merged master->ros2 (new multi_rgbd_inertial_dataset.launch.py example), fixed rtabmap_viz error on exit, fixed default name of rgbdx_sync node, fixed yaml_to_camera_info.py exit exception 2026-02-21 18:06:19 -08:00
matlabbe 95004363b4 multi_rgbd_inertial_dataset.launch: record intermediate poses 2026-02-19 19:51:33 -08:00
matlabbe 9d7fb44723 Added multi_rgbd_inertial_dataset.launch example (https://github.com/introlab/rtabmap/issues/1654). Also fixed dev container not showing GUI apps. 2026-02-19 19:18:11 -08:00
matlabbe 6ed02b65e4 Added new depthai examples (color and stereo) 2026-02-08 14:54:33 -08:00
matlabbe 3283309e76 Added realsense D435i combined IR stereo VO and RGB-D SLAM example 2026-02-08 12:10:47 -08:00
matlabbe 9d41d998fd Merge branch 'master' of github.com:introlab/rtabmap_ros into ros2 2026-01-31 12:14:05 -08:00
matlabbe 9c003ccae5 Fixed loadDatabase and backup services fatal error when database is read-only 2026-01-30 22:03:31 +00:00
matlabbe 8fbf9f7385 Merge branch 'master' of github.com:introlab/rtabmap_ros into ros2 2026-01-22 16:04:02 -08:00
matlabbe 758b7fa4cd read-only support (#1397) 2026-01-22 16:00:40 -08:00
matlabbe d63accf181 removed --udebug arg in a turtlebot3 demo launch 2025-12-20 13:06:23 -08:00
matlabbe 64fa848dba dbplayer: fixed camera index suffix added when there is only a single stereo camera 2025-12-03 21:43:29 -08:00
matlabbe 001ed0d512 Fixing duplicated code added from that merge commit https://github.com/introlab/rtabmap_ros/commit/c204ed61427475f028fe2cd435b31cd2cbcfc1fd 2025-12-02 21:11:25 -08:00
matlabbe 4b970c2ca0 Merge branch 'master' of github.com:introlab/rtabmap_ros into ros2 2025-11-11 18:32:18 -08:00