Networking
This section covers general information about how ROS 2 networking works, how to configure ROS 2 networking, general Wi-Fi information and detailed troubleshooting guides.
Connecting to a Wi-Fi Network
Clearpath uses netplan
to manage the robot's network interfaces, including wireless network connections.
See Connecting to an Existing Wi-Fi Network for details on how to
connect your robot to an existing wireless network.
Wi-Fi Fundamentals and Hardware
ROS 2 communication can be demanding on networks, particularly wireless networks. At times, difficulties with ROS 2 communication can actually stem from core Wi-Fi stability and reliability issues. The Wi-Fi Fundamentals and Wi-Fi Hardware pages discuss important concepts useful for optimizing Wi-Fi networks for use with ROS 2 mobile robots.
Connecting via Ethernet
Most Clearpath robots will have at least one accessible ethernet port that can be used to connect directly
to the robots computer. Connect an ethernet cable directly between the robot's ethernet port and your
laptop. Then configure your computer's ethernet connection to have a static IP address in the
192.168.131.100
to 192.168.131.254
range (netmask: 255.255.255.0
). The robot's computer will
be accessible at 192.168.131.1
.
Some robots with custom integrations may have all of their physical ethernet ports used to connect sensors and other network-based equipment. Please refer to your robosmiths memo for details on your robot's exact configuration.
Wired LAN IP Addresses
All Clearpath robots use the 192.168.131.0/24
subnet for any permanently-installed network hardware. This includes,
but may not be limited to
- the robot's primary computer,
- the robot's MCU,
- a secondary computer (if present),
- any cameras, lidar, or other sensors that communicate over Ethernet, and
- any long-range wireless radios.
The 192.168.131.0/24
subnet is statically configured; all devices are configured to use a static IP address, and
there is normally not a DHCP server operating on this subnet.
For a list of standard payload IP addresses, please see Reserved IP Addresses.
SSH and SFTP
Clearpath robots ship with an SSH server operating on port 22 for remote login. This server also supports sftp for file-transfer to/from the robot if needed.
You can log into the robot using the default username robot
and password clearpath
.
Clock Synchronization
If your robot contains multiple computers, their clocks must remain synchronized to allow proper communication between
ROS nodes running on each one. Clearpath configures the computers to use chrony
to synchronize the clocks, with the
primary computer being the authoritative source for the others.
For details on configuring chrony
, please see configuring NTP.
ROS 2 Networking
There are many nuances to working with ROS 2 nodes and ensuring that all components are communicating properly. The most important of these concepts are reviewed in the ROS 2 Communication page.
For the best chance of success, use a high speed, high bandwidth network and monitor the network usage.
ROS 2 Discovery Configuration
The Clearpath robot packages currently support eProsima Fast DDS as the ROS Middleware (RMW) Implementation. This middleware has two supported options for ROS 2 node discovery, Simple Discovery and Discovery Server. Each of these discovery mechanisms has their own use case:
Simple Discovery
- Default, does not require manual setup
- Generally operates on the basis that any ROS 2 devices on the network should be discoverable and connect automatically
- Requires multicasting on the network (may be restricted on school or corporate networks)
- Good for simple systems (small number of nodes on a dedicated local network)
Discovery Server
- Requires manual configuration in
robot.yaml
- Generally operates on the basis that ROS 2 networks should be controlled and should only discover other nodes as needed
- Does not require multicasting (more likely to work on school or corporate networks)
Further information on ROS 2 Discovery Configuration.
Network Troubleshooting
There are many things that can go wrong when setting up ROS 2 networking. To aid in this process, a troubleshooting section is available with flowcharts to guide the process of troubleshooting two computers that are not communicating properly as well as discussion of common issues that can cause intermittent or unreliable communication. A list and description of troubleshooting tools is also available to assist in the troubleshooting process.