Giter Club home page Giter Club logo

book_ros2's People

Contributors

fmrico avatar nrasulnrasul avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

book_ros2's Issues

Requesting hints for exercise question

Important!!!

  • I have checked that this issue/bug/fix/correction has not been already created before in open or closed issues.

Type of bug

  • A) Typo/error in Figure/text
  • B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

I was going through the exercise available for Chapter 4 - The TF system and would like to get some hints for the 1st question. I understood the question about subtracting current frame from previous frame but the problem is about how to get access to previous frame.

Additionally the code on page 78
odom2laser_msg = tf_buffer_.lookupTransform("odom", "base_laser_link", msg->header.stamp, rclcpp::Duration(200ms));

It doesn't work for humble. It gives the following error:
error: no matching function for call to ‘tf2::BufferCore::lookupTransform(const char [5], const char [16], const TimePoint&, rclcpp::Duration)’
Somehow lookupTransform() function is not working for me. I even referred the following.
https://docs.ros.org/en/humble/Tutorials/Intermediate/Tf2/Time-Travel-With-Tf2-Cpp.html

Fail to install missing packages with rosdep

Type of bug

  • A) Typo/error in Figure/text
  • B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

Fail to install missing packages whit rosdep, after entering the command "rosdep install --from-paths src --ignore-src -r -y" there are problems when creating the librealsense2-dkms module, and it stays in a loop deleting and creating the librealsense2-dkms folder and reporting an error and then returning an error saying that several repositories are missing to be installed.

A) Typo/Error Description

B) Bug Description

after using rosdep these are the last lines:

Deleting module version: 1.3.19
completely from the DKMS tree.

Done.
Loading new librealsense2-dkms-1.3.19 DKMS files...
Building for 5.14.0-1054-oem
Building initial module for 5.14.0-1054-oem
ERROR: Cannot create report: [Errno 17] File exists: '/var/crash/librealsense2-dkms.0.crash'
Error! Bad return status for module build on kernel: 5.14.0-1054-oem (x86_64)
Consult /var/lib/dkms/librealsense2-dkms/1.3.19/build/make.log for more information.
dpkg: error al procesar el paquete librealsense2-dkms (--configure):
el subproceso instalado paquete librealsense2-dkms script post-installation devolvió el código de salida de error 10
Se encontraron errores al procesar:
librealsense2-dkms
E: Sub-process /usr/bin/dpkg returned an error code (1)
executing command [sudo -H apt-get install -y ros-foxy-joint-state-publisher-gui]
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
El paquete indicado a continuación se instaló de forma automática y ya no es necesario.
libxmlb1
Utilice «sudo apt autoremove» para eliminarlo.
Se instalarán los siguientes paquetes adicionales:
ros-foxy-joint-state-publisher
Se instalarán los siguientes paquetes NUEVOS:
ros-foxy-joint-state-publisher ros-foxy-joint-state-publisher-gui
0 actualizados, 2 nuevos se instalarán, 0 para eliminar y 0 no actualizados.
1 no instalados del todo o eliminados.
Se necesita descargar 27,8 kB de archivos.
Se utilizarán 127 kB de espacio de disco adicional después de esta operación.
Des:1 http://packages.ros.org/ros2/ubuntu focal/main amd64 ros-foxy-joint-state-publisher amd64 2.2.0-1focal.20221012.233646 [14,3 kB]
Des:2 http://packages.ros.org/ros2/ubuntu focal/main amd64 ros-foxy-joint-state-publisher-gui amd64 2.2.0-1focal.20221013.004502 [13,5 kB]
Descargados 27,8 kB en 0s (69,0 kB/s)
Seleccionando el paquete ros-foxy-joint-state-publisher previamente no seleccionado.
(Leyendo la base de datos ... 543051 ficheros o directorios instalados actualmente.)
Preparando para desempaquetar .../ros-foxy-joint-state-publisher_2.2.0-1focal.20221012.233646_amd64.deb ...
Desempaquetando ros-foxy-joint-state-publisher (2.2.0-1focal.20221012.233646) ...
Seleccionando el paquete ros-foxy-joint-state-publisher-gui previamente no seleccionado.
Preparando para desempaquetar .../ros-foxy-joint-state-publisher-gui_2.2.0-1focal.20221013.004502_amd64.deb ...
Desempaquetando ros-foxy-joint-state-publisher-gui (2.2.0-1focal.20221013.004502) ...
Configurando ros-foxy-joint-state-publisher (2.2.0-1focal.20221012.233646) ...
Configurando ros-foxy-joint-state-publisher-gui (2.2.0-1focal.20221013.004502) ...
Configurando librealsense2-dkms (1.3.19-0ubuntu1) ...
Removing old librealsense2-dkms-1.3.19 DKMS files...

Deleting module version: 1.3.19
completely from the DKMS tree.

Done.
Loading new librealsense2-dkms-1.3.19 DKMS files...
Building for 5.14.0-1054-oem
Building initial module for 5.14.0-1054-oem
ERROR: Cannot create report: [Errno 17] File exists: '/var/crash/librealsense2-dkms.0.crash'
Error! Bad return status for module build on kernel: 5.14.0-1054-oem (x86_64)
Consult /var/lib/dkms/librealsense2-dkms/1.3.19/build/make.log for more information.
dpkg: error al procesar el paquete librealsense2-dkms (--configure):
el subproceso instalado paquete librealsense2-dkms script post-installation devolvió el código de salida de error 10
Se encontraron errores al procesar:
librealsense2-dkms
E: Sub-process /usr/bin/dpkg returned an error code (1)
ERROR: the following rosdeps failed to install
apt: command [sudo -H apt-get install -y ros-foxy-gazebo-plugins] failed
apt: command [sudo -H apt-get install -y ros-foxy-behaviortree-cpp-v3] failed
apt: command [sudo -H apt-get install -y ros-foxy-gazebo-msgs] failed
apt: command [sudo -H apt-get install -y ros-foxy-gazebo-ros] failed
apt: command [sudo -H apt-get install -y ros-foxy-realtime-tools] failed
apt: command [sudo -H apt-get install -y ros-foxy-gazebo-dev] failed
apt: command [sudo -H apt-get install -y ros-foxy-control-msgs] failed
apt: command [sudo -H apt-get install -y ros-foxy-control-toolbox] failed
apt: command [sudo -H apt-get install -y ros-foxy-vision-msgs] failed
apt: command [sudo -H apt-get install -y ros-foxy-joy-teleop] failed
apt: command [sudo -H apt-get install -y ros-foxy-nav2-msgs] failed
apt: command [sudo -H apt-get install -y ros-foxy-diagnostic-updater] failed
apt: command [sudo -H apt-get install -y ros-foxy-joint-state-publisher-gui] failed

how to reproduce

Steps to reproduce the behavior:

  1. Clone the foxy-devel repository
  2. Add sources with vcstool
  3. Execute 'rosdep install --from-paths src --ignore-src -r -y' in the bookros2_ws directory
  4. See error

Desktop:

  • OS: Ubuntu 20.04
  • ROS2 Distro= Foxy

[Bug/Lack of understanding] When running br2_tf2_detector, continuously fails because trying to retrieve future TF between odom and base_laser_link

  • [X ] I have checked that this issue/bug/fix/correction has not been already created before in open or closed issues.

Type of bug

  • A) Typo/error in Figure/text
  • [X ] B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

When running the improved obstacle monitor node, I get a continuous error saying that I am trying to retrieve a future transformation. This bit of code is notably different than the normal obstacle monitor in that when using lookupTransform, instead of using tf2::TimePointZero, we are using the stamped time from the laser scan that is passed into the scan_callback function itself.

I totally do not understand how the stamped time from the laser scanner msg could be asking us for a tf that is in the future. It would seem to me that any message that arrived would be either from the present moment, or the past, and would therefore be impossible to be 'in the future' from the lookupTransforms perspective. I know the message traffic is never as straight forward as I just stated, and maybe it has to do with the QoS settings between the simulated sensor and the node itself. However, if message traffic was sometimes being lossy, I would still expect to see at least SOME lookups going through. However, in Rviz2, I never see any arrows pointing to any objects, which seems to imply that my monitor never succeeds in looking up a tf, and subsequently never follows through on the core logic of the node. I'm still a beginner so I don't have a great grasp into why this would be occurring.

Screenshot

image

Proposal

I changed the request to use tf2::TimePointZero instead of the stamped time from the laser scanner msg and it resolved the issue. Once again not sure why this would be any different in terms of solving the issue.

B) Bug Description

(Remove section if not applicable)

how to reproduce

Steps to reproduce the behavior:

  1. Launch all 4 nodes exactly as pg 78-79 indicate with nothing changed from the original Repo (br2_tiago launch -> br2_tf2_detector detector_improved.launch.py -> teleop keyboard -> rviz2)
  2. Place an object such that the bot can actually detect something
  3. You should see continuous errors on the ImprovedMonitor where lookuptransform is trying to extrapolate a future tf

Expected behavior

Should just work as promised

Desktop (please complete the following information):

  • OS: Ubuntu 20.04
  • ROS2 Distro: Foxy

Thanks in advance!

[/scan_raw] does not appear to be published yet

