Announcing the New Foxglove Bridge for Live ROS Data

Improving streaming performance for high-rate data and large messages

Esther S. Weon
2 min readFeb 8, 2023

The new Foxglove bridge connection dramatically improves streaming performance, provides custom message and publishing support, and offers reliable live connections to your ROS 1 and ROS 2 stacks. Install the foxglove_bridge ROS package to start connecting live to your robots in Foxglove Studio.

The next generation of live ROS debugging

With foxglove_bridge, Foxglove Studio users now have a stable, performant, and out-of-the-box solution for connecting live to their ROS 1 and ROS 2 systems. Foxglove bridge is a ROS node implemented in C++ for high performance and low overhead, and is designed to minimize impact when running on your robot or developer workbench.

With this new bridge, there’s no need to make tradeoffs. It maintains the low overhead and high performance of native connections, while supporting ROS 2 custom messages like Rosbridge connections. Connecting to your robot from outside the ROS stack also becomes easier than ever, as the Foxglove bridge reduces the networking complexity between Studio and your robot.

Since we’ve learned that Rosbridge can struggle with streaming high-frequency topics and large messages like images and point clouds — both from Foxglove Studio users and our own testing — we designed Foxglove bridge to tackle these performances issues and to provide a dramatically streamlined experience for Studio users debugging their robot.

Streaming Intel RealSense images (1280x720 raw rgb8 images) from a NVIDIA Jetson TX2 robot. We found that Rosbridge was unable to keep up with reading, serializing, and sending all streamed data, dropping ~36% of messages.

Once you’ve installed and added the foxglove_bridge node to your ROS stack, open Foxglove Studio to open a Foxglove WebSocket connection:

You should now see your live robotics data loading in your Studio layout! Add new panels to start exploring your data.

Stay tuned

Robotics teams shouldn’t have to jump through hoops to view their live data. With the foxglove_bridge, we hope Foxglove Studio users can more reliably connect to their systems - regardless of framework or data format - and spend more of their precious development time taking full advantage of our visualization and debugging features.

To learn more about our new foxglove_bridge, check out the Foxglove Studio data connection docs and the package's GitHub repo.

As always, join our Slack community to ask questions, or reach out to us directly with any feedback.

Originally published at https://foxglove.dev on February 8, 2023.

--

--

Esther S. Weon
Esther S. Weon

Written by Esther S. Weon

Writer. Software Engineer. Nak Muay.

No responses yet