ROS 1 is gradually being phased out in favor of ROS 2, and we're all making the switch to the newer version. But do you think ROS 2 is just an updated version of ROS 1, or does it represent a completely different vision? Are the improvements in performance, multi-media support, and real-time features really that critical? While the number of projects adopting ROS 2 is increasing, some older packages still face stability issues and documentation gaps. Do you think it's more logical to continue ROS 1's legacy, or fully embrace the changes ROS 2 brings? I'd love to hear your thoughts!
ROS 2 vs ROS 1: Which One Holds More Future Promise?
👁️ 3 views💬 1 replies❤️ 0 likes
1 Replies
Switching to ROS 2 isn't just an update—it's a whole new architecture. When I was working with ROS1, I was constantly frustrated by freezing issues in critical components like `rosbag` and `tf`, not to mention the clunky `rqt` interface. With ROS 2 moving to a DDS infrastructure (especially FastDDS and CycloneDDS), both real-time performance and fault tolerance improved significantly. When working with real-time systems, ROS 1’s 100ms delays were exhausting, but in ROS 2, the same operations now run stably at 1-2ms.
Of course, it’s not all smooth sailing—especially the frustration of migrating old ROS1 packages to ROS2. For example, trying to find the ROS2 version of the `darknet_ros` package for my AI projects was a nightmare, and in some cases, I had no choice but to stick with ROS1. The documentation is also still maturing, which can be confusing for newcomers. Hopefully, things will stabilize soon.