For a while we’ve putting together a list of for-profit robotics companies using ROS and ROS 2 (or any of its related tools) for development, to create products or to offer services. The list now has 348 companies and turned into a valuable resource for us, so we decided to disclose it publicly and let others benefit from it.
This list can fulfill various objectives. It can help raise awareness about ROS outside of this community, answer some of those (still remaining) legacy claims pointing out that ROS is not industry-accepted, or just become a common resource to further motivate the open use of ROS in industry.
Thanks for the project it’s really cool! @tnajjar I had to google every company to find where they are located so having another column for location would be great too!
Philosophical question regarding “companies using ROS / ROS 2” - what do you consider ‘using’ to mean? For some of these companies, my understanding is that they do not use ROS / ROS 2 but either they or someone else provides ROS / ROS 2 wrapper / drivers for their customers (e.x. Boston Dynamics, Ouster). I don’t personally consider that as them “using” ROS / ROS 2.
It would be great if there was some synergy between this and ROS Map. The information is ROS Map is parsable, whereas the info in this index is not as parsable at this time.
@tnajjar and @braca, good suggestion. I like the idea and I’m willing to have it added. Do you guys have some bandwidth to contribute with it?
I agree with the fact that having third parties creating ROS drivers for your robots doesn’t mean you (as company) use ROS[1]. The repository aims to put together a public list of companies that are known to use the Robot Operating System (ROS and ROS 2) or any of its related toolsfor development, to create products or to offer services.
Ouster is offering and maintaining ROS examples. That to me indicates ROS is (at least, internally) used for development. Ouster folks are of course welcome to jump in and share their views if they believe they don’t use ROS or any of its tools at all.
Boston Dynamics’ case is a bit tricky and I’d love to have their direct input but I believe they’re not allowed to diclose things publicly. AFAIK their ROS drivers are from third parties (with Clearpaths’ spot_ros being the most popular) which wouldn’t qualify them to appear there indeed[2]. I’ve been told though that part of their source code is ROS-derived (drivers mostly) and that they’ve equally taken inspiration from ROS tools. I rewrote their description to further emphasize this. If someone knows more, any contributions are welcome.
Agreed. The list is meant to be readable, for non-coders, but I like the idea of parsing the Markdown tables and dumping it into YAML. I had a quick look at your YAML format of the ROS Map repo. Most aspects are there except lat, long and address, which somehow is connected to the location requests above from @tnajjar and @braca. A simple way to connect things together would be to add these three data elements as new columns. With that, parsing Mardown and dumping it into YAML shouldn’t be a big issue.
@braca and @tnajjar, would you guys be willing to partner up and add those three columns?
Well, I think it’s hard to find a school/University that doesn’t teach or use ROS these days, isn’t it? Nevertheless, see @DLu’s ROS Map.
Though in my experience many robotics companies had to dive into ROS this way, due to community/users demands. ↩︎
There’re public claims from employees hinting that they don’t use the ROS message-pasing infrastructure, but a similar pub-sub infrastructure. ↩︎
@vmayoral Thanks for working on making things more visible. It’s definitely valuable to the community to know these sorts of things.
I think that this is the wrong way to approach it. It’s much easier to parse structured data such as the yaml and use that to generated “readable formats” such as a html table as the Markdown renders to. To that end I would suggest that a better solution would be to contribute to the existing map lists as well as contribute a simple exporter that will generate tables for non-coders. You can even generate multiple tables with different gating criterion on the different metadata flags and do much more complex things than basic markdown tables supports.
For anything that will be valuable in an ongoing manner to the community the most important aspect will be maintainability.
- name: Adept MobileRobots
type: company
lat: 42.806964
long: -71.57946
link: http://www.mobilerobots.com
- name: Aptima Inc
type: company
lat: 42.508202
long: -71.146265
- name: Arizona State University (Tempe)
type: school
lat: 33.4172
long: -111.9365
description: Autonomous Collective Systems Lab
link: http://faculty.engineering.asu.edu/acs/
is much more maintainable than
| [Acceleration Robotics](https://accelerationrobotics.com) | Hardware Acceleration for robots using ROS 2. Robot IP cores (`robot cores`). Accelerator-agnostic (FPGA, GPU) building blocks for robots (`ROBOTCORE®` family). | 2020 |
| [Accerion](https://accerion.tech/) | Make infrastructure-free positioning technology for mobile robots and AGVs. Triton[^79], simplify high-performance AMR functions in logistics. ROS driver for Interfacing with Triton sensor (see [`accerion-ros-node`](https://gitlab.com/accerion/accerion-ros-node)). | 2015 |
| [ACEINNA](http://www.aceinna.com/) | Create sensing solutions for the development of innovative [Inertial](https://www.aceinna.com/inertial-systems) Measurement Unit (IMU) and current [sensing](https://www.aceinna.com/current-sensors) technologies for cars, robots and other autonomous applications. ROS driver for Aceinna OpenRTK products (see [`aceinna_openrtk_ros_driver`](https://github.com/Aceinna/aceinna_openrtk_ros_driver))[^111]. | 2017 |
Especially when you want to do something like add a data field. In the yaml, you just allow an additional key and parse it appropriately if it’s provided. In Markdown, you have to add a column and then modify every row to insert that column if it’s not at the end. And if someone needs to add data to the markdown you’re counting a lot of |s every time to make sure the data gets into the right column. And as this is likely to be a dataset with lots of sparse information which means that there will be a lot of skipped fields.
With this said I’d like to suggest that if people would like to contribute in this area to collect this into DLu’s ROS Map database. It has more information on a similar scale of records already and can easily be extended to include all the information in this list.
And consider contributing improved renderings for more accessibility such as the table output format. The structured data is even more powerful when you can consider exporting it for analysis as well. And things like the badges can also be easily contributed as well.
I believe you’re right @tfoote and contributing the current information to ROS Map is probably a good idea. Your suggestions about simplified accessibility are also in the right direction. Very open to push data into ROS Map if someone’s willing to help contribute the lat/long coordinates for existing companies.
My only concern is that maintaining YAML format is much more work and don’t get people as excited. I had such experience myself in the past with the Robot Vulnerability Database (RVD), which used YAML (inspired the Robust ROSin project [1][2]). Though not directly applicable to ROS Map, I’ve heard enough complaints about maintenance burdens and accesibility to data to have second thoughts on how information gets presented. From my experience I think it’s more likely people out there will contribute in a Markdown-table format than in YAML. We disclosed this list of companies using ROS so that other groups could easily consume/contribute/improve it and I believe that’s being achieved.
Great initiative, and very helpful to make people understand that ROS is a great tool not only for academia!
My only comment about the format is that I’m a little bit scared by the huge list of footnotes/references.
If someone adds a new company with a reference, they will have to manually update the numbers of all these footnotes.
Not to throw more fuel on the fire here, but I actually maintain my own list of companies that has about 450 companies along with their location. That number should grow when I merge in Victor’s list . I have contact information for most of the companies and that’s the reason the list isn’t public. I don’t want to be responsible for these companies getting unsolicited vendor e-mails / cold calls, especially without their permission. Just something to think about. I am fine keeping a list, but I would prefer a public list include the consent of those who are included in the list.
I keep all of my company information in a CSV file in Airtable. I have a little Chrome plugin that allows me to automatically add a company from a browser tab. Personally, I think that flat CSV files are the most functional format for data storage. Your average person can edit a CSV file, and the Python tools for manipulating them are second to none. I’ve been meaning to add additional CSV files to my tool for things like funding rounds, news articles, ROS packages / repositories / tutorials, and robots / components. Eventually I would like to generate all of the Weekly Updates from a script off these CSV files. Unfortunately, I haven’t had two or three free days to put this all together and test it.
Another thing to consider is that ros.org is generated from plain markdown and there are already templates for “cards” about particular topics, similar to robots.ros.org. That’s part of my motivation for eventually automating the Weekly Update, so that I can get all of the information from the updates into running lists on ROS.org. For example, I would love to have an “opt-in” company list on ROS.org based on a simple CSV file. I would certainly approve pull requests in that direction.
@vmayoral to answer your question we do not track company exits. The overwhelming majority of startups go out of business quietly, with little media fanfare. Acquisitions are the exception, and generally most people hear that news.