Hello, when I execute br2_tiago (ros2 launch br2_tiago sim.launch.py) and then I try ros2 topic echo /scan_raw I got the error thar is not published.
I checked the list of topic (ros2 topic list) and the scan_raw is not present. Here is the log

launch.log

Any idea, thanks

/Jorge

slam_toolbox parameter renamed!

Important!!!

  • I have checked that this issue/bug/fix/correction has not been already created before in open or closed issues.

Type of bug

  • A) Typo/error in Figure/text
  • B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

A parameter from https://github.com/SteveMacenski/slam_toolbox online async launcher has been renamed in this PR: SteveMacenski/slam_toolbox#363

More details: ros-navigation/navigation2#2240

Typo/Error Description

In the slides, chapter 6, slide 59/62:

ros2 launch slam_toolbox online_async_launch.py params_file:=[File path] use_sim_time:=true

From mentioned PR onwards, this should be:

ros2 launch slam_toolbox online_async_launch.py slam_params_file:=[File path] use_sim_time:=true

Proposal

I am aware of a new edition of the book being written, so I understand this has been updated already. However the docs from this very repo are outdated in that regard, so maybe leave this issue open until the docs are updated. 😃

Desktop:

  • OS: distro
  • ROS2 Distro: distro

unable to build the bookros2_ws workspace

When attempting to build the workspace as described in chapter 1.1.3, I get the following output with errors.
I tried to downgrade the setuptools (pip install setuptools==58.2.0) as that resolved issues I had building the ROS2 tutorial examples in a ROS2 Humble "base" docker container on a RPi v4B. But that doesn't work here with ROS2 Humble "Desktop" installed on AMD64 Ubuntu Jammy machine.

Anything else I could try to successfully build the workspace ?

Thanks

~/bookros2_ws$ colcon build --symlink-install
Starting >>> launch_pal
Starting >>> pmb2_controller_configuration
Starting >>> pal_gripper_controller_configuration
Starting >>> hey5_description
Starting >>> pmb2_maps
Starting >>> urdf_test
Starting >>> pal_gazebo_worlds
Starting >>> br2_tracking_msgs
Starting >>> br2_basics
Starting >>> br2_bt_bumpgo
Starting >>> br2_bt_patrolling
Starting >>> br2_fsm_bumpgo_cpp
Starting >>> br2_fsm_bumpgo_py
Starting >>> br2_navigation
Starting >>> br2_tf2_detector
Starting >>> br2_tiago
Starting >>> br2_vff_avoidance
Starting >>> groot
--- stderr: br2_tracking_msgs                                                                             
Traceback (most recent call last):
  File "/opt/ros/humble/share/rosidl_generator_py/cmake/../../../lib/rosidl_generator_py/rosidl_generator_py", line 8, in <module>
    from rosidl_generator_py import generate_py
ImportError: cannot import name 'generate_py' from 'rosidl_generator_py' (/opt/ros/humble/local/lib/python3.10/dist-packages/rosidl_generator_py/__init__.py)
gmake[2]: *** [br2_tracking_msgs__py/CMakeFiles/br2_tracking_msgs__py.dir/build.make:93: rosidl_generator_py/br2_tracking_msgs/_br2_tracking_msgs_s.ep.rosidl_typesupport_fastrtps_c.c] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:590: br2_tracking_msgs__py/CMakeFiles/br2_tracking_msgs__py.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
gmake: *** [Makefile:146: all] Error 2
---
Failed   <<< br2_tracking_msgs [0.62s, exited with code 2]
Aborted  <<< br2_fsm_bumpgo_cpp [0.61s]
Aborted  <<< br2_basics [0.62s]
Aborted  <<< br2_bt_bumpgo [0.61s]
Aborted  <<< br2_navigation [0.60s]
Aborted  <<< br2_tiago [0.59s]
Aborted  <<< pmb2_controller_configuration [0.64s]
Aborted  <<< hey5_description [0.63s]
Aborted  <<< urdf_test [0.63s]
Aborted  <<< pal_gripper_controller_configuration [0.64s]
Aborted  <<< pal_gazebo_worlds [0.62s]
Aborted  <<< br2_bt_patrolling [0.61s]
Aborted  <<< groot [0.59s]
Aborted  <<< pmb2_maps [0.63s]
Aborted  <<< br2_tf2_detector [0.60s]
Aborted  <<< br2_vff_avoidance [0.59s]
Aborted  <<< br2_fsm_bumpgo_py [0.65s]
Aborted  <<< launch_pal [0.70s]                       

Summary: 0 packages finished [0.90s]
  1 package failed: br2_tracking_msgs
  17 packages aborted: br2_basics br2_bt_bumpgo br2_bt_patrolling br2_fsm_bumpgo_cpp br2_fsm_bumpgo_py br2_navigation br2_tf2_detector br2_tiago br2_vff_avoidance groot hey5_description launch_pal pal_gazebo_worlds pal_gripper_controller_configuration pmb2_controller_configuration pmb2_maps urdf_test
  1 package had stderr output: br2_tracking_msgs
  17 packages not processed

Question about lack of a "procedural" subscriber.cpp

  • I have checked that this issue/bug/fix/correction has not been already created before in open or closed issues.

Type of bug

  • A) Typo/error in Figure/text
  • B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

First off, I'd like to thank you for the excellent book and resource! I'm using it to study ROS2, and I'm really enjoying it so far.
While reading the 2nd chapter and looking at the source code, I've noticed that there is no subscriber implementation without using classes like br2_basics/src/publisher.cpp in the br2_basics package. Is there any specific reason? Or did I miss a mention of it as an exercise?

play_motion2 package missing from third_parties.repos

Important!!!

  • [ x] I have checked that this issue/bug/fix/correction has not been already created before in open or closed issues.

Type of bug

  • A) Typo/error in Figure/text
  • [ x] B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

The tiago build is failing due to missing play_motion2 msgs.
Caused by missing package in the mentioned .repos file.

Proposal

Add following lines to .repos file

ThirdParty/play_motion2:
type: git
url: https://github.com/pal-robotics/play_motion2
version: humble-devel

how to reproduce

Steps to reproduce the behavior:
Follow step from chapter1 (pdf)
failing on :
colcon build--symlink-install

Expected behavior

build must pass with no errors.

Desktop

  • OS: [Ubuntu 22.04]
  • ROS2 Distro : Humble

Book order (Go with Amazon - currently discount)

Not really an issue, but I'm not sure where to put this.

If you are looking to buy the book, I would suggest going with Amazon as they have a discounted price right now.

I purchased from the Routledge website a physical copy of the book, it has now been more than 2 weeks and the tracking status still says in pre-shipping (they have not printed it yet).

vcstools cannot find gazebo packages for humble

Important!!!

  • I have checked that this issue/bug/fix/correction has not been already created before in open or closed issues.

Type of bug

  • A) Typo/error in Figure/text
  • B) Bug in code
  • C) General comment, recommendation or petition
  • packages

Issue Description

I cannot install packages with the vcstools

mkdir -p bookros2_ws/src
cd bookros2_ws/
cd src/
git clone -b humble-devel https://github.com/fmrico/book ros2.git
sudo apt-get install python3-vcstool
vcs import . < book_ros2/third_parties.repos
rosdep install --from-paths src --ignore-src -r -y

...

executing command [sudo -H apt-get install -y ros-humble-gazebo-plugins]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
**E: Unable to locate package ros-humble-gazebo-plugins**
executing command [sudo -H apt-get install -y ros-humble-gazebo-ros]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
**E: Unable to locate package ros-humble-gazebo-ros**
executing command [sudo -H apt-get install -y ros-humble-gazebo-ros2-control]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
**E: Unable to locate package ros-humble-gazebo-ros2-control**
executing command [sudo -H apt-get install -y ros-humble-pal-gazebo-plugins]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
**E: Unable to locate package ros-humble-pal-gazebo-plugins**

...

ERROR: the following rosdeps failed to install
  **apt: command [sudo -H apt-get install -y ros-humble-gazebo-plugins] failed
  apt: command [sudo -H apt-get install -y ros-humble-gazebo-ros] failed
  apt: command [sudo -H apt-get install -y ros-humble-gazebo-ros2-control] failed
  apt: command [sudo -H apt-get install -y ros-humble-pal-gazebo-plugins] failed**
  apt: Failed to detect successful installation of [ros-humble-gazebo-plugins]
  apt: Failed to detect successful installation of [ros-humble-gazebo-ros]
  apt: Failed to detect successful installation of [ros-humble-gazebo-ros2-control]
  apt: Failed to detect successful installation of [ros-humble-pal-gazebo-plugins]

Expected behavior

I expect all packages to be available to follow the book tutorial

  • OS: Ubuntu 22.04
  • ROS2 Distro Humble
  • RPI4 gb

Errors in building example packages under the book_ros2.git

Important!!!

  • I have checked that this issue/bug/fix/correction has not been already created before in open or closed issues.

Screenshot

Summary: 7 packages finished [19.8s]
1 package failed: pal_gripper_description
3 packages aborted: br2_tracking_msgs pal_gazebo_worlds pmb2_description
2 packages had stderr output: launch_pal pal_gripper_description
26 packages not processed

Proposal

Advise how to fix or correct the issue

