-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ref 22742. Easy mode CLI tutorial #241
base: main
Are you sure you want to change the base?
Conversation
Signed-off-by: Eugenio Collado <[email protected]>
45473ce
to
17b810c
Compare
Signed-off-by: Eugenio Collado <[email protected]>
17b810c
to
0330a4e
Compare
Signed-off-by: Eugenio Collado <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great tutorial explaining all the CLI features with GIFs and diagrams! Leaving some suggestion to clarify a few things
|
||
.. code-block:: bash | ||
|
||
# Terminal 1 -> Host A |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Again, if you follow the tutorial linearly, these servers will already be running. Should we stop them after each sub-section to have a "clean" setup?
This command can be used on any server to connect it to any other server, removing the concept of master servers and enabling a fully meshed network where all | ||
servers can communicate with each other. For example, if A connects to B and B connects to C, then A and C are also connected. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From my point of view, this seems to indicate that the add
command is responsible of the mesh topology, which is not accurate. If A is the master and B and C connect to it, B and C will also be connected, without the need of using the add
command. I would rewrite this to explain that the add command enables joining new servers to the topology without the need of restarting them or if a new master_ip
wants to be used. Also, we can add the explanation of the mesh topology to the note of the Start section that details the concept of master_ip
This can be observed as the publisher gets stuck in the "Waiting for at least one matching subscriber" state. | ||
* Next, we will add Host B as a remote server to the Discovery Server on Host A. This establishes a connection between A and B, but Host C still does not receive any data. | ||
* Finally, we will add Host C as a remote server to the Discovery Server on Host B. Due to the meshed network setup, Hosts A, B, and C are now fully connected. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to add the commands that the user must use in each terminal in order to replicate this example
# Terminal 1 -> Host A | ||
ROS2_EASY_MODE=$B_IP fastdds discovery start -d 1 $B_IP:1 | ||
ROS_DOMAIN_ID=1 ROS2_EASY_MODE=$B_IP ros2 topic pub /chatter std_msgs/msg/String "{data: 'Hello world in domain 1 from HOST_A'}" --once --spin-time 2 | ||
ROS2_EASY_MODE=$C_IP fastdds discovery set -d 1 $C_IP:1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to handle this case in the CLI
No description provided.