ROS2 Basics in 5 Days (Python), Part 4 Services, errors in notebook


I had an issue with section 4.7 Use a Custom Interface - Example 4.6 -
This example has 10 step. I will elaborate about the problems I had with few of the steps

Problem 1: step 8, see picture below, shell # don’t match

Problem 2: step 8, see picture below, shell # don’t match
This is not what one should write in shell #2 (assuming first time in use or after login or reconnect)

What one should write is the following (assuming first time in use or after login or reconnect)
See picture below with my mistakes and marked in yellow the steps

Mabey it is just a mistake by me but as first time in ROS2 this things are tricky.

Problem 3: step 8, see picture below, this is not the output in shell #1 it is the out put in Shell#2 and the graphics window with the robot
you can even see the white line under shell#2 in the picture stating it is shell#2

Problem 4: step 9, step 10, see picture below
step 10 is not 10 but 8 (after 9), see black circle in picture
again problem with text referring to shell numbers, see yellow marker and red circle in picture

It would be appreciated if you can fix the above mentioned errors.
Myself and my team will be very happy

And as always we are glad to comment about those issues, hoping it will help you improve for us and for others.

Thank you

Hello TAURD,

I am another user, not part of the team. Just wanted to point out two general guidelines to keep in mind regarding the topics you mention:

  1. There is no substantial difference between shell 1 & 2, or any other shell. You simply use shell 2 or further whenever the previous ones are busy e.g. running a server script.
  2. source /opt/ros/foxy/setup.bash is the command which ‘activates’ ros2 (foxy in this case). So every time you use a fresh terminal (so when you go to use the shell 2 for the first time in the day or after closing the website and coming back from your coffee with spam) you should run the command.
    It is most probably not stated in the point you mentioned because the creators assumed that you (or anyone) would do the unit in one go without interruptions. Hence it is only mentioned at the very beginning of the unit. Else they would have to mention it before every command! Because they don’t know when are we taking a break.

Hope this helps a bit. Still those shell mismatch should be fixed

Of course, it was very helpful
No one should hope TheConstruct will fix other issues and consider revise some explanations for those who can not finish this course in one shot (kudos to the ones who can do 23 hours in one shot and moreover can do this course in 23 hours, with quizzes, with live project all the way to the certificate).

Sorry. By unit I meant the Services chapter, not the entire course.

You can see here how at the beginning of each chapter the first script is `source /opt/ros/foxy/setup.bash` (or a similar source command)

Thanks @TAURD for calling out these errors. We’ll fix them right away.

Thanks @GasPatxo for providing your perspective here, you are right about our assumption! We will take that further by making it clear that the shells need to be sourced before you use them for the first time.

This is an unwritten expectation of some sort for ROS developers, or we’ll have to include the source command in every command and it would be super boring :wink:.

Update: the errors pointed out have been corrected.

This topic was automatically closed after 2 days. New replies are no longer allowed.