Desktop (please complete the following information):

  • OS: Ubuntu 22.04
  • ROS2: Humble

Wrong axis label in Figure 3.2

Type of bug

  • A) Typo/error in Figure/text
  • B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

The red axis in Figure 3.2 is wrongly labelled. It should be Z

A) Typo/Error Description

Screenshot

dextrogiro_wrong

Proposal

dextrogiro

Not able to build book_ros2 ! issue : Cmake Regex mode MATCH failed to compile regex

Hey @fmrico ,

An awesome book that you had written . After installing the dependencies using rosdep , while building the book_ros2 , I am getting the below error , Please suggest me how to solve this , I am stuck here

System configuration:
OS : Ubuntu 22.04
ros-distro : Humble
Cmake : 3.27.7

Please consider my issue and let me know if you require further more information .
Thanks

colcon build --symlink-install                                                                                                                              
[1.360s] WARNING:colcon.colcon_core.package_selection:Some selected packages are already built in one or more underlay workspaces:                                                     
        'launch_pal' is in: /opt/ros/humble                                                                                                                                            
If a package in a merged underlay workspace is overridden and it installs headers, then all packages in the overlay must sort their include directories by workspace order. Failure to 
do so may result in build failures or undefined behavior at run time.                                                                                                                  
If the overridden package is used by another package in any underlay, then the overriding package in the overlay must be API and ABI compatible or undefined behavior at run time may o
ccur.                                                                                                                                                                                  
                                                                                                                                                                                       
If you understand the risks and want to override a package anyways, add the following to the command line:                                                                             
        --allow-overriding launch_pal                                                                                                                                                  
                                                                                                                                                                                       
This may be promoted to an error in a future release of colcon-override-check.                                                                                                         
Starting >>> launch_pal                                                                                                                                                                
Starting >>> pal_gripper_controller_configuration                                                                                                                                      
Starting >>> pmb2_laser_sensors                                                                                                                                                        
Starting >>> hey5_description                                                                                                                                                          
Starting >>> pmb2_maps                                                                                                                                                                 
Starting >>> urdf_test                                                                                                                                                                 
Starting >>> pal_gazebo_worlds                                                                                                                                                         
Starting >>> br2_tracking_msgs                                                                                                                                                         
Starting >>> br2_basics                                                                                                                                                                
Starting >>> br2_bt_bumpgo                                                                                                                                                             
Starting >>> br2_bt_patrolling                                                                                                                                                         
Starting >>> br2_fsm_bumpgo_cpp                                                                                                                                                        
Finished <<< launch_pal [3.58s]                                                                                                                                                        
Starting >>> pmb2_controller_configuration                                                                                                                                             
Finished <<< pmb2_laser_sensors [4.76s]                                                                                                                                                
Finished <<< pmb2_maps [5.26s]                                                                                                                                                         
Starting >>> tiago_laser_sensors                                                                                                                                                       
--- stderr: hey5_description                                                                                                                                                           
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):                                                                                                                
  Compatibility with CMake < 3.5 will be removed from a future version of                                                                                                              
  CMake.                              
  
    Update the VERSION argument <min> value or use a ...<max> suffix to tell                                                                                                             
  CMake that the project does not need compatibility with older versions.                                                                                                              
                                                                                                                                                                                       
                                                                                                                                                                                       
---                                                                                                                                                                                    
Finished <<< hey5_description [5.38s]                                                                                                                                                  
Starting >>> pmb2_2dnav                                                                                                                                                                
Starting >>> br2_fsm_bumpgo_py         
Finished <<< pal_gripper_controller_configuration [6.22s]
Starting >>> tiago_controller_configuration
--- stderr: br2_basics                                             
CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:73 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:75 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^\$<.*:/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*>$".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:73 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:75 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^\$<.*:/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*>$".
Call Stack (most recent call first):

CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:73 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:75 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^\$<.*:/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*>$".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:73 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:75 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^\$<.*:/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*>$".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:73 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:75 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^\$<.*:/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*>$".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:73 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:75 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^\$<.*:/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*>$".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:73 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:75 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^\$<.*:/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*>$".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:73 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:75 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^\$<.*:/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*>$".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:73 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:75 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^\$<.*:/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*>$".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:73 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


CMake Error at /opt/ros/humble/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:75 (string):
  string sub-command REGEX, mode MATCH failed to compile regex
  "^\$<.*:/home/mat/Desktop/ros/c++/src/book_ros2/br2_basics/.*>$".
Call Stack (most recent call first):
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:21 (ament_execute_extensions)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:55 (ament_package)


---
Failed   <<< br2_basics [6.71s, exited with code 1]
Aborted  <<< br2_bt_bumpgo [6.71s]
Aborted  <<< br2_fsm_bumpgo_cpp [6.62s]                                      
Aborted  <<< pal_gazebo_worlds [6.85s]
Aborted  <<< urdf_test [6.90s]
Aborted  <<< br2_bt_patrolling [6.67s]
Aborted  <<< br2_fsm_bumpgo_py [1.50s]
Aborted  <<< tiago_controller_configuration [0.86s]
Aborted  <<< pmb2_controller_configuration [3.56s]
Aborted  <<< tiago_laser_sensors [2.38s]                                               
Aborted  <<< pmb2_2dnav [2.50s]                                                        
Aborted  <<< br2_tracking_msgs [8.30s]                                  
                                   
Summary: 5 packages finished [10.1s]
  1 package failed: br2_basics
  11 packages aborted: br2_bt_bumpgo br2_bt_patrolling br2_fsm_bumpgo_cpp br2_fsm_bumpgo_py br2_tracking_msgs pal_gazebo_worlds pmb2_2dnav pmb2_controller_configuration tiago_controller_configuration tiago_laser_sensors urdf_test
  7 packages had stderr output: br2_basics br2_bt_bumpgo br2_bt_patrolling br2_fsm_bumpgo_cpp br2_tracking_msgs hey5_description pal_gazebo_worlds
  20 packages not processed

update your fucking book

i@ubuntu:~/WORK/bookros2_ws$ colcon build --symlink-install
Starting >>> controller_manager_msgs
Starting >>> ros2_control_test_assets
Starting >>> launch_pal
Starting >>> twist_mux
Finished <<< ros2_control_test_assets [3.99s]
Starting >>> hardware_interface
--- stderr: hardware_interface
CMake Error at CMakeLists.txt:14 (find_package):
By not providing "Findcontrol_msgs.cmake" in CMAKE_MODULE_PATH this project
has asked CMake to find a package configuration file provided by
"control_msgs", but CMake did not find one.

Could not find a package configuration file provided by "control_msgs" with
any of the following names:

control_msgsConfig.cmake
control_msgs-config.cmake

Add the installation prefix of "control_msgs" to CMAKE_PREFIX_PATH or set
"control_msgs_DIR" to a directory containing one of the above files. If
"control_msgs" provides a separate development package or SDK, be sure it
has been installed.


Failed <<< hardware_interface [4.17s, exited with code 1]
Aborted <<< twist_mux [9.27s]
Aborted <<< controller_manager_msgs [10.2s]
Aborted <<< launch_pal [10.7s]

Summary: 1 package finished [12.9s]
1 package failed: hardware_interface
3 packages aborted: controller_manager_msgs launch_pal twist_mux
2 packages had stderr output: hardware_interface twist_mux
52 packages not processed

error running ros2 launch br2_tiago sim.launch.py

Type of bug

  • A) Typo/error in Figure/text
  • B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

ros2 launch br2_tiago sim.launch.py not working

A) Typo/Error Description

Waiting for '/controller_manager' node to exist
joy_teleop has stopped unexpectedly

Screenshot

Screenshot from 2022-10-02 10-15-09
Screenshot from 2022-10-02 10-15-31
Screenshot from 2022-10-02 10-15-24

how to reproduce

Steps to reproduce the behavior:

  1. run in a terminal: ros2 launch br2_tiago sim.launch.py

Desktop :

  • OS: [Ubuntu 22.04]
  • ROS2 Distro [Humble]

Problems launching br2_tiago

Important!!!

  • [ x] I have checked that this issue/bug/fix/correction has not been already created before in open or closed issues.

Type of bug

  • A) Typo/error in Figure/text
  • B) Bug in code
  • [ X] C) General comment, recommendation or petition

Issue Description

Hello,
I have problems with chapter 2 " ros2 launch br2_tiago sim.launch.py".

I get the following error messages:

play_motion2_node-10] [ERROR] [1683104855.352795642] [play_motion2]: Service /controller_manager/list_controllers not available.
[play_motion2_node-10] [ERROR] [1683104855.352955540] [play_motion2]: There are no active JointTrajectory controllers available
[tuck_arm.py-15] [ERROR] [1683104855.369452866] [arm_tucker]: play_motion2 is not ready

I have the following packages installed (and more ;-) ) :
controller_manager
controller_manager_msgs
play_motion2
play_motion2_msgs

I followed the installation guidelines in the presentation.

What has gone wrong?

Thanks, Verena

Screenshot

image

Desktop (please complete the following information):

  • OS: [e.g. Ubuntu 22.04]
  • ROS2 Distro [Humble]
    Installation as described in powerpoint for the workspace (Humble was already installed)

