ROS 1 and ROS2 - Key Differences
Some of the key differences between ROS 1 and ROS 2 have been listed below:
- ROS 1 was first published in 2007, while ROS 2 was officially released in 2017.
- ROS 1 can only be programmed using C++ 03, C++ 11, and python 2. ROS 2 can be programmed using C++ 11, C++ 14, C++ 17, and python 3.5.
- ROS 1 supports the Ubuntu and OS X operating environment, while ROS 2 supports Ubuntu Xenial, Windows 10, and OS X El Captain.
ROS 1 and ROS2 - Industry Usage Statistics
The usage rates for various ROS 1 and ROS 2 packages by the ROS community have been listed below:
- (ROS 1) Hydro and earlier: 0.00%
- (ROS 2)Bouncy and earlier ROS 2: 0.12 %
The complete list of release packages for ROS 1 can be found here, while the complete list of release packages for ROS 2 can be found here.
Summary of Findings
In our initial hour of research, we were able to identify a number of differences between ROS 1 and ROS 2. As it stands, ROS 2 was designed to improve and modernize ROS 1. However, the majority of the ROS community still actively makes use of ROS 1, and less than 5 percent of the community has moved to ROS 2.