I’ve had a really great time of using Micro-ROS and ROS2 on multiple machines over WiFi.
I have a couple of applications where I’m using a multi-machine ROS network to separate capture from compute, I just wish ROS2 launch files had native multi-machine support.
I think ROS2 made multi-agent robotics so easy that people are forgetting to talk about how awesome it’s been.
Micro-ROS (udp on wifi) seems to get better latency than MQTT, and the peer-to-peer behaviour of DDS on my ROS2 nodes means that I’m not burning bandwidth getting ALL of my data out to a broker and back in to a client; only subscribed topics ever hit the network.
DDS topic discovery and synchronisation has been extremely robust for me, it’s been amazing not having to hard-code addresses for brokers, and being able to connect diagnostics to anything from anywhere. The overheads aren’t terrible either.
I’ve been wanting to try ROS2 on a proper mesh (batman-adv) network for a while, by skipping the access-points, you can double the available bandwidth.
SROS2 looks like it has potential to run properly encrypted and authenticated streams, and most of the DDS vendors for ROS have a NAT traversal plugin somewhere. SROS2 looks about as hardened as any other IoT protocol out there. I’d like to see more uptake.
@thomas.pingel I’m very interested in making audio a better-supported ros data type, I’d love to see what you build and what message formats you use.