Changes in BR2_Chapter_1 for humble

changes from foxy to humble in chapter 1:

set Apt repositories:

sudo apt update && sudo apt install curl
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

sudo apt update

ROS2 available software

apt-cache search ros-humble

Install ROS2 from binaries

sudo apt update

sudo apt install ros-humble-desktop

Activate ROS2

source /opt/ros/humble/setup.bash
echo "source /opt/ros/humble/setup.bash" >> /.bashrc

Create and fill

cd ~
mkdir -p bookros2_ws/src
cd bookros2_ws/src
git clone https://github.com/fmrico/book_ros2.git
vcs import . < book_ros2/third_parties.repos

while importing third-party repos using vcs if you run into the error:

Command 'vcs' not found

we have to install vcs using the below command:

sudo apt install python3-vcstool

install dependencies:

sudo rosdep init
rosdep update
cd ~/bookros2_ws
rosdep install --from-paths src --ignore-src -r -y

while installing dependencies if you run into the error,

rosdep command is not found.

then run the following command:

sudo apt install python3-bloom python3-rosdep -y

then initialize rosdep

sudo rosdep init
rosdep update

if you run into an error while running rosdep init:
try:

sudo apt update && sudo apt upgrade

if this does not solve then do the below steps:

  • open hosts file:
sudo gedit /etc/hosts
  • add this line to the end of the file:
151.101.84.133 raw.githubusercontent.com
  • save and close, then run:
sudo rosdep init
rosdep update

no changes in Build the workspace, and activate the user workspace sections (sourcing the workspace)


posting changes as an issue as asked in the LinkedIn post.

Unable to execute ros2 launch br2_tiago for foxy

Important!!!

  • I have checked that this issue/bug/fix/correction has not been already created before in open or closed issues.

Type of bug

  • A) Typo/error in Figure/text
  • B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

Hello,
I have problems with chapter 2 " ros2 launch br2_tiago sim.launch.py".
I get the following error messages:

ros2 launch br2_tiago sim.launch.py world:=small_office
[INFO] [launch]: All log files can be found below /home/dmas/.ros/log/2023-05-21-20-46-57-013635-ubuntu-box-6636
[INFO] [launch]: Default logging verbosity is set to INFO
Task exception was never retrieved
future: <Task finished name='Task-2' coro=<LaunchService._process_one_event() done, defined at /opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py:226> exception=SubstitutionFailure('executed command failed. Command: /opt/ros/foxy/lib/xacro/xacro /home/dmas/ros2_ws/install/tiago_description/share/tiago_description/robots/tiago.urdf.xacro laser_model:=sick-571 arm:=right-arm end_effector:=pal-hey5 ft_sensor:=schunk-ft camera_model:=orbbec-astra')>
Traceback (most recent call last):
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py", line 228, in _process_one_event
await self.__process_event(next_event)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py", line 248, in __process_event
visit_all_entities_and_collect_futures(entity, self.__context))
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures
futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures
futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures
futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context)
[Previous line repeated 7 more times]
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 38, in visit_all_entities_and_collect_futures
sub_entities = entity.visit(context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/action.py", line 108, in visit
return self.execute(context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch_ros/actions/node.py", line 444, in execute
self._perform_substitutions(context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch_ros/actions/node.py", line 399, in _perform_substitutions
evaluated_parameters = evaluate_parameters(context, self.__parameters)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch_ros/utilities/evaluate_parameters.py", line 164, in evaluate_parameters
output_params.append(evaluate_parameter_dict(context, param))
File "/opt/ros/foxy/lib/python3.8/site-packages/launch_ros/utilities/evaluate_parameters.py", line 71, in evaluate_parameter_dict
evaluated_value = perform_substitutions(context, list(value))
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/perform_substitutions_impl.py", line 26, in perform_substitutions
return ''.join([context.perform_substitution(sub) for sub in subs])
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/perform_substitutions_impl.py", line 26, in
return ''.join([context.perform_substitution(sub) for sub in subs])
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_context.py", line 232, in perform_substitution
return substitution.perform(self)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/substitutions/command.py", line 116, in perform
raise SubstitutionFailure(f'executed command failed. Command: {command_str}')
launch.substitutions.substitution_failure.SubstitutionFailure: executed command failed. Command: /opt/ros/foxy/lib/xacro/xacro /home/dmas/ros2_ws/install/tiago_description/share/tiago_description/robots/tiago.urdf.xacro laser_model:=sick-571 arm:=right-arm end_effector:=pal-hey5 ft_sensor:=schunk-ft camera_model:=orbbec-astra
Task exception was never retrieved
future: <Task finished name='Task-12' coro=<LaunchService._process_one_event() done, defined at /opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py:226> exception=RuntimeError('Signal event received before subprocess transport available.')>
Traceback (most recent call last):
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py", line 228, in _process_one_event
await self.__process_event(next_event)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py", line 248, in __process_event
visit_all_entities_and_collect_futures(entity, self.__context))
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 38, in visit_all_entities_and_collect_futures
sub_entities = entity.visit(context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/action.py", line 108, in visit
return self.execute(context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/actions/opaque_function.py", line 75, in execute
return self.__function(context, *self.__args, **self.__kwargs)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/actions/execute_process.py", line 443, in __on_signal_process_event
raise RuntimeError('Signal event received before subprocess transport available.')
RuntimeError: Signal event received before subprocess transport available.
[INFO] [gzserver-1]: process started with pid [6643]
[INFO] [gzclient -2]: process started with pid [6645]
[INFO] [gzserver-1]: sending signal 'SIGINT' to process[gzserver-1]
[ERROR] [gzclient -2]: process[gzclient -2] failed to terminate '5' seconds after receiving 'SIGINT', escalating to 'SIGTERM'
[ERROR] [gzserver-1]: process[gzserver-1] failed to terminate '5' seconds after receiving 'SIGINT', escalating to 'SIGTERM'
[INFO] [gzclient -2]: sending signal 'SIGTERM' to process[gzclient -2]
[INFO] [gzserver-1]: sending signal 'SIGTERM' to process[gzserver-1]
[ERROR] [gzclient -2]: process has died [pid 6645, exit code -15, cmd 'gzclient '].
[ERROR] [gzserver-1]: process has died [pid 6643, exit code -15, cmd 'gzserver /home/dmas/ros2_ws/install/pal_gazebo_worlds/share/pal_gazebo_worlds/worlds/small_office.world -s libgazebo_ros_init.so -s libgazebo_ros_factory.so -s libgazebo_ros_force_system.so '].

A) Typo/Error Description

(Remove section if not applicable)

Screenshot

If applicable, add screenshots to help explain the problem.

Proposal

Proposal to fix or correct the issue

B) Bug Description

(Remove section if not applicable)

how to reproduce

Steps to reproduce the behavior:

  1. Go to '...'
  2. Type on '....'
  3. Execute '....'
  4. See error

Expected behavior

A clear and concise description of what you expected to happen.

Screenshots

If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. Ubuntu 20.04]
  • ROS2 Distro [Foxy]

Additional context

Add any other context about the problem here.

Comments for the first revision

Hello,

First of all, many thanks @fmrico for your effort in creating this book and putting the repository together! Similarly, congratulations on the success it has accomplished so far!

I saw your LinkedIn post about preparing the first revision, so here are my comments after reading the book.

Disclaimers: I have only read the book once — from start to finish. I did not execute/test the code examples myself, nor did I review the code in the repository/appendix. However, I went through all the code snippets that are within the main chapters — although I might have only briefly skimmed through some of them. English is not my first language, so I did not attempt to correct grammar or phrasing — except for obvious typos and missing/extra words. If unsure, take all my comments with a grain of salt and ignore them. I might be incorrect in many of them. :)

General comments

First, some very general comments.

Overall feedback

I like the conciseness of the book. It provides a good overview and guidelines about programming robots with ROS 2 without making the text appear excessively descriptive. It manages to provide extra details about certain concepts, which is welcome. It is great that the book comes with this repository containing code that is actively updated (such as the update now from foxy to humble). Similarly, the accompanying slides are great for providing an overview of each chapter/topic and I believe they will be appreciated by educators.

The book also manages to dive into more complex topics that I would not initially expect from looking at the book cover (at least what I consider to be more complex). Examples of these are software testing, computer vision and behaviour trees — all of which are important topics. However, I suspect that a complete ROS beginner might get overwhelmed. Even though the book states the assumption that "Prior knowledge of ROS/ROS2 is not needed.", I think that prior knowledge (and experience) with ROS might greatly improve understanding and even be necessary for the comprehension of some details. The same applies to the prior knowledge of C++ that is necessary for comprehending the included code snippets, but this is already well-explained in the introduction — together with hyperlinks to external C++ references.

Ultimately, I agree with this statement from the book: "This book is not intended to be a new ROS2 tutorial. The ones on the official website are great!", and I think it is important that readers are aware of that. In this way, the official tutorials could serve as an introduction to ROS for complete beginners, while this book complements it nicely with concrete project examples and suggestions for development guidelines.

While reading the book, I really appreciated these kinds of suggestions and details. Here are two examples that are memorable for me:

  • QoS suggestion to use reliable publishers and let subscribers decide whether to relax this requirement.
  • That tf2 does linear interpolation when looking-up transform in time between earlier and later available publications. (I was not aware of this)

