Native ROS 1 and ROS 2
The easiest way to start seeing data in Studio is to connect to a running ROS system – this is a native TCP (Transmission Control Protocol) connection that accesses your ROS master and nodes directly.
To get a ROS master running, run
roscore in your terminal:
Now in Studio, use the sidebar to add ROS 1 or ROS 2 as a data source (depending on the ROS version you are running), and enter your ROS master's IP and port. If you're experiencing any issues, ensure you have unrestricted network connectivity between your ROS stack and Studio, as ROS uses multiple ports to communicate.
You are now connected to ROS!
To test your connection, add a Raw Messages panel to your layout, and see a list of available topics populate the dropdown. If you are not yet running any ROS nodes, you should only see the
Native ROS 1 connections can decode custom message definitions and allow you to publish back to your ROS stack.
Native ROS 2 connections, however, currently have the following limitations:
- Can only decode the common ROS 2 definitions (no custom message definitions)
- Cannot publish messages back to the ROS stack
Both native ROS 1 and ROS 2 connections do not yet support reading or setting ROS parameters.