New Working Group Proposal: Hardware Interface Working Group

This is a good initiative. In my experience hardware vendors often interpret the ROS common_msgs (and other related packages) in their own way to capture appropriately whatever features hardware delivers. This in principle seems harmless from the outside but ends up becoming extremely cumbersome while doing system integration because interoperability is broken and often requires a deep dive into drivers (and sometimes worse, even the robotics core logic needs to be tweeked). We experienced this heavily while building H-ROS.

Overall, +1 for it!

A few thoughts/comments that may help:

  • Rather then providing a reference implementation of “common message interfaces and related behaviors”, have you considered using a Model-Driven Engineering (MDE) approach? In other words, the interfaces will be autogenerated and interoperability tests could be automated in an MDE-centric manner (leading to safer verification paths). This was the whole idea behind the H-ROS trademark and we made a first implementation in the past funded by the European Union (ROSin) with the HRIM project (source code, paper). Source code is Apache 2.0. In addition to HRIM, @ipa-nhg has been contributing to this field as well. Her latest work presented at ROS-I Conference (Europe) showed lots of promise, specially the Theia integrations planned, which would lead to a (still developer friendly but) visual approach.

  • Hardware Interface Working Group is fine (HIWG) but the core aspect being treated is interoperability of hardware (at the software level, so technically, you’re actually dealing with both). Have you considered naming the group Interoperability Working Group (IWG)? This name in my opinion would be much more interesting for the community, and for outsiders as well (marketing-wise). Most people these days are speaking about interoperability but this is something that has been going on for many years in the community (with REPs). Some are focusing on inter-robot interoperability (i.e. different vendors), some others looking into intra-robot interoperability (i.e. among hardware components), why not grouping them both in the same WG?
    There’re quite a few interoperability projects around. Also, @mrobinson AFAIK you’ve interacted with both Mass Robotics and ARM Institute interoperability efforts. Landing all these initiatives into a formal ROS WG sounds like a good idea to me. I have privileges in the ros-interoperability GitHub org. Happy to give ownership to whoever leads the group.

  • Above you mention:

Incorporation of relevant and existing standards

Which ones?

  • One the biggest pains I encountered in the past was that comparing any two end effectors became painful purely from the spec sheets and experimental results. Have you considered adding benchmarking to the objectives and deliverables above? As a WG focused on hardware interface-ing and interoperability, you’re actually in a great position to facilitate tools and/or ROS constructs that instrument interfaces for vendor-fair-and-agnostic benchmarking. To do so I’d suggest to re-use @christophebedard’s work on LTTng integration. We did so at the Hardware Acceleration Working Group (HAWG) (see here).

  • I’m interested regardless but If you make the meetings at European friendly time I’ll try participating actively .

6 Likes