Missing epilogue/conclusion

I feel that the book ends abruptly with no final words, which might make the reader wonder what to do after reading the book. I think it might be nice to conclude what the reader has learned and give some pointers for further learning. For example, if the reader is interested in learning more about robotic manipulation (not covered in the book), it might be worth referring the reader to MoveIt 2. And the same could be applied to other concepts, e.g. refer to Gazebo or another robotics simulator if the reader is interested in learning more about simulators.


"ROS2" vs "ROS 2"

This one might be controversial — so I will just insert some links.



Specific comments

Now for some specific comments. Each comment is linked to particular page(s). All markdown quotes > ... refer to text from the book on that page. Please, let me know if something is unclear.

I went through existing/closed issues and tried to remove all comments that were already brought up (but apologies if I missed some).

1 | Page 6: Services

  • Services: It is a synchronous communication in which a node requests ...

By default, ROS 2 service (client) calls are asynchronous, which I assume to be the recommended paradigm.

From relevant docs: https://docs.ros.org/en/humble/How-To-Guides/Sync-Vs-Async.html ("It is not recommended to implement a synchronous service client. They are susceptible to deadlock ...")

This description of services from docs might be more suitable: https://docs.ros.org/en/humble/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Services/Understanding-ROS2-Services.html ("Services are based on a call-and-response model")


2 | Page 7: Kobuki

A reader might not know Kobuki while reading this page. Although a reference is provided and it is explained more in the next chapter, a small description might be appreciated. Saying it is a mobile robot might be enough.


3 | Page 7: "probably"

The Kobuki robot driver is a node that communicates with the robot's hardware, probably using a native driver.

The word "probably" sounds unsure here. If there is no reason for it, I would remove the word.


4 | Page 7: /mobile_base/commands/velocity used by all robots

/mobile_base/commands/velocity: ... This topic is of type geometry_msgs/msg/Twist. Virtually all robots in ROS2 receive these types of messages to control their speed.

Not sure, but all mobile robots might be more correct. Outside of MoveIt Servo, I don't think I encountered these Twist messages for controlling manipulators. It is also mentioned on page 51.


5 | Page 12: /.bashrc

$ echo "source /opt/ros/foxy/setup.bash">> /.bashrc

It should be ~/.bashrc (with ~), "${HOME}/.bashrc" or other alternatives (e.g. $HOME/.bashrc).

Otherwise, the path is incorrect.


6 | Page 26: typo - "Apart of ament_cmake, always needed by colcon, just rclcpp is especified."

  • Location: second last bullet-point
  • Suggestion: "Apart of ..." -> "Apart from ..."
  • Suggestion: "especified" -> "specified"

7 | Page 32: typo - "To compile these program, the relevant..."

  • Location: first line
  • Suggestion: "these program" -> "these programs" | "this program"

8 | Page 32: incorrect add_executable(logger_class src/logger.cpp)

In CMakeLists.txt snippet:

add_executable(logger_class src/logger.cpp)

This first line should be add_executable(logger src/logger.cpp). Otherwise, logger executable does not exist and logger_class is added twice.


9 | Page 36: typo - "Last ROS2 distros lets to create launchers written in Yaml and XML"

  • Location: footnote 1
  • Suggestion: "lets to" -> "let us" | "enable creating" | something else?

10 | Page 36: consistency of "Yaml" vs "YAML"

In footnote 1, "Yaml" is used. However, I think that most of the book uses "YAML"?


11 | Page 36: examples of Yaml/XML launchers

It might be nice to include examples of Yaml/XML launchers (same nodes/structure used by the already included Python launcher).

On a side note, this page mentions that Python launchers typically use the extension _launch.py (starting with _ underscore). However, there is a mixed-use with .launch.py (starting with . dot) within the book.


12 | Page 44: pre-configured RViz2 interface?

For beginners, it might be difficult to figure out how to add panels and configure some options in RViz (even though it is explained in depth within this section). To simplify things, using a pre-configured .rviz config and loading it with rviz2 -d ... could be an alternative. This is just a thought, the current approach might work well.


13 | Page 48: angles grow left vs counter-clockwise

Angles grow by turning to the left (right part of Figure 3.2).

I suggest replacing left with counter-clockwise.


14 | Page 56: typo - "going forward when deteting an obstacle"

  • Location: comment in the second snippet (src/bump go cpp/BumpGoNode.cpp)
  • Suggestion: "deteting" -> "detecting"

15 | Pages 56/57: use of constants

Although using constants is a good practice for values like OBSTACLE_DISTANCE and SCAN_TIMEOUT, I think it might be beneficial to use an exact value when it is used as an example snippet within chapters of books.

For example, instead of using SCAN_TIMEOUT in the following snippet, I would suggest using the concrete value like 1.0 because I think it might improve comprehension for readers and let them know what data type SCAN_TIMEOUT is while reading through the chapter. Currently, SCAN_TIMEOUT is not defined anywhere within the chapter, so a reader would need to go to the code to see what data type these constants have.

// Stop if no sensor readings for 1 second
auto elapsed = now() - rclcpp::Time(last_scan_->header.stamp);
return elapsed > SCAN_TIMEOUT;

16 | Page 57: suggestion to rephrase explanation of use_sim_time

Maybe it is just me, but I think the current explanation below could be misunderstood like there is always a /clock topic, which contains messages that are either published by the simulator or the computer.

When using a simulator, set the use_sim_time parameter to true. This causes the time to be taken from the topic /clock, published by the simulator, instead of the current one from the computer.

Therefore, here is a small rephrasing suggestion:

  • "..., instead of the current one from the computer." -> "..., instead of using the system clock."

17 | Page 62: typo - "... first launch the simuladtor by typing ..."

  • Location: sentence before the second snippet
  • Suggestion: "simuladtor" -> "simulator"

18 | Pages 64/65: incorrect slashes before frame names

In this section, all frames (/base_footprint, /base_link, /odom in bullet points) are prefixed with a slash (/). However, I do not think that is correct. Shouldn't it be without the namespace-like leading slash?


19 | Page 78: remove redundant "use"

  • Sentence: "To get odom2laser, we need to use query the TF subsystem with ..."
  • Location: second bullet point

20 | Page 83: missing "of"

  • Sentence: "See that the organization of the package, in the next box, is already standard in our packages"
  • Location: First sentence of 5.1.2

21 | Page 85: typo - "This is the obstacle radious in which ..."

  • Location: comment in the second snippet (src/br2_vff_avoidance/AvoidanceNode.cpp)
  • Suggestion: "radious" -> "radius"

22 | Page 86: use of an incorrect word "close" -> "further"

  • Sentence: Closer obstacles have to generate more repulse than those close.
  • Location: third bullet point
  • Suggestion: Closer obstacles have to generate more repulse than those futher.

23 | Page 110: merge the sentence with the previous paragraph?

Figure 5.10 shows a diagram of this PID controller.

This sentence is the entire second-last paragraph, so I think it could be merged with its previous paragraph.


24 | Page 118: typo - "... they use the input of the blackborad whose key ..."

  • Location: second-last paragraph
  • Suggestion: "blackborad" -> "blackboard"

25 | Page 120: missing whitespace between words "timesbefore"

  • Location: table, 3rd column, 9th item row
  • Suggestion: "N timesbefore" -> "N times before"

26 | Page 120: missing whitespace after "Sequence:"

  • Location: beginning of last bullet point
  • Suggestion: "Sequence:As ..." -> "Sequence: As ..."

27 | Page 136: remove redundant "one"

  • Suggestion: "Since one frames should not have two parents, ..."
  • Location: First paragraph/bullet point
  • Alternative: Replace "one" with "every"

28 | Page 149: typos in comment "Get the state of the controlled node. Ot can fail, ..."

  • Location: code snipped, last comment (the corresponding function is a setter, not a getter)
  • Original: "Get the state of the controlled node. Ot can fail, if not transition [?] possible"
  • Suggestion: -> "Set the state of the controlled node. It can fail, if no transition is possible"

br2_fsm_bumgo_cpp does not make Tiago move

Important!!!

  • I have checked that this issue/bug/fix/correction has not been already created before in open or closed issues.

Type of bug

  • A) Typo/error in Figure/text
  • B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

When launching Tiago sim and br2_fsm_bumpgo_cpp Node, Tiago does not move despite the message is published to the topics scan_raw and nav_vel.

B) Bug Description

I launched the Tiago and BumpGo node but Tiago does not move. I tried to change the RMW_IMPLEMENTATION to rmw_cyclonedds_cpp, echo the messages being published to the topics and even reclone the repo but nothing happens. When launching the Tiago sim, many warnings are displayed but I'm not sure if those warnings affect the nodes. I just started the book so I'm not sure where to debug this. Any help is much appreciated. Thank you.

how to reproduce

Steps to reproduce the behavior:

  1. Execute 'ros2 launch br2_tiago sim.launch.py'
  2. Execute 'ros2 launch br2_fsm_bumpgo_cpp bump_and_go.launch.py'

Expected behavior

Tiago robot moves around.

Screenshots

