ROS Blog
Checkout the latest from ROS
Upcoming ROS 1 End of Life
12/16/2024, Kat Scott
ROS 1 Noetic Ninjemys goes End-of-Life 2025-05-31
If you have been directed to this page it was probably because you saw one of the notifications we slipped into the source code for ROS Noetic or RViz. We’ve heard from a number of users that they were unaware that ROS 1 Noetic, and consequently all of 1, will go end-of-life on May 31st, 2025. We’re sorry that we interrupted your work, but it is crucial that you know what happens once ROS 1 goes end-of-life.
ROS Noetic Ninjemys, the last ROS 1 release, will reach End of Life in May 2025. Over the past five years we focused our efforts on making ROS 2 a world class framework for professional robot development, and our user community seems to agree. According to September 2024 download data from our servers ROS 2 downloads now make up almost 80% of all ROS downloads. We’ve now seen ROS 2 used successfully in production by a large number of companies, across dozens of industries, and we think it is time for the last remaining ROS users to make the switch.
What Does End-of-Life Mean?
End of life for ROS Noetic means that the ROS team will no longer support ROS 1. After May 31st of 2025, the ROS team will no longer provide the following for ROS 1:
- New features or capabilities
- Security updates
- Bug fixes, patches or support
- Updated binaries
After May 31st, 2025 ROS 1 Noetic users may find themselves exposed to un-patched security vulnerabilities and bugs, with few avenues of support short of fixing these issues themselves and recompiling Noetic from source. However, this isn’t an outright emergency, it is good to keep mind what won’t change after May of 2025.
ROS 1 going end of life does not mean:
- ROS 1 binaries will suddenly disappear.
- ROS 1 binaries will continue to be hosted on
packages.ros.org
- ROS 1 binaries will continue to be hosted on
- ROS 1 projects will suddenly stop working on May 31st.
- ROS 1 will continue to work, as it does today.
- Users must stop using ROS 1 immediately,
- ROS 1 will continue to work, but you should have migration plan as soon as possible.
ROS 2 Migration Options
If you are still using ROS 1 it is time to consider switching to ROS 2 Humble Hawksbill (migration guide) or ROS 2 Jazzy Jalisco (migration guide). Which distro you choose as your migration target is going to depend on the complexity of your ROS 1 system. This migration heuristic tool can help you estimate the complexity of migrating your project to ROS 2. If you have a smaller ROS 1 project, or a reasonably de-coupled workspace, it is most likely that you can migrate to ROS 2 Jazzy Jalisco directly. The ROS community has produced a number of migration tools which you may find helpful, including this migration tool from AWS Labs, and this migration tool from ROS maintainer David Lu!
If your ROS 1 system is tightly coupled, has a number of un-ported dependencies, or is reasonably complex, you may want to take advantage of the ROS 1 to ROS 2 Bridge. The ROS 1 to ROS 2 Bridge performs automated translation between major ROS versions and should allow you to migrate your project one package at a time. The ROS 1 to ROS 2 Bridge was intended to only support ROS 2 distros prior to and including ROS 2 Foxy, and due to operating system constraints it is no longer fully supported by the current ROS 2 releases. However, with a little bit of work, it is still possible to use the ROS 1 / ROS 2 bridge with Noetic and a current ROS 2 distro. Users can either compile ROS 2 Humble from source for Ubuntu 20.04, which has Tier 3 support, or use ROS-O binaries to build their packages on a newer version of Ubuntu (i.e. 22.04 of 24.04).
Other Migration Options
We highly recommend you migrate your ROS 1 project to ROS 2 as soon as possible. Most users have found the migration process less difficult than they initially expected. If you simply can’t migrate your ROS 1 project right now, you do have a few options, however, none of these solutions are officially supported, and we can’t speak to their long-term robustness.
- Canonical, offers extended security maintenance for a number of ROS 1 host operating systems for a fee.
- ROS-O is a volunteer run effort to extend the support lifetime of ROS 1 projects.
- If you simply need an extra set of hands to help with your migration you are welcome to use our jobs board on ROS Discourse to find some help.
What’s New in ROS 2?
Before you begin your ROS migration journey, we recommend you read up on some of the new and improved features in ROS 2. We’ve put together a collection of resources that outline some of the major changes in ROS 2. Almost all of these resources are readily available as part of our migration guide in the ROS 2 documentation. While understanding what has and hasn’t changed between ROS 1 and ROS 2 can make the migration process go a lot smoother, it really isn’t necessary to get started! There’s a lot to love in ROS 2, and we think you’ll find some of the new ROS 2 features make for a much better user experience.
Changes to the ROS API
Most of the ROS 2 API should look familiar to ROS 1 users with a few notable exceptions. Where things have changed, they have changed to address shortcomings in ROS 1. The exciting thing about ROS 2 is that it has given us the opportunity to address a number of user complaints about ROS 1! The list below outlines some of the larger changes to the ROS API found in version 2.
- Nodelets in ROS 1 have been replaced with ROS 2’s composable nodes concept. ROS users can now compose their processing routines into the same process space using both compile time and run time composition.
- Parameters in ROS 2 now support namespacing, and there is an improved interface for loading, saving, and reconfiguring your parameters. This migration guide provides guidance on how to migrate your parameter set.
- ROS 2 supports three different types of launch files: YAML, Python, and XML. There is a complete guide to migrating your ROS 1 launch files available on docs.ros.org.
- The ROS 2 lifecycle node API has standardized the lifecycle of ROS nodes. The process of starting and stopping ROS nodes is now much more robust. We recommend taking advantage of this feature when migrating your ROS 1 project.
- ROSBag performance has improved significantly in ROS 2, and the new ROS 2 type adaptation makes it even easier to share data using ROS Bags. As of ROS 2 Humble MCap is now the standard ROSBag data format.
- If you are looking for examples of common ROS 2 design patterns the ROS 2 Cookbook offers code samples for common ROS 2 tasks.
ROS Development
The ROS build and command line tools have also gotten a face lift in ROS 2.
While there have been a few changes, the way you build and run your ROS application should feel familiar. All of our new tools are self-documenting, and you can learn a lot by simply passing them the --help
option.
- The ROS command line interface (CLI) syntax has changed slightly in ROS 2. All your favorite commands are still there, but the syntax has been modernized.
- ROS 2 uses Colcon, rather than
catkin build
orcatkin_make
, as the build tool. The names have changed, but most of your favorite functionality is still there. - Ament is a collection of ROS build tool helper functions. Ament wraps common build tasks and exposes them to Colcon and ROS.
The ROS Middleware Layer (RMW)
ROS 1’s bespoke publish / subscribe layer was very simple to use, but also difficult to configure for more complex use cases. In ROS 2 users have a choice about which protocol they would like to use to move data across their network. This new abstraction layer is called a ROS Middleware Layer (RMW), and users can pick the vendor that best supports their application. If you don’t know which RMW is right for you, we suggest you use the default RMW that ships with your distro, however ROS 2 users now have multiple official and unofficial ROS RMWs to choose from, including:
- DDS-based RMWs like Fast-DDS and Cyclone DDS.
- We recommend new DDS users read our tuning guide and familiarize themselves with utilities like the Fast-DDS Discovery Server when using WiFi networks.
- A preview of RMW-Zenoh is available in ROS 2 Jazzy, and binaries for the new RMW are now available via apt.
- Other community supported and proprietary RMWs are also available including RTI Connext, IceOryx2, Gurum-DDS and even, e-mail.
Related Projects
Most of the major ROS packages and projects have already upgraded to ROS 2. Our sister project, Gazebo, is also in the process of migrating to its second major release, and many ROS users are also making the switch to a modern version of Gazebo. You don’t necessarily need to upgrade both ROS and Gazebo at the same time, but it is important to note that Gazebo Classic reached end of life in 2025 too. Other related ROS projects like MoveIt, Nav2, and ros2_control also have new and improved releases that are production-ready for your robotics application!
- We recommend Gazebo users migrate their Gazebo simulation to a modern version of Gazebo.
- Starting with ROS 2 Iron Irwini, binaries for modern Gazebo are readily available, while in older versions modern Gazebo and ROS 2 are supported through source compilation (e.g. Humble and Fortress). ROS 2 / modern Gazebo integration is accomplished using the
ros_gz
repository.
- Starting with ROS 2 Iron Irwini, binaries for modern Gazebo are readily available, while in older versions modern Gazebo and ROS 2 are supported through source compilation (e.g. Humble and Fortress). ROS 2 / modern Gazebo integration is accomplished using the
- If your robot supports custom hardware, it may be worth investigating micro-ROS.
- MoveIt2, the latest version of MoveIt, has a complete migration guide available in their official documentation.
- Nav2, the ROS 2 navigation framework, has complete documentation available for new users.
- ROS 2 Control is the new ROS 2 control framework with extensive documentation.
Where To Find Help
You don’t just have to take our word for it, a number of professional ROS users have already made the jump to ROS 2 and written about their ROS migration experience. We’ve collected a few relevant blog posts below:
- Husarion Blog on ROS 2 Migration
- ROS 2 Migration Guide using the TurtleBot 2
- Robotics Back End Migration Guide
- ROS Industrial Migration Guide
At ROSCon 2024, our annual ROS developers conference, an overwhelming majority of the talks were about ROS 2. Below you find a collection of ROSCon talks that directly cover the process of migrating from ROS 1 to ROS 2.
- ROSCon 2022: “Migrating from ROS1 to ROS2 - choosing the right bridge”
- ROSCon 2019: “Migrating a large ROS 1 codebase to ROS 2”
- ROSCon 2019: “Migrating to ROS 2: Advice from Rover Robotics”
- ROSCon 2019: “Bridging Your Transitions from ROS 1 to ROS 2”
Robotics is a tough field but the ROS community is always happy to help! Below you’ll find a list of community resources that can support you in migrating your ROS system. If you run into migration problem that you just can’t solve feel free to swing by our Discord server for some advice.
- Discourse – our ROS discussion forum.
- ROS Discord – our live discussion server.
- Robotics Stack Exchange – our preferred Q&A forum.
- Official ROS 2 Documentation – our official ROS documentation.
- ROS Package API reference – API documentation for ROS package.
- ROS Package Index – our list of ROS packages and binaries of their source code.
- ROS on Docker Hub – a complete collection of ROS Docker containers for every ROS distro.
New Open Robotics Discord Server
03/14/2023, Kat Scott
New Open Robotics Discord Server
As part of the growth of OSRF as a fully-independent entity, we’re reviewing all the services we do provide or should provide to the community for our projects - ROS, Gazebo, Open-RMF, and, although most don’t realize it, the infrastructure that supports them. Amongst those services are those used for communication by the community of users of the above projects. To support those members of the community who prefer a real-time chat-based method, OSRF has decided to launch an official Discord server.
This server contains spaces to talk about all OSRF projects, as well as talk about OSRF in general. In general, we hope it will be used for such things as the following.
-
Talking about OSRF projects (ROS, Gazebo, Open-RMF, and Infrastructure).
-
Informally discussing ideas for improvements before taking the result of those discussions to a more long-form medium such as GitHub issues, PRs, and Discourse.
-
Informally proposing how to implement or fix an issue from GitHub, such as asking if how you want to fix a bug would be a good way to do it, before making a PR.
-
Chatting to others about your cool robot project.
-
Organizing community events, both in your area and online.
For more information and a link to join the Discord server, see this post on the ROS Discourse.
ROS Media and Visual Assets
01/14/2022, Katherine Scott
Looking for a ROS Image?
We provide a wide variety of visual assets that the ROS community can use for their own projects and events. Most of the images are provided under a Creative Commons Attribution-NonCommercial 4.0 International License. The ROS distribution images and illustrations were created by San Francisco based illustrator Joshua Ellingson
High quality vector files of the ROS “nine dot” Logo can be found in the ROS Press Kit and Logos. Stylistic usage information for the ROS name and nine dot logo can be found in the ROS Brand Guide.
ROS Trademark Rules and Guidelines
The “ROS” name, the “Nine Dots” ROS logo, and other ROS trademarks are property of Open Source Robotics Foundation, Inc. (“OSRF” or “Open Robotics”).
Below are the relevant agreements, rules, and guidelines on displaying the ROS trademarks, which may be updated from time to time. Use of any ROS trademark must be in accordance with these Rules and Guidelines or separate agreement between you and Open Robotics.
Trademark Use
Subject to compliance with these Rules and Guidelines, you may use the “ROS” name or the “Nine Dots” ROS logo to indicate your implementation of the ROS platform as set forth in these Rules and Guidelines. All other uses of the ROS trademarks must be expressly approved in writing by Open Robotics. To inquire about approval to use the ROS trademarks or to submit your marketing for review, please contact info@openrobotics.org.
Any and all use of the “ROS” name, the “Nine Dots” ROS logo, and other ROS trademarks inures to the benefit of Open Robotics. You agree not to do anything inconsistent with Open Robotics’ ownership of these trademarks, including without limitation seeking registration of any mark, domain name, or social media name/handle comprised of or incorporating the “ROS” name, the “Nine Dots” ROS logo, or any other ROS trademarks. You likewise agree not to make any use of the ROS trademarks that is likely to confuse or mislead consumers with respect to any relationship with Open Robotics; and you agree not to make any use of the ROS trademarks that is likely to harm the reputation and goodwill built up in the marks. You acknowledge and agree that any and all licenses or permissions to use any ROS trademarks are limited, personal, non-transferable, non-sublicensable, and revocable. Open Robotics may revoke any such licenses or permissions in its sole and absolute discretion.
Fully updated copyright information for the ROS logos can be found in our ROS Trademark Guide, while styling recommendations can be found in our ROS Brand Guide.
Additional Resources
- ROS Illustrations
- ROS Distro Logos
- ROS Org Units
- ROS Brand Guide
- ROS Trademark Guide 2022
- ROS Press Kit and Logos
Test
06/28/2021
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
New blog post
06/26/2021, Jane Doe
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.