Commit Graph
86 Commits
Author SHA1 Message Date
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 0b60e52914 Fixing TransformBroadcaster *this on rolling (#1443) 2026-08-07 14:03:56 -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 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
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 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 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 4b970c2ca0 Merge branch 'master' of github.com:introlab/rtabmap_ros into ros2 2025-11-11 18:32:18 -08:00
matlabbe 2f258bdae0 Plumbing env_sensor topic to rtabmap 2025-11-11 23:56:08 +00:00
matlabbe 3b5a4ed675 Added error messages when subscribe_odom and odom_frame_id are both not set. rgb_sync: added option "fill_empty_depth" to add fake empty depth for monocular cameras. See also #1363 2025-10-18 13:59:55 -07:00
matlabbe 1a7403dbf6 merged master->ros2 2025-09-25 01:38:26 -07:00
matlabbeandmathieu86 46f4443baa Stale inputs detection (#1358)
* Added stale_update_detection parameter to detect if upstream is stale for too long, trigger new map

* On too small guess motion, still publish odom topic along tf

* Added parameters when guess odom topic is sent

* fixed stale disabled logic

* Added info when odometry update is skipped.

* Making vo publishing the expected output data even if odometry update was skip by not enough motion

* fixed skipping odom

* refactored tooOldPreviousData to work with guess

* renamed stale_update_detection to staleness_factor

* cleanup

* reverting a change

---------

Co-authored-by: mathieu86 <[email protected]>
2025-09-23 14:10:57 -07:00
matlabbe d23e3eef01 Resolving image_transport hints support (#1181) (#1348)
* Resolving image_transport hints support (#1181)

* updated dev container to be able to install packages, updated comment
2025-08-09 15:05:08 -07:00
matlabbe ca6a2c2ff7 bump 0.22.1 2025-07-12 17:18:44 -07:00
matlabbe 8d5af87d17 Fixed compilation errors on rolling (backward compatible for Humble) 2025-07-12 15:18:39 -07:00
matlabbe 42142de82c merged master->ros2 2025-07-04 15:02:12 -07:00
matlabbe 0ba59996e6 refactored time jump detection 2025-07-04 22:01:22 +00:00
matlabbe 3cc9db8f87 Odom reset on time jump in the past (#1333)
* Odom reset on time jump

* Adding more logs to debug

* refactored

* dont skip frame on clock jump

* Making clock check independent of the topic stamp check

* fixed post check

* Making diagnostic more robust to time jump

* Added node name to warning

* make sync warning msg working in case of time jump

* not need to reset timer

* reset timer

* timer auto reset already

* typo

* Added more time checks to make sure we don't republish a tf frame with stamp from a topic in the future

* dont send tf if time jump happened while processing

* fixed errors

* addressing comments

* fixing time comparison
2025-07-03 17:50:38 -07:00
matlabbe aa7f42a57e Adding aruco msgs input support (#1334)
* Adding aruco msgs input support

* updated topic names
2025-06-28 16:46:10 -07:00
matlabbe d336369ca4 Debug builtin interfaces issue (#1328)
* debugging builtin_interfaces issue on arm64

* add logh

* cmake debug

* show arch

* refactored

* explicit find_library

* explicitly search builtin_interfaces__rosidl_generator_c

* fixing in rtabmap_slam

* rtabmap_sync

* openssl error

* rtabmap odom

* rtabmap_viz

* adding missing deps instead

* testing on all distros

* limit fix to humble-aarch64 build

* remvoed debug code

* Running aarch64 workaround for all distros

* message_filters error

* added cmake --debug-find

* using 2 threads

* reseting ros2 ci
2025-06-16 19:20:21 -07:00
matlabbe 7472b019f9 Adding missing ros_enironment dep for buildfarm 2025-06-10 11:03:57 -07:00
matlabbe a74c3acda5 Added apriltag_msgs as package dependency 2025-06-08 19:54:30 -07:00
matlabbe 945101697a bump version 0.22.0 2025-06-08 16:01:18 -07:00
matlabbe 29b4734cd7 merged master->ros2 2025-06-08 15:45:43 -07:00
matlabbe 50fe38ef6c Adding ROS2 Kilted to CI (#1322)
* Adding ROS2 Kilted to CI

* updated ros2 ci workflow

* updated version of action-ros-ci

* Updated dev containers, fixed kilted build

* Added git autocompletion
2025-06-08 15:01:07 -07:00
matlabbe b6584b0a10 Fixed #1320 2025-06-01 16:57:15 -07:00
matlabbe e9fa89110c load_database srv: fixed Odom parameters missing warnings, fixed warning when existing parameters are the the same than loaded ones from new database. 2025-05-06 16:14:58 -07:00
matlabbe f122dbace5 bump 0.21.13 2025-04-27 15:22:34 -07:00
matlabbe e661abb884 GPS and global pose async topics buffered to get more accuratly the closest value to current update stamp in case there is significant delay. 2025-03-30 14:15:09 -07:00
matlabbe 8c1513bc3b cherry pick https://github.com/introlab/rtabmap_ros/commit/70ddb3fc839394a5b440fee56f1877c508d6b9ea 2025-03-22 21:14:47 -07:00
matlabbe 70ddb3fc83 Fixed occupancy grid reset in localization mode when we update parameters live, losing optimized map if we had one. 2025-03-22 21:09:28 -07:00
matlabbe 5e22c31b7f Merge branch 'master' of github.com:introlab/rtabmap_ros into ros2 2025-03-01 16:18:10 -08:00
matlabbe c4a596f800 Support any frame_id in initialpose #1273 2025-03-01 15:50:39 -08:00
matlabbe a4dafb6ba5 bump 0.21.10 (merged master) 2025-02-12 19:27:01 -08:00
matlabbe 59390d8199 bump 0.21.10 2025-02-12 19:25:32 -08:00
matlabbe 856b2340b9 Added delete_db_on_start parameter to be usable with ComposableNode (#1058). 2025-02-03 20:59:28 -08:00
matlabbe 7ca3a95899 bump 0.21.9 remaining packages 2024-12-01 10:50:39 -08:00
matlabbe 3f6adad463 ROS2 various QOL updates (preparing new binary release) (#1225)
* Updating examples and README

* updated main readme

* odom: Added always_check_imu_tf parameter. sync: increased default sync_queue_size from 2 to 5 (to be more flexible to different hardware), added input and output diagnostics. rtabmap_viz: fixed node with same name redeclared warning.

* update readme

* Added husky demo

* converted demo_robot_mapping.launch to ros2

* Converted stereo_outdoor demo from ros1 to ros2

* Converted multi-session demo to ros2

* Converted demo_find_object launch to ros2

* renamed files

* uniformized default qos, increased sync_queue_size default to 10

* Added vlp16 + imu example

* Added husky 3D lidar demos

* moved demos in subdir

* Added vlp16+zed example

* rtabmap_viz: ignore odom update if tf not ready when not using topic (to avoid showing red screen). Added champ VSLAM demo.

* forwarded camera_model arg for zed examples, removed qos for turtlebot4 demo

* pointcloud_to_depthimage: added more error logs, removed output camera_info published twice and match ros1 namespaces

* Created two base general examples for 3D lidar usage, then create hardware specific examples on top of them.

* Added isaac sim demo

* Final update of all demos. Fixed MapCloud rviz plugin crashing when floor/ceiling filtering is used and resulting cloud is empty.

* Fixed 2d scan deskewing output frame, moved nav2 params under "params" folder, added number of topics processed/dropped for odometry, added icp_odometry option for turtlebot3 scan-only demo.

* rtabmap_demos: added README with examples

* Added TOC

* bump version to 0.21.9
2024-11-30 17:28:16 -08:00
matlabbe ad97f56d0b Multithreaded rtabmap node (#1214)
* Multi-threaded rtabmap node

* Moved data sync logic inside CoreWrapper to process odometry topics outside processing thread

* updated commend

* re-enabled jazzy

* disabled jazzy for this mr

* Added async callbackgroup for imu and landmark topics

* Making all shared variables thread-safe
2024-10-15 21:00:35 -07:00
matlabbe 28f997477a Fixed #1207 2024-09-09 23:26:06 -07:00
matlabbeandBorong Yuan c956e3780f Fixing topic sync lagging and delay issues, more examples (depthai, zed) (#1206)
* Fixed odometry latency

* Fixed node ID=0 issues as msgs may not have seq. (#1202)

(cherry picked from commit 097cab0667)

* Odom: removed long processing from ros callbacks (decreasing delay, also making delay independent of the message filters topic_queue_size and sync_queue_size parameters)

* Changed a log from info->debug

* Changed a log from info->debug

* Updated default topic and sync queue_size inside nodes. Exposing topic and sync queue size params in warning when cannot synchronize. Added zed and depthai examples. Odom: Fixed imu callback group, added multi-threaded executors for all odometry nodes.

* fixed merge

* Include everything needed in example launch files for simple launch. Small fixes.

---------

Co-authored-by: Borong Yuan <[email protected]>
2024-09-04 00:46:44 -07:00