This is the message published to /scan_raw
image
This is the message published to /nav_vel
image
This is the warnings when launching Tiago sim
image
image
image
image
image

Desktop (please complete the following information):

  • OS: Ubuntu 22.04
  • ROS2 Distro: Humble

Unable to build the workspace fully successfully

Important!!!

  • I have checked that this issue/bug/fix/correction has not been already created before in open or closed issues.

Type of bug

  • A) Typo/error in Figure/text
  • B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

A clear and concise description of what the issue is (A, B, and C)

B) Bug Description

(Remove section if not applicable)

how to reproduce

Steps to reproduce the behavior:

  1. Go to '...'
  2. Type on '....'
  3. Execute '....'
  4. See error

Expected behavior

a. Trying to use the vcstool as instructed in page 12
Instead im getting error:
bash: book_ros2/thirld_parties.repos: No such file or directory

Screenshot (133)

b. Unable to build the workspace fully successfully, everything suppose to build successfully without any issue or any failure. As instructed on page 13.

Desktop (please complete the following information):

  • OS: Ubuntu Focal

  • ROS2 Distro: Foxy

Additional context

Add any other context about the problem here.

Screenshot (130)
Screenshot (131)
22.04]

failed to colcon build the book_ros2 package

ok so basically i am following all the steps in yr book to build the package. successfully gitcloned the humble-devel branch, rosdep works fine too. problem comes in colcon build. it says that it can't find the cmake file specified and 33 packages don't get installed. here's the screenshot of this issue. it would be nice of you to look up this issue.
Screenshot

Unable to install `ros-humble-pal-navigation-cfg-bringup`

Important!!!

  • I have checked that this issue/bug/fix/correction has not been already created before in open or closed issues.

Type of bug

  • A) Typo/error in Figure/text
  • B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

Failed to install ros-humble-pal-navigation-cfg-bringup package

A) Typo/Error Description

After running

rosdep install --from-paths src --ignore-src -r -y

here is the log

executing command [sudo -H apt-get install -y ros-humble-gazebo-plugins]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  freeglut3-dev gazebo gazebo-common gazebo-plugin-base libfreeimage-dev
  libgazebo-dev libgazebo11 libignition-common3-3 libignition-common3-av-dev
  libignition-common3-av3 libignition-common3-core-dev libignition-common3-dev
  libignition-common3-events3 libignition-common3-graphics-dev
  libignition-common3-graphics3 libignition-common3-profiler3
  libignition-fuel-tools4-4 libignition-fuel-tools4-dev libignition-msgs5-5
  libignition-msgs5-dev libignition-transport8-8 libignition-transport8-dev
  libqtpropertybrowser5 libqwt-qt5-6 libqwt-qt5-dev libsdformat9-9
  libsdformat9-dev libsimbody-dev libsimbody3.6 libspnav0 libtar-dev libtar0
  libtinyobjloader-dev libtinyobjloader1 ros-humble-camera-calibration-parsers
  ros-humble-camera-info-manager ros-humble-gazebo-dev ros-humble-gazebo-msgs
  ros-humble-gazebo-ros sdformat9-sdf
Suggested packages:
  gazebo-doc spacenavd
The following NEW packages will be installed:
  freeglut3-dev gazebo gazebo-common gazebo-plugin-base libfreeimage-dev
  libgazebo-dev libgazebo11 libignition-common3-3 libignition-common3-av-dev
  libignition-common3-av3 libignition-common3-core-dev libignition-common3-dev
  libignition-common3-events3 libignition-common3-graphics-dev
  libignition-common3-graphics3 libignition-common3-profiler3
  libignition-fuel-tools4-4 libignition-fuel-tools4-dev libignition-msgs5-5
  libignition-msgs5-dev libignition-transport8-8 libignition-transport8-dev
  libqtpropertybrowser5 libqwt-qt5-6 libqwt-qt5-dev libsdformat9-9
  libsdformat9-dev libsimbody-dev libsimbody3.6 libspnav0 libtar-dev libtar0
  libtinyobjloader-dev libtinyobjloader1 ros-humble-camera-calibration-parsers
  ros-humble-camera-info-manager ros-humble-gazebo-dev ros-humble-gazebo-msgs
  ros-humble-gazebo-plugins ros-humble-gazebo-ros sdformat9-sdf
