Main Content

ROS Toolbox

Design, simulate, and deploy ROS-based applications

ROS Toolbox provides an interface connecting MATLAB® and Simulink® with the Robot Operating System (ROS and ROS 2), enabling you to create a network of ROS nodes. The toolbox includes MATLAB functions and Simulink blocks to import, analyze, and play back ROS data recorded in rosbag files. You can also connect to a live ROS network to access ROS messages.

The toolbox lets you verify ROS nodes via desktop simulation and by connecting to external robot simulators such as Gazebo. ROS Toolbox supports C++ code generation (with Simulink Coder™), enabling you to automatically generate ROS nodes from a Simulink model and deploy to simulated or physical hardware. Support for Simulink external mode lets you view messages and change parameters while your model is running on hardware.

Get Started

Learn the basics of ROS Toolbox

ROS Network Access

Connect to ROS networks with MATLAB and Simulink

ROS 2 Network Access

Connect to ROS 2 networks with MATLAB and Simulink

ROS Log Files and Specialized Messages

Analyze rosbags, ros2bags, and access messages from specialized sensors and inputs

ROS Custom Message Support

Create ROS and ROS 2 custom messages

ROS Node Generation and Deployment

Generate C/C++ and CUDA code for ROS nodes and deploy to local and remote hardware

ROS 2 Node Generation and Deployment

Generate C/C++ and CUDA code for ROS 2 nodes and deploy to local and remote hardware

ROS Application Examples

Simulate ROS and Gazebo applications, connect to TurtleBot® hardware

ROS Toolbox Supported Hardware

Support for third-party hardware