" "

ROS2 Migration: What are the challenges and how MOV.AI can help

About MOV.AI 

MOV.ai disrupts Autonomous Mobile Robot development with a Robotics Engine Platform that contains everything needed to quickly build, deploy and operate intelligent robots.


With the upcoming migration from ROS to ROS2, software leaders across the robotics industry need to start considering their options. However, the best course of action is not immediately apparent: the significant differences between ROS and ROS2 make the migration process challenging and slow, and ROS2 is still under development and not yet stable.

ROS2 migration looms over the industry like a dark cloud. Everyone knows it is coming, but companies are stuck between starting their lengthy ROS2 migration processes and not wanting to work in vain, making changes for an unstable and underdeveloped version.

What should software companies do when facing a trade-off where both options seemingly bring downsides? Let’s first discuss the reasoning behind ROS2 and the migration challenges.

Upgrading from ROS to ROS2

Starting May 2025, the most recent ROS distribution, ROS Noetic Ninjemys, will no longer be supported. This means no future updates, with developers shifting focus entirely to the new framework. No support and updates by definition means no security updates, so anyone still using ROS after this date will be open to security vulnerabilities.

In 2022, the team behind ROS2 published a paper describing the new open-source project and the motivation behind it. ROS2 has been completely redesigned from the ground up, including production-grade features and algorithms to meet the challenges of modern robotics use cases. These include:

  • Developing a standard approach to deploying teams of multiple robots or multi-robot systems
  • Enabling ROS2 on embedded systems instead of segregating them with a device driver
  • Real-time control directly in ROS2, including inter-machine and inter-process communication
  • Clearer patterns and tools for features such as lifecycle management

ROS2 will be an entirely new framework with native security features (end-to-end encryption, authentication, access control, etc.), multi-platform support (easier to run on Windows and MacOS as well as Linux), a new build system based on colcon, a new Quality of Service (QoS) system to specify communication standards, support for a wider range of languages (including Java and C# on top of C++ and Python), and changes to the API and data format.

ROS2 uses Data Distribution Service (DDS) as its middleware instead of a master-slave architecture. This offers several features for ROS2 systems, including distributed discovery instead of a centralized approach.

At a granular level, ROS2 upgrades ROS nodelets into components, changing their implementation, lifecycle management, how they are launched, and some of their capabilities. ROS2 components offer greater flexibility, portability, and language support. Decoupling ROS2 components from the middleware delivers better integration, ensuring ROS2’s use with a diverse range of applications.

ROS2 standardizes node lifecycle management, streamlining both their development and maintenance as well as ensuring consistency. ROS2 also provides a new, more composable launch system, such that nodes and other files can be launched in a more modular manner. This system is more powerful than the XML-based ROS launch files.

Current challenges of ROS2 and ROS2 migrations

While all this sounds great, and the ROS2 framework has the potential to bring many benefits to the industry, all these changes create a lengthy and challenging migration process. Updating from ROS to ROS2 requires a complete redevelopment down to each individual node. Migration could take anywhere from six months (for simple projects) to a year or more for in-depth projects.

Beyond the migration of every node, ROS2 brings with it an entirely new architecture, communications protocol, and more. Businesses must allocate significant time for developers to come to grips with the new framework and learn the best strategies to migrate their projects. This includes redesigning and adapting any in-house workarounds developed to cover enterprise readiness gaps in the ROS framework.

On top of this, there are also a number of challenges that come with implementing ROS2:

  • Differing time value parameters across nodes
  • Deadlocks when calling a service synchronously from another callback
  • Remnant Nodes running in the background
  • Miscellaneous issues with DDS

Finally, despite the huge strides already made in ROS2, it is still unstable and does not fully deliver the benefits promised in the vision.

With time-consuming ROS2 project migrations and issues remaining with the new framework itself, software companies could do with some help in making the transition. That is where MOV.AI comes in.

The easier path to ROS2 migration with MOV.AI Flow™

MOV.AI Flow™ has a range of features to simplify, streamline, and improve the ROS2 migration process. The source-available Visual ROS IDE brings structure and clarity to ROS projects, cutting migration efforts by up to 90% while also enhancing stability and improving development flexibility.

It is a development platform built directly on top of ROS which improves development and understanding while also simplifying debugging. The IDE provides a simple web-based GUI for users to design robot flows using ROS nodes and their own callbacks.

Flow offers several functionalities that make it easier to:

  • Define and control behaviors such as GoTo a Position, Pick, Drop, Scan, Dock, Lift, etc.
  • Simulate scenarios for any robot—With a built-in Gazebo simulator, users can simulate low-level sub-systems to speed up development and simulate the whole robot in a simulated environment, while ensuring the same software that runs in a simulation would run on the real hardware.
  • Debug code and analyze nodes with visual debugging tools at the robot-behavior level.
  • Easily switch from offline development to runtime environment, where MOV.AI Flow™ automatically launches and orchestrates the nodes based on the defined flow and its state machine.

MOV.AI Flow™ provides integrated node orchestration to avoid complicated and long launch files defining node parameters and remappings. MOV.AI Flow™ implicitly understands how to launch each node from the visual representation, saving developers significant time, particularly when migrating nodes from ROS to ROS2.

Additionally, MOV.AI Flow™ provides stable hybrid orchestration for both ROS and ROS2 in a single framework. This allows companies to create a tiered migration process rather than wait to transfer the whole codebase at once.

Flow is not a magic fix for the entire ROS2 migration process, but when utilized to its full potential, it cuts redevelopment efforts to 10% of the original thanks to visual tools and enhanced node migration features.

Shorter migration times reduce the urgency among robot software developers. With MOV.AI helping you oversee ROS2 migration, you can take your time and wait before you start. Implementing the new framework once it is more stable and has more support for new components and functionality.

Click for simpler ROS2 migration

Represent your existing software in the MOV.AI platform

Organizations can quickly and effectively represent their existing ROS nodes within the MOV.AI IDE. Simply use the drag-and-drop editor to orchestrate your nodes with MOV.AI Flow™ (using helpful visual tools), defining lines of communication between them and a state machine that orchestrates the nodes on runtime.

Once your code is represented in MOV.AI Flow™, you are well on your way to ROS2 migration, ready to convert nodes to the new framework when the time is right for your company.


In conclusion

Robot manufacturers want to transfer to ROS2 as soon as possible. They don’t want new robots running on a framework that will be terminated in May 2025. However, software companies face issues with the stability of ROS2 on top of a lengthy migration process that will take significant time away from other development projects.

To reduce the impact of ROS2 migration, robot software developers can look to MOV.AI and the new Flow IDE. Representing your software on the MOV.AI Flow™™ platform puts you in the best position to rapidly and accurately migrate to ROS2 once the framework is more mature. MOV.AI Flow™ offers a range of tools and functionality to reduce the time needed for ROS2 migration by 90%.

A range of other benefits include:

  • Built-in multi-protocol communication
  • Advanced navigation
  • Localization and motion algorithms
  • Deployment tools
  • Simple integration with enterprise environments and fleet management

Get in touch today and learn how to make your ROS2 migration as pain-free as possible.

Sign up for news update

*By providing my details I agree to the MOV.AI Terms and conditions and Privacy policy. I also agree to receive emails from MOV.AIand I understand that I may opt out of MOV.AI subscriptions at any time.

Ready to build awesome robots?

We use cookies to so that you can enjoy the best experience on our website. If you continue to use this site we will assume that you are happy with it.
Skip to content