0 upgraded, 41 newly installed, 0 to remove and 61 not upgraded.
Need to get 64.7 MB of archives.
After this operation, 210 MB of additional disk space will be used.
Get:1 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 freeglut3-dev amd64 2.8.1-6 [126 kB]
Get:2 http://packages.ros.org/ros2/ubuntu jammy/main amd64 ros-humble-camera-calibration-parsers amd64 3.1.5-1jammy.20230302.190359 [54.4 kB]
Get:3 http://packages.ros.org/ros2/ubuntu jammy/main amd64 ros-humble-camera-info-manager amd64 3.1.5-1jammy.20230302.190641 [41.6 kB]
Get:4 http://packages.ros.org/ros2/ubuntu jammy/main amd64 ros-humble-gazebo-dev amd64 3.7.0-1jammy.20221108.145559 [7,928 B]
Get:5 http://packages.ros.org/ros2/ubuntu jammy/main amd64 ros-humble-gazebo-msgs amd64 3.7.0-1jammy.20230112.154824 [487 kB]
Get:6 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-common3-3 amd64 3.14.0+dfsg-5 [140 kB]
Get:7 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-msgs5-5 amd64 5.8.1+ds-2 [738 kB]
Get:8 http://packages.ros.org/ros2/ubuntu jammy/main amd64 ros-humble-gazebo-ros amd64 3.7.0-1jammy.20230302.204832 [495 kB]
Get:9 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-fuel-tools4-4 amd64 4.4.0+ds-3build1 [191 kB]
Get:10 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-transport8-8 amd64 8.2.1+ds-2 [289 kB]
Get:11 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libqtpropertybrowser5 amd64 5.0.2-3 [256 kB]
Get:12 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libqwt-qt5-6 amd64 6.1.4-2 [418 kB]
Get:13 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 sdformat9-sdf all 9.7.0+ds-1 [57.1 kB]
Get:14 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libsdformat9-9 amd64 9.7.0+ds-1 [442 kB]
Get:15 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libsimbody3.6 amd64 3.6.1+dfsg-7build1 [3,324 kB]
Get:16 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libspnav0 amd64 0.2.3-1 [8,552 B]
Get:17 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libtar0 amd64 1.2.20-8 [18.6 kB]
Get:18 http://packages.ros.org/ros2/ubuntu jammy/main amd64 ros-humble-gazebo-plugins amd64 3.7.0-1jammy.20230302.212617 [1,621 kB]
Get:19 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libtinyobjloader1 amd64 2.0.0~rc5+dfsg1-5build1 [63.9 kB]
Get:20 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libgazebo11 amd64 11.10.2+dfsg-1 [8,734 kB]
Get:21 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 gazebo-common all 11.10.2+dfsg-1 [35.7 MB]
Get:22 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 gazebo amd64 11.10.2+dfsg-1 [4,095 kB]
Get:23 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 gazebo-plugin-base amd64 11.10.2+dfsg-1 [2,165 kB]
Get:24 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libqwt-qt5-dev amd64 6.1.4-2 [98.7 kB]
Get:25 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libfreeimage-dev amd64 3.18.0+ds2-6ubuntu5 [370 kB]
Get:26 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libtar-dev amd64 1.2.20-8 [35.6 kB]
Get:27 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-msgs5-dev amd64 5.8.1+ds-2 [280 kB]
Get:28 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-transport8-dev amd64 8.2.1+ds-2 [67.8 kB]
Get:29 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libtinyobjloader-dev amd64 2.0.0~rc5+dfsg1-5build1 [244 kB]
Get:30 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-common3-core-dev amd64 3.14.0+dfsg-5 [113 kB]
Get:31 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-common3-av3 amd64 3.14.0+dfsg-5 [43.5 kB]
Get:32 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-common3-av-dev amd64 3.14.0+dfsg-5 [14.5 kB]
Get:33 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-common3-graphics3 amd64 3.14.0+dfsg-5 [243 kB]
Get:34 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-common3-graphics-dev amd64 3.14.0+dfsg-5 [14.6 kB]
Get:35 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-common3-profiler3 amd64 3.14.0+dfsg-5 [32.9 kB]
Get:36 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-common3-events3 amd64 3.14.0+dfsg-5 [52.3 kB]
Get:37 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-common3-dev amd64 3.14.0+dfsg-5 [51.1 kB]
Get:38 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libignition-fuel-tools4-dev amd64 4.4.0+ds-3build1 [27.8 kB]
Get:39 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libsdformat9-dev amd64 9.7.0+ds-1 [54.1 kB]
Get:40 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libsimbody-dev amd64 3.6.1+dfsg-7build1 [2,718 kB]
Get:41 http://ng.archive.ubuntu.com/ubuntu jammy/universe amd64 libgazebo-dev amd64 11.10.2+dfsg-1 [756 kB]
Fetched 64.7 MB in 29s (2,198 kB/s)                                            
Extracting templates from packages: 100%
Selecting previously unselected package freeglut3-dev:amd64.
(Reading database ... 435723 files and directories currently installed.)
Preparing to unpack .../00-freeglut3-dev_2.8.1-6_amd64.deb ...
Unpacking freeglut3-dev:amd64 (2.8.1-6) ...
Selecting previously unselected package libignition-common3-3:amd64.
Preparing to unpack .../01-libignition-common3-3_3.14.0+dfsg-5_amd64.deb ...
Unpacking libignition-common3-3:amd64 (3.14.0+dfsg-5) ...
Selecting previously unselected package libignition-msgs5-5:amd64.
Preparing to unpack .../02-libignition-msgs5-5_5.8.1+ds-2_amd64.deb ...
Unpacking libignition-msgs5-5:amd64 (5.8.1+ds-2) ...
Selecting previously unselected package libignition-fuel-tools4-4:amd64.
Preparing to unpack .../03-libignition-fuel-tools4-4_4.4.0+ds-3build1_amd64.deb ...
Unpacking libignition-fuel-tools4-4:amd64 (4.4.0+ds-3build1) ...
Selecting previously unselected package libignition-transport8-8:amd64.
Preparing to unpack .../04-libignition-transport8-8_8.2.1+ds-2_amd64.deb ...
Unpacking libignition-transport8-8:amd64 (8.2.1+ds-2) ...
Selecting previously unselected package libqtpropertybrowser5.
Preparing to unpack .../05-libqtpropertybrowser5_5.0.2-3_amd64.deb ...
Unpacking libqtpropertybrowser5 (5.0.2-3) ...
Selecting previously unselected package libqwt-qt5-6.
Preparing to unpack .../06-libqwt-qt5-6_6.1.4-2_amd64.deb ...
Unpacking libqwt-qt5-6 (6.1.4-2) ...
Selecting previously unselected package sdformat9-sdf.
Preparing to unpack .../07-sdformat9-sdf_9.7.0+ds-1_all.deb ...
Unpacking sdformat9-sdf (9.7.0+ds-1) ...
Selecting previously unselected package libsdformat9-9:amd64.
Preparing to unpack .../08-libsdformat9-9_9.7.0+ds-1_amd64.deb ...
Unpacking libsdformat9-9:amd64 (9.7.0+ds-1) ...
Selecting previously unselected package libsimbody3.6:amd64.
Preparing to unpack .../09-libsimbody3.6_3.6.1+dfsg-7build1_amd64.deb ...
Unpacking libsimbody3.6:amd64 (3.6.1+dfsg-7build1) ...
Selecting previously unselected package libspnav0.
Preparing to unpack .../10-libspnav0_0.2.3-1_amd64.deb ...
Unpacking libspnav0 (0.2.3-1) ...
Selecting previously unselected package libtar0:amd64.
Preparing to unpack .../11-libtar0_1.2.20-8_amd64.deb ...
Unpacking libtar0:amd64 (1.2.20-8) ...
Selecting previously unselected package libtinyobjloader1:amd64.
Preparing to unpack .../12-libtinyobjloader1_2.0.0~rc5+dfsg1-5build1_amd64.deb ...
Unpacking libtinyobjloader1:amd64 (2.0.0~rc5+dfsg1-5build1) ...
Selecting previously unselected package libgazebo11:amd64.
Preparing to unpack .../13-libgazebo11_11.10.2+dfsg-1_amd64.deb ...
Unpacking libgazebo11:amd64 (11.10.2+dfsg-1) ...
Selecting previously unselected package gazebo-common.
Preparing to unpack .../14-gazebo-common_11.10.2+dfsg-1_all.deb ...
Unpacking gazebo-common (11.10.2+dfsg-1) ...
Selecting previously unselected package gazebo.
Preparing to unpack .../15-gazebo_11.10.2+dfsg-1_amd64.deb ...
Unpacking gazebo (11.10.2+dfsg-1) ...
Selecting previously unselected package gazebo-plugin-base.
Preparing to unpack .../16-gazebo-plugin-base_11.10.2+dfsg-1_amd64.deb ...
Unpacking gazebo-plugin-base (11.10.2+dfsg-1) ...
Selecting previously unselected package libqwt-qt5-dev.
Preparing to unpack .../17-libqwt-qt5-dev_6.1.4-2_amd64.deb ...
Unpacking libqwt-qt5-dev (6.1.4-2) ...
Selecting previously unselected package libfreeimage-dev.
Preparing to unpack .../18-libfreeimage-dev_3.18.0+ds2-6ubuntu5_amd64.deb ...
Unpacking libfreeimage-dev (3.18.0+ds2-6ubuntu5) ...
Selecting previously unselected package libtar-dev:amd64.
Preparing to unpack .../19-libtar-dev_1.2.20-8_amd64.deb ...
Unpacking libtar-dev:amd64 (1.2.20-8) ...
Selecting previously unselected package libignition-msgs5-dev:amd64.
Preparing to unpack .../20-libignition-msgs5-dev_5.8.1+ds-2_amd64.deb ...
Unpacking libignition-msgs5-dev:amd64 (5.8.1+ds-2) ...
Selecting previously unselected package libignition-transport8-dev:amd64.
Preparing to unpack .../21-libignition-transport8-dev_8.2.1+ds-2_amd64.deb ...
Unpacking libignition-transport8-dev:amd64 (8.2.1+ds-2) ...
Selecting previously unselected package libtinyobjloader-dev:amd64.
Preparing to unpack .../22-libtinyobjloader-dev_2.0.0~rc5+dfsg1-5build1_amd64.deb ...
Unpacking libtinyobjloader-dev:amd64 (2.0.0~rc5+dfsg1-5build1) ...
Selecting previously unselected package libignition-common3-core-dev:amd64.
Preparing to unpack .../23-libignition-common3-core-dev_3.14.0+dfsg-5_amd64.deb ...
Unpacking libignition-common3-core-dev:amd64 (3.14.0+dfsg-5) ...
Selecting previously unselected package libignition-common3-av3:amd64.
Preparing to unpack .../24-libignition-common3-av3_3.14.0+dfsg-5_amd64.deb ...
Unpacking libignition-common3-av3:amd64 (3.14.0+dfsg-5) ...
Selecting previously unselected package libignition-common3-av-dev:amd64.
Preparing to unpack .../25-libignition-common3-av-dev_3.14.0+dfsg-5_amd64.deb ...
Unpacking libignition-common3-av-dev:amd64 (3.14.0+dfsg-5) ...
Selecting previously unselected package libignition-common3-graphics3:amd64.
Preparing to unpack .../26-libignition-common3-graphics3_3.14.0+dfsg-5_amd64.deb ...
Unpacking libignition-common3-graphics3:amd64 (3.14.0+dfsg-5) ...
Selecting previously unselected package libignition-common3-graphics-dev:amd64.
Preparing to unpack .../27-libignition-common3-graphics-dev_3.14.0+dfsg-5_amd64.deb ...
Unpacking libignition-common3-graphics-dev:amd64 (3.14.0+dfsg-5) ...
Selecting previously unselected package libignition-common3-profiler3:amd64.
Preparing to unpack .../28-libignition-common3-profiler3_3.14.0+dfsg-5_amd64.deb ...
Unpacking libignition-common3-profiler3:amd64 (3.14.0+dfsg-5) ...
Selecting previously unselected package libignition-common3-events3:amd64.
Preparing to unpack .../29-libignition-common3-events3_3.14.0+dfsg-5_amd64.deb ...
Unpacking libignition-common3-events3:amd64 (3.14.0+dfsg-5) ...
Selecting previously unselected package libignition-common3-dev:amd64.
Preparing to unpack .../30-libignition-common3-dev_3.14.0+dfsg-5_amd64.deb ...
Unpacking libignition-common3-dev:amd64 (3.14.0+dfsg-5) ...
Selecting previously unselected package libignition-fuel-tools4-dev:amd64.
Preparing to unpack .../31-libignition-fuel-tools4-dev_4.4.0+ds-3build1_amd64.deb ...
Unpacking libignition-fuel-tools4-dev:amd64 (4.4.0+ds-3build1) ...
Selecting previously unselected package libsdformat9-dev:amd64.
Preparing to unpack .../32-libsdformat9-dev_9.7.0+ds-1_amd64.deb ...
Unpacking libsdformat9-dev:amd64 (9.7.0+ds-1) ...
Selecting previously unselected package libsimbody-dev:amd64.
Preparing to unpack .../33-libsimbody-dev_3.6.1+dfsg-7build1_amd64.deb ...
Unpacking libsimbody-dev:amd64 (3.6.1+dfsg-7build1) ...
Selecting previously unselected package libgazebo-dev.
Preparing to unpack .../34-libgazebo-dev_11.10.2+dfsg-1_amd64.deb ...
Unpacking libgazebo-dev (11.10.2+dfsg-1) ...
Selecting previously unselected package ros-humble-camera-calibration-parsers.
Preparing to unpack .../35-ros-humble-camera-calibration-parsers_3.1.5-1jammy.20230302.190359_amd64.deb ...
Unpacking ros-humble-camera-calibration-parsers (3.1.5-1jammy.20230302.190359) ...
Selecting previously unselected package ros-humble-camera-info-manager.
Preparing to unpack .../36-ros-humble-camera-info-manager_3.1.5-1jammy.20230302.190641_amd64.deb ...
Unpacking ros-humble-camera-info-manager (3.1.5-1jammy.20230302.190641) ...
Selecting previously unselected package ros-humble-gazebo-dev.
Preparing to unpack .../37-ros-humble-gazebo-dev_3.7.0-1jammy.20221108.145559_amd64.deb ...
Unpacking ros-humble-gazebo-dev (3.7.0-1jammy.20221108.145559) ...
Selecting previously unselected package ros-humble-gazebo-msgs.
Preparing to unpack .../38-ros-humble-gazebo-msgs_3.7.0-1jammy.20230112.154824_amd64.deb ...
Unpacking ros-humble-gazebo-msgs (3.7.0-1jammy.20230112.154824) ...
Selecting previously unselected package ros-humble-gazebo-ros.
Preparing to unpack .../39-ros-humble-gazebo-ros_3.7.0-1jammy.20230302.204832_amd64.deb ...
Unpacking ros-humble-gazebo-ros (3.7.0-1jammy.20230302.204832) ...
Selecting previously unselected package ros-humble-gazebo-plugins.
Preparing to unpack .../40-ros-humble-gazebo-plugins_3.7.0-1jammy.20230302.212617_amd64.deb ...
Unpacking ros-humble-gazebo-plugins (3.7.0-1jammy.20230302.212617) ...
Setting up libtar0:amd64 (1.2.20-8) ...
Setting up libtar-dev:amd64 (1.2.20-8) ...
Setting up libtinyobjloader1:amd64 (2.0.0~rc5+dfsg1-5build1) ...
Setting up libqwt-qt5-6 (6.1.4-2) ...
Setting up libignition-msgs5-5:amd64 (5.8.1+ds-2) ...
Setting up libignition-transport8-8:amd64 (8.2.1+ds-2) ...
Setting up freeglut3-dev:amd64 (2.8.1-6) ...
Setting up libignition-common3-3:amd64 (3.14.0+dfsg-5) ...
Setting up libignition-common3-events3:amd64 (3.14.0+dfsg-5) ...
Setting up libignition-common3-av3:amd64 (3.14.0+dfsg-5) ...
Setting up gazebo-common (11.10.2+dfsg-1) ...
Setting up ros-humble-camera-calibration-parsers (3.1.5-1jammy.20230302.190359) ...
Setting up libsimbody3.6:amd64 (3.6.1+dfsg-7build1) ...
Setting up ros-humble-gazebo-msgs (3.7.0-1jammy.20230112.154824) ...
Setting up libignition-fuel-tools4-4:amd64 (4.4.0+ds-3build1) ...
Setting up sdformat9-sdf (9.7.0+ds-1) ...
Setting up libignition-common3-graphics3:amd64 (3.14.0+dfsg-5) ...
Setting up libqtpropertybrowser5 (5.0.2-3) ...
Setting up libfreeimage-dev (3.18.0+ds2-6ubuntu5) ...
Setting up libspnav0 (0.2.3-1) ...
Setting up libqwt-qt5-dev (6.1.4-2) ...
Setting up libignition-common3-profiler3:amd64 (3.14.0+dfsg-5) ...
Setting up libtinyobjloader-dev:amd64 (2.0.0~rc5+dfsg1-5build1) ...
Setting up libsimbody-dev:amd64 (3.6.1+dfsg-7build1) ...
Setting up ros-humble-camera-info-manager (3.1.5-1jammy.20230302.190641) ...
Setting up libignition-common3-core-dev:amd64 (3.14.0+dfsg-5) ...
Setting up libignition-msgs5-dev:amd64 (5.8.1+ds-2) ...
Setting up libsdformat9-9:amd64 (9.7.0+ds-1) ...
Setting up libignition-common3-av-dev:amd64 (3.14.0+dfsg-5) ...
Setting up libignition-transport8-dev:amd64 (8.2.1+ds-2) ...
Setting up libignition-fuel-tools4-dev:amd64 (4.4.0+ds-3build1) ...
Setting up libignition-common3-graphics-dev:amd64 (3.14.0+dfsg-5) ...
Setting up libgazebo11:amd64 (11.10.2+dfsg-1) ...
Setting up libsdformat9-dev:amd64 (9.7.0+ds-1) ...
Setting up gazebo (11.10.2+dfsg-1) ...
Setting up libignition-common3-dev:amd64 (3.14.0+dfsg-5) ...
Setting up gazebo-plugin-base (11.10.2+dfsg-1) ...
Setting up libgazebo-dev (11.10.2+dfsg-1) ...
Setting up ros-humble-gazebo-dev (3.7.0-1jammy.20221108.145559) ...
Setting up ros-humble-gazebo-ros (3.7.0-1jammy.20230302.204832) ...
Setting up ros-humble-gazebo-plugins (3.7.0-1jammy.20230302.212617) ...
Processing triggers for desktop-file-utils (0.26-1ubuntu3) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for gnome-menus (3.36.0-1ubuntu3) ...
Processing triggers for libc-bin (2.35-0ubuntu3.1) ...
Processing triggers for man-db (2.10.2-1) ...
Processing triggers for mailcap (3.70+nmu1ubuntu1) ...
executing command [sudo -H apt-get install -y ros-humble-gazebo-ros]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
ros-humble-gazebo-ros is already the newest version (3.7.0-1jammy.20230302.204832).
ros-humble-gazebo-ros set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 61 not upgraded.
executing command [sudo -H apt-get install -y ros-humble-gazebo-ros2-control]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  ros-humble-gazebo-ros2-control
0 upgraded, 1 newly installed, 0 to remove and 61 not upgraded.
Need to get 203 kB of archives.
After this operation, 744 kB of additional disk space will be used.
Get:1 http://packages.ros.org/ros2/ubuntu jammy/main amd64 ros-humble-gazebo-ros2-control amd64 0.4.2-1jammy.20230327.051423 [203 kB]
Fetched 203 kB in 5s (43.8 kB/s)                         
Selecting previously unselected package ros-humble-gazebo-ros2-control.
(Reading database ... 440201 files and directories currently installed.)
Preparing to unpack .../ros-humble-gazebo-ros2-control_0.4.2-1jammy.20230327.051423_amd64.deb ...
Unpacking ros-humble-gazebo-ros2-control (0.4.2-1jammy.20230327.051423) ...
Setting up ros-humble-gazebo-ros2-control (0.4.2-1jammy.20230327.051423) ...
executing command [sudo -H apt-get install -y ros-humble-pal-gazebo-plugins]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  ros-humble-pal-gazebo-plugins
0 upgraded, 1 newly installed, 0 to remove and 61 not upgraded.
Need to get 212 kB of archives.
After this operation, 965 kB of additional disk space will be used.
Get:1 http://packages.ros.org/ros2/ubuntu jammy/main amd64 ros-humble-pal-gazebo-plugins amd64 4.0.3-1jammy.20230323.232948 [212 kB]
Fetched 212 kB in 3s (79.0 kB/s)                        
Selecting previously unselected package ros-humble-pal-gazebo-plugins.
(Reading database ... 440236 files and directories currently installed.)
Preparing to unpack .../ros-humble-pal-gazebo-plugins_4.0.3-1jammy.20230323.232948_amd64.deb ...
Unpacking ros-humble-pal-gazebo-plugins (4.0.3-1jammy.20230323.232948) ...
Setting up ros-humble-pal-gazebo-plugins (4.0.3-1jammy.20230323.232948) ...
executing command [sudo -H apt-get install -y ros-humble-pal-navigation-cfg-bringup]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-humble-pal-navigation-cfg-bringup
ERROR: the following rosdeps failed to install
  apt: command [sudo -H apt-get install -y ros-humble-pal-navigation-cfg-bringup] failed
  apt: Failed to detect successful installation of [ros-humble-pal-navigation-cfg-bringup]

