Main Content

ROS Toolbox System Requirements

To generate custom messages for ROS or ROS 2, or deploy ROS or ROS 2 nodes from MATLAB® or Simulink® software, you must build the necessary ROS or ROS 2 packages. To build these packages, you must have Python® software, CMake software, and a C++ compiler for your platform. To connect to ROS and ROS 2 networks with the rosinit function, you must install and set up the required version of Python.

To generate and deploy ROS or ROS 2 nodes from MATLAB or Simulink, you must also have a MATLAB Coder™ or Simulink Coder license respectively. To generate and deploy CUDA® optimized ROS or ROS 2, you must have a GPU Coder™ license.

Note

The nodes in MATLAB and Simulink software can still communicate with ROS or ROS 2 nodes in ROS or ROS 2 distributions that are not included in Recommended ROS and ROS 2 Distributions, only if the message definitions are the same.

Recommended ROS and ROS 2 Distributions

Release-wise Support for Recommended ROS and ROS 2 Distributions

MATLAB ReleaseROS DistributionROS 2 Distribution
R2025aNoetic NinjemysJazzy Jalisco
R2023b to R2024bNoetic NinjemysHumble Hawksbill
R2022a to R2023aNoetic NinjemysFoxy Fitzroy
R2020b to R2021bMelodic MoreniaDashing Diademata
R2019b to R2020aIndigo IglooBouncy Bolson
R2016 to R2019aIndigo IglooNot supported

Third-party Software

Note

Starting R2022b, manual installation of CMake is not required.

 R2025a

 R2024b

 R2023b to R2024a

 R2023a

 R2022b

 R2022a

 R2020b to R2021b

Configure Python Environment

Release-wise Information to Configure Python Environment

MATLAB ReleaseConfigure Python Environment
R2022b and onwards

 Configure Python Environment Using ROS Toolbox Preferences

Prior to R2022b

 Configure Python Environment Using pyenv Function

Tips

ROS communication does not have built-in security, which means it can be exposed to risks like unauthorized access, eavesdropping, or data spoofing by undesired users. Additionally, nodes that join later may still access data that was transmitted earlier. To mitigate these risks, restrict ROS communication to trusted wired or wireless networks and implement robust network security practices, such as using the strongest authentication methods available. Additionally, download and use the secure version of your vendor’s communication framework, if available, and configure it to align with the latest security best practices.

Docker and Virtual Machine Installation and Setup

Install and set up the Virtual Machine image included with the ROS Toolbox, based on Ubuntu Linux and preconfigured to support the ROS examples in the ROS Toolbox. Use the Docker image included with the ROS Toolbox, which is also based on Ubuntu Linux and configured to support the ROS and ROS 2 examples in the ROS Toolbox.

See Also

Topics