Participate in the O3DE Mascot Challenge & Design the new face of O3DE | HOW TO PARTICIPATE
NEWS & BLOGS | Tech Blog

Empowering Robotic Breakthroughs through Open Source

By O3DE | 07 Sep, 2023 | 4 min read

How do you think open source has impacted the world of robotics? In this blog, we discuss the potential for open source to drive progress and collaboration in complex engineering challenges, like robotics, and explore the value of community involvement and support, with a panel of industry experts. This is the final installation of a 3-part series about accelerating innovation in the field of robotics through open source. 

Q: How has open source impacted the world of robotics?

Mabel Zhang, Open Robotics: Before ROS, everybody was writing up their homebrew version of interface to talk between the robot, the hardware, the software and the middleware, so that, okay, now I can finally implement my computer vision algorithm. ROS really opened up the world to not having to build all the nitty, gritty, dirty stuff and actually focus on your solution. 

Lars Gleim, Huawei: With standards, there’s always this question, what comes first? Is it that, first you have the solution, and then you standardize it, or do you try to develop the standard and then implement it? 

As an example, with ROS, I don’t think that it was originally that well-intentioned to become the standard middleware for robotics. It came out of a need to modularize development and be able to share packages, and then became successful because you suddenly have building blocks that you can reuse and quickly build things that actually do something meaningful, right? You do not need to start developing your own driver for every sensor and actuator that you use. But just like with Linux, you install the operating system, the middleware, and you actually start working on the problem you’re trying to solve. 

And I think, for simulation, this is exactly where we need to go. We want to build a modular ecosystem where you have templates and open source packages that you can just integrate and reuse and build on.

Matt Hansen, AWS: I’m a huge proponent of ROS and ROS 2 myself, so I agree with Mabel that ROS and ROS2 have definitely improved the lives of roboticists over the last decade. I think we’re also seeing this with the simulators as well, right? Gazebo is open source, O3DE is open source. But the maintenance of those is a high effort, and so it’s a dual-edged sword there, so to speak. There’s a trade-off between having something that’s completely open and free. You do have to pay a cost at some point, so companies that want to use it should be contributing back, for example, to O3DE or Gazebo. Fix a bug. add a feature, contribute back upstream. I think it’s great for the overall community, but the word community is important. You need to have a community built around it where people are actually contributing, and it’s not just a small set of maintainers doing all the heavy lifting.

Mabel Zhang: While everybody thinks that open source is free, it’s free to users, but it’s not free to the maintainers. If you look at all of the open source projects, you just Google open source maintainer complaints or anything like that, you’ll see that there’s a lot of work involved, and people should really appreciate how much effort it is for maintainers to actually fix bugs, maintain and add features, and how much the server costs are. All of the maintainers will say that there is a challenge in people from companies that maintain it, and then people drop off, and we don’t have enough community to do all of the things that an open source project needs to do. So that’s something that people should really be aware of.

Robin Rowe, Heroic Robots: People put a tremendous amount of work into creating standards. It isn’t just code maintainers. I’m on ISO and ITU standards committees, am voting on standards, and preparing to fly to Geneva. I just became chairman of the IT Metaverse Trustworthiness Committee where we’re trying to figure out how you define trust in the metaverse. So it’s not only the maintainers, it’s also the people who do all the work on standards (often unpaid), which includes people at the Linux Foundation and other places like that.

Royal O’Brien: Yeah, it is important for people to understand that it’s not free. It’s still people’s time. It really does come down to the community and people who contribute their time willing and wanting to do this. I think that is a big point.

Adam Dabrowski, So, of course, ideologically, I like open source. It’s very motivating to know that you have this kind of social impact that people are using your solution, that you know someone is benefiting. And I think that’s not just me, that’s many software developers. You get a team that’s more motivated to work on that, actually. And there is a nice feedback loop between more experienced maintainers and newcomers. It’s mentorship. 

I think it’s a visible trend that more and more companies are embracing open source, and it’s happening often due to the nature of the project that we have large open source projects where you get a lot of value. You are interested in going in a certain direction, but you also want all the tooling to be improved, which you don’t necessarily have to do yourself as a company. So you get a lot of free value. And there are open source models for smaller companies as well. So we do have models such as the open core model, where you present, let’s say, a fully-functional, open source library, and then add some features that are very specific to your customers which are closed. Then you have a software as a service model, you have a support and services model. There is a growing awareness, and the role of open source in overall global software development is increasing.

Lars Gleim: We touched on Linux before. Without Linux, we wouldn’t be in the world we are in now. Today’s world runs on open source. Open source runs on a majority of the world’s cell phones, many newer industrial controllers, microcontrollers, security cameras, servers, Amazon cloud, Huawei Cloud, and all the clouds. All the big workloads are running on open source. And the same will probably happen at some point for 3D. 

Currently, we are seeing very clear technology leadership with commercial companies, but they also, to some degree, are working with an open source model, right? This is not royalty-free, but it is also open source because you have such complicated technology systems that now, as a developer, if you want to use such an engine, or project, and you want to tailor it to your needs, you cannot redevelop it from scratch. It’s just too much of an investment. 

And then there’s a question: what’s the business model for that? From my perspective, open source will definitely rule the software world in the future. About the licensing models and which products will win, I’m not 100% certain. But robotics is such an open community now, there are so many challenges to solve. It’s probably one of the most complicated, complex engineering challenges that exists today, and as an individual company, or even an individual contributor, you cannot solve everything at once. So from an ideological perspective, we need to come together and work together and solve this global problem of our time more or less together. And like Adam explained, we need to find models of how each company can find their core feature that they can commercialize and earn money with because, let’s face it, open source development needs to be funded somehow. But we do need to work closer together through open source projects to speed up the development.

Royal O’Brien: It’s an interesting point that you brought up that some people look at open source where it’s this free thing they can benefit from. But you’re right, it does have to be funded by different organizations. And when you look at the funding, you’re either going to have to maintain an entire architecture or system that you’ve built, which means having dedicated full-time engineers who are maintaining that software, updating it, keeping it current, adding features to it. Or you’re supporting a project that includes other organizations. 

I think the big difference with open source, and especially with standards, is that it gives all of the companies the ability to speak in the same language to accomplish shared goals. Each of you may have different objectives, but having that common language to build from is what prevents you from basically all writing the same thing at the same time, and expending all of that extra energy and money in a direction that’s not necessary, on something that’s table stakes. 

I think standardization with ROS and ROS 2 is one of the greatest illustrations of this. As Mabel brought up, everybody was writing their own thing, and it was a wild West. So how in the world do you ever get a chance to build off of each other’s work for something you’re not even making money off of? You’re basically trying to build the systems to get to the piece that will make you money. Does that make sense?

Matt Hansen: Yeah, so you mentioned Wild West. I think it still is a little bit of the Wild West in the simulation space. I think ROS and ROS 2 have made it less so in the robotics middleware space—obviously, they’ve gained probably the largest segment of the overall robotics community—but I think, with simulators, it’s still pretty wild West. A lot of companies I talk to are actually still writing their own custom simulators in house because they think they need to. They don’t. They don’t realize what options are available to them. I think things like O3DE can save them a lot of work. I I think, hopefully, we’re coming to a similar kind of a point with simulators now as we were with ROS and ROS 2 5-7 years ago when it started ballooning and taking off. It remains to be seen, but I think we’re on that precipice now.

How do you think open source has impacted the world of robotics?

This discussion is an excerpt from an earlier panel discussion. View the live recording of the full discussion here.

Subscribe for the latest updates, events, webinars and community news