B) Bug Description

(Remove section if not applicable)

how to reproduce

Steps to reproduce the behavior:

  1. Clone the humble-devel branch of the repository
  2. Add sources with vcstool
  3. Execute rosdep install --from-paths src --ignore-src -r -y in the bookros2_ws directory
  4. See error

Expected behavior

Expected the package to install successfully.

Desktop:

  • OS: Ubuntu 22.04
  • ROS2 Distro: Humble

Building error

Type of bug

  • [O ] A) Typo/error in Figure/text
  • [] B) Bug in code
  • C) General comment, recommendation or petition

Issue Description

Fail to build
$ colcon build --symlink-install
I got building error

A) Typo/Error Description

(Remove section if not applicable)

Screenshot

If applicable, add screenshots to help explain the problem.
image

how to reproduce

Steps to reproduce the behavior:

  1. cd ~
  2. mkdir -p bookros2_ws/src
  3. cd bookros2_ws/src
  4. git clone https://github.com/fmrico/book_ros2.git
  5. vcs import . < book_ros2/third_parties.repos
  6. cd ..
  7. rosdep install --from-paths src --ignore-src -r -y
  8. colcon build --symlink-install

Expected behavior

Building success

Screenshots

Desktop (please complete the following information):

  • OS: [e.g. Ubuntu 22.04]
  • ROS2 Distro [e.g. Foxy, Humble]

Additional context

Add any other context about the problem here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.