No version for distro humble. Known supported distros are highlighted in the buttons above.

foxglove_bridge package from foxglove_bridge repo

foxglove_bridge

Package Summary

Tags No category tags.
Version 0.1.0
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/foxglove/ros-foxglove-bridge.git
VCS Type git
VCS Version main
Last Updated 2022-11-25
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS Foxglove Bridge

Additional Links

Maintainers

  • Foxglove

Authors

  • Foxglove

foxglove_bridge

ROS Melodic version ROS Noetic version ROS Galactic version ROS Humble version ROS Rolling version

High performance ROS 1 and ROS 2 WebSocket bridge using the Foxglove WebSocket protocol, written in C++.

Motivation

Live debugging of ROS systems has traditionally relied on running ROS tooling such as rviz. This requires either a GUI and connected peripherals on the robot, or replicating the same ROS environment on a network-connected development machine including the same version of ROS, all custom message definitions, etc. To overcome this limitation and allow remote debugging from web tooling or non-ROS systems, rosbridge was developed. However, rosbridge suffers from performance problems with high frequency topics and/or large messages, and the protocol does not support full visibility into ROS systems such as interacting with parameters or seeing the full graph of publishers and subscribers.

The foxglove_bridge uses the Foxglove WebSocket protocol, a similar protocol to rosbridge but with the ability to support additional schema formats such as ROS 2 .msg and ROS 2 .idl, parameters, graph introspection, and non-ROS systems. The bridge is written in C++ and designed for high performance with low overhead to minimize the impact to your robot stack.

Installation

ROS packages will be made available soon for ROS 1 Melodic and Noetic, and ROS 2 Galactic, Humble, and Rolling. Earlier releases of ROS will not be supported due to API design and/or performance limitations.

In the meantime, you can try foxglove_bridge now by building from source or running a pre-built Docker container.

ROS 1 Source Build

cd <path/to/your/ros_ws>
git clone https://github.com/foxglove/ros-foxglove-bridge.git src/ros-foxglove-bridge
catkin_make
source install/local_setup.bash
rosrun foxglove_bridge foxglove_bridge

ROS 2 Source Build

cd <path/to/your/ros_ws>
git clone https://github.com/foxglove/ros-foxglove-bridge.git src/ros-foxglove-bridge
colcon build
source install/local_setup.bash
ros2 run foxglove_bridge foxglove_bridge

ROS 1 Docker

docker run --rm -it -v /opt/ros:/opt/ros --net=host ghcr.io/foxglove/noetic-ros1-bridge

ROS 2 Docker

docker run --rm -it -v /opt/ros:/opt/ros --net=host ghcr.io/foxglove/galactic-ros2-bridge

Configuration

Parameters are provided to configure the behavior of the bridge. These parameters must be set at initialization through a launch file or the command line, they cannot be modified at runtime.

  • port: The TCP port to bind the WebSocket server to. Must be a valid TCP port number, or 0 to use a random port. Defaults to 8765.
  • address: The host address to bind the WebSocket server to. Defaults to 0.0.0.0, listening on all interfaces by default. Change this to 127.0.0.1 to only accept connections from the local machine.
  • tls: If true, use Transport Layer Security (TLS) for encrypted communication. Defaults to false.
  • certfile: Path to the certificate to use for TLS. Required when tls is set to true. Defaults to "".
  • keyfile: Path to the private key to use for TLS. Required when tls is set to true. Defaults to "".
  • (ROS 1) max_update_ms: The maximum number of milliseconds to wait in between polling roscore for new topics, services, or parameters. Defaults to 5000.
  • (ROS 2) num_threads: The number of threads to use for the ROS node executor. This controls the number of subscriptions that can be processed in parallel. 0 means one thread per CPU core. Defaults to 0.
  • (ROS 2) max_qos_depth: Maximum depth used for the QoS profile of subscriptions. Defaults to 10.

Clients

Foxglove Studio connects to foxglove_bridge for live robotics visualization. There are client libraries for the Foxglove WebSocket protocol in Python, C++, and TypeScript.

Development

A VSCode container is provided with a dual ROS 1 and ROS 2 installation and enough tools to build and run the bridge. Some bash aliases are defined to simplify the common workflow. Here's an example of building and running the ROS 2 node:

source /opt/ros/galactic/setup.bash
ros2_build_debug  # or ros2_build_release
ros2_foxglove_bridge

To test the bridge with example data, open another terminal and download the test .mcap files:

./download_test_data.sh

Then start playback:

source /opt/ros/galactic/setup.bash
ros2 bag play -l --clock 100 -s mcap data/nuScenes-v1.0-mini-scene-0061-ros2.mcap

License

foxglove_bridge is released with a MIT license. For full terms and conditions, see the LICENSE file.

CHANGELOG

Changelog for package foxglove_bridge

0.1.0 (2022-11-21)

  • Initial release, topic subscription only

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

Recent questions tagged foxglove_bridge at answers.ros.org

No version for distro foxy. Known supported distros are highlighted in the buttons above.

foxglove_bridge package from foxglove_bridge repo

foxglove_bridge

Package Summary

Tags No category tags.
Version 0.1.0
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/foxglove/ros-foxglove-bridge.git
VCS Type git
VCS Version main
Last Updated 2022-11-25
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS Foxglove Bridge

Additional Links

Maintainers

  • Foxglove

Authors

  • Foxglove

foxglove_bridge

ROS Melodic version ROS Noetic version ROS Galactic version ROS Humble version ROS Rolling version

High performance ROS 1 and ROS 2 WebSocket bridge using the Foxglove WebSocket protocol, written in C++.

Motivation

Live debugging of ROS systems has traditionally relied on running ROS tooling such as rviz. This requires either a GUI and connected peripherals on the robot, or replicating the same ROS environment on a network-connected development machine including the same version of ROS, all custom message definitions, etc. To overcome this limitation and allow remote debugging from web tooling or non-ROS systems, rosbridge was developed. However, rosbridge suffers from performance problems with high frequency topics and/or large messages, and the protocol does not support full visibility into ROS systems such as interacting with parameters or seeing the full graph of publishers and subscribers.

The foxglove_bridge uses the Foxglove WebSocket protocol, a similar protocol to rosbridge but with the ability to support additional schema formats such as ROS 2 .msg and ROS 2 .idl, parameters, graph introspection, and non-ROS systems. The bridge is written in C++ and designed for high performance with low overhead to minimize the impact to your robot stack.

Installation

ROS packages will be made available soon for ROS 1 Melodic and Noetic, and ROS 2 Galactic, Humble, and Rolling. Earlier releases of ROS will not be supported due to API design and/or performance limitations.

In the meantime, you can try foxglove_bridge now by building from source or running a pre-built Docker container.

ROS 1 Source Build

cd <path/to/your/ros_ws>
git clone https://github.com/foxglove/ros-foxglove-bridge.git src/ros-foxglove-bridge
catkin_make
source install/local_setup.bash
rosrun foxglove_bridge foxglove_bridge

ROS 2 Source Build

cd <path/to/your/ros_ws>
git clone https://github.com/foxglove/ros-foxglove-bridge.git src/ros-foxglove-bridge
colcon build
source install/local_setup.bash
ros2 run foxglove_bridge foxglove_bridge

ROS 1 Docker

docker run --rm -it -v /opt/ros:/opt/ros --net=host ghcr.io/foxglove/noetic-ros1-bridge

ROS 2 Docker

docker run --rm -it -v /opt/ros:/opt/ros --net=host ghcr.io/foxglove/galactic-ros2-bridge

Configuration

Parameters are provided to configure the behavior of the bridge. These parameters must be set at initialization through a launch file or the command line, they cannot be modified at runtime.

  • port: The TCP port to bind the WebSocket server to. Must be a valid TCP port number, or 0 to use a random port. Defaults to 8765.
  • address: The host address to bind the WebSocket server to. Defaults to 0.0.0.0, listening on all interfaces by default. Change this to 127.0.0.1 to only accept connections from the local machine.
  • tls: If true, use Transport Layer Security (TLS) for encrypted communication. Defaults to false.
  • certfile: Path to the certificate to use for TLS. Required when tls is set to true. Defaults to "".
  • keyfile: Path to the private key to use for TLS. Required when tls is set to true. Defaults to "".
  • (ROS 1) max_update_ms: The maximum number of milliseconds to wait in between polling roscore for new topics, services, or parameters. Defaults to 5000.
  • (ROS 2) num_threads: The number of threads to use for the ROS node executor. This controls the number of subscriptions that can be processed in parallel. 0 means one thread per CPU core. Defaults to 0.
  • (ROS 2) max_qos_depth: Maximum depth used for the QoS profile of subscriptions. Defaults to 10.

Clients

Foxglove Studio connects to foxglove_bridge for live robotics visualization. There are client libraries for the Foxglove WebSocket protocol in Python, C++, and TypeScript.

Development

A VSCode container is provided with a dual ROS 1 and ROS 2 installation and enough tools to build and run the bridge. Some bash aliases are defined to simplify the common workflow. Here's an example of building and running the ROS 2 node:

source /opt/ros/galactic/setup.bash
ros2_build_debug  # or ros2_build_release
ros2_foxglove_bridge

To test the bridge with example data, open another terminal and download the test .mcap files:

./download_test_data.sh

Then start playback:

source /opt/ros/galactic/setup.bash
ros2 bag play -l --clock 100 -s mcap data/nuScenes-v1.0-mini-scene-0061-ros2.mcap

License

foxglove_bridge is released with a MIT license. For full terms and conditions, see the LICENSE file.

CHANGELOG

Changelog for package foxglove_bridge

0.1.0 (2022-11-21)

  • Initial release, topic subscription only

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

Recent questions tagged foxglove_bridge at answers.ros.org

foxglove_bridge package from foxglove_bridge repo

foxglove_bridge

Package Summary

Tags No category tags.
Version 0.1.0
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/foxglove/ros-foxglove-bridge.git
VCS Type git
VCS Version main
Last Updated 2022-11-25
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS Foxglove Bridge

Additional Links

Maintainers

  • Foxglove

Authors

  • Foxglove

foxglove_bridge

ROS Melodic version ROS Noetic version ROS Galactic version ROS Humble version ROS Rolling version

High performance ROS 1 and ROS 2 WebSocket bridge using the Foxglove WebSocket protocol, written in C++.

Motivation

Live debugging of ROS systems has traditionally relied on running ROS tooling such as rviz. This requires either a GUI and connected peripherals on the robot, or replicating the same ROS environment on a network-connected development machine including the same version of ROS, all custom message definitions, etc. To overcome this limitation and allow remote debugging from web tooling or non-ROS systems, rosbridge was developed. However, rosbridge suffers from performance problems with high frequency topics and/or large messages, and the protocol does not support full visibility into ROS systems such as interacting with parameters or seeing the full graph of publishers and subscribers.

The foxglove_bridge uses the Foxglove WebSocket protocol, a similar protocol to rosbridge but with the ability to support additional schema formats such as ROS 2 .msg and ROS 2 .idl, parameters, graph introspection, and non-ROS systems. The bridge is written in C++ and designed for high performance with low overhead to minimize the impact to your robot stack.

Installation

ROS packages will be made available soon for ROS 1 Melodic and Noetic, and ROS 2 Galactic, Humble, and Rolling. Earlier releases of ROS will not be supported due to API design and/or performance limitations.

In the meantime, you can try foxglove_bridge now by building from source or running a pre-built Docker container.

ROS 1 Source Build

cd <path/to/your/ros_ws>
git clone https://github.com/foxglove/ros-foxglove-bridge.git src/ros-foxglove-bridge
catkin_make
source install/local_setup.bash
rosrun foxglove_bridge foxglove_bridge

ROS 2 Source Build

cd <path/to/your/ros_ws>
git clone https://github.com/foxglove/ros-foxglove-bridge.git src/ros-foxglove-bridge
colcon build
source install/local_setup.bash
ros2 run foxglove_bridge foxglove_bridge

ROS 1 Docker

docker run --rm -it -v /opt/ros:/opt/ros --net=host ghcr.io/foxglove/noetic-ros1-bridge

ROS 2 Docker

docker run --rm -it -v /opt/ros:/opt/ros --net=host ghcr.io/foxglove/galactic-ros2-bridge

Configuration

Parameters are provided to configure the behavior of the bridge. These parameters must be set at initialization through a launch file or the command line, they cannot be modified at runtime.

  • port: The TCP port to bind the WebSocket server to. Must be a valid TCP port number, or 0 to use a random port. Defaults to 8765.
  • address: The host address to bind the WebSocket server to. Defaults to 0.0.0.0, listening on all interfaces by default. Change this to 127.0.0.1 to only accept connections from the local machine.
  • tls: If true, use Transport Layer Security (TLS) for encrypted communication. Defaults to false.
  • certfile: Path to the certificate to use for TLS. Required when tls is set to true. Defaults to "".
  • keyfile: Path to the private key to use for TLS. Required when tls is set to true. Defaults to "".
  • (ROS 1) max_update_ms: The maximum number of milliseconds to wait in between polling roscore for new topics, services, or parameters. Defaults to 5000.
  • (ROS 2) num_threads: The number of threads to use for the ROS node executor. This controls the number of subscriptions that can be processed in parallel. 0 means one thread per CPU core. Defaults to 0.
  • (ROS 2) max_qos_depth: Maximum depth used for the QoS profile of subscriptions. Defaults to 10.

Clients

Foxglove Studio connects to foxglove_bridge for live robotics visualization. There are client libraries for the Foxglove WebSocket protocol in Python, C++, and TypeScript.

Development

A VSCode container is provided with a dual ROS 1 and ROS 2 installation and enough tools to build and run the bridge. Some bash aliases are defined to simplify the common workflow. Here's an example of building and running the ROS 2 node:

source /opt/ros/galactic/setup.bash
ros2_build_debug  # or ros2_build_release
ros2_foxglove_bridge

To test the bridge with example data, open another terminal and download the test .mcap files:

./download_test_data.sh

Then start playback:

source /opt/ros/galactic/setup.bash
ros2 bag play -l --clock 100 -s mcap data/nuScenes-v1.0-mini-scene-0061-ros2.mcap

License

foxglove_bridge is released with a MIT license. For full terms and conditions, see the LICENSE file.

CHANGELOG

Changelog for package foxglove_bridge

0.1.0 (2022-11-21)

  • Initial release, topic subscription only

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

Recent questions tagged foxglove_bridge at answers.ros.org

foxglove_bridge package from foxglove_bridge repo

foxglove_bridge

Package Summary

Tags No category tags.
Version 0.1.0
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/foxglove/ros-foxglove-bridge.git
VCS Type git
VCS Version main
Last Updated 2022-11-25
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS Foxglove Bridge

Additional Links

Maintainers

  • Foxglove

Authors

  • Foxglove

foxglove_bridge

ROS Melodic version ROS Noetic version ROS Galactic version ROS Humble version ROS Rolling version

High performance ROS 1 and ROS 2 WebSocket bridge using the Foxglove WebSocket protocol, written in C++.

Motivation

Live debugging of ROS systems has traditionally relied on running ROS tooling such as rviz. This requires either a GUI and connected peripherals on the robot, or replicating the same ROS environment on a network-connected development machine including the same version of ROS, all custom message definitions, etc. To overcome this limitation and allow remote debugging from web tooling or non-ROS systems, rosbridge was developed. However, rosbridge suffers from performance problems with high frequency topics and/or large messages, and the protocol does not support full visibility into ROS systems such as interacting with parameters or seeing the full graph of publishers and subscribers.

The foxglove_bridge uses the Foxglove WebSocket protocol, a similar protocol to rosbridge but with the ability to support additional schema formats such as ROS 2 .msg and ROS 2 .idl, parameters, graph introspection, and non-ROS systems. The bridge is written in C++ and designed for high performance with low overhead to minimize the impact to your robot stack.

Installation

ROS packages will be made available soon for ROS 1 Melodic and Noetic, and ROS 2 Galactic, Humble, and Rolling. Earlier releases of ROS will not be supported due to API design and/or performance limitations.

In the meantime, you can try foxglove_bridge now by building from source or running a pre-built Docker container.

ROS 1 Source Build

cd <path/to/your/ros_ws>
git clone https://github.com/foxglove/ros-foxglove-bridge.git src/ros-foxglove-bridge
catkin_make
source install/local_setup.bash
rosrun foxglove_bridge foxglove_bridge

ROS 2 Source Build

cd <path/to/your/ros_ws>
git clone https://github.com/foxglove/ros-foxglove-bridge.git src/ros-foxglove-bridge
colcon build
source install/local_setup.bash
ros2 run foxglove_bridge foxglove_bridge

ROS 1 Docker

docker run --rm -it -v /opt/ros:/opt/ros --net=host ghcr.io/foxglove/noetic-ros1-bridge

ROS 2 Docker

docker run --rm -it -v /opt/ros:/opt/ros --net=host ghcr.io/foxglove/galactic-ros2-bridge

Configuration

Parameters are provided to configure the behavior of the bridge. These parameters must be set at initialization through a launch file or the command line, they cannot be modified at runtime.

  • port: The TCP port to bind the WebSocket server to. Must be a valid TCP port number, or 0 to use a random port. Defaults to 8765.
  • address: The host address to bind the WebSocket server to. Defaults to 0.0.0.0, listening on all interfaces by default. Change this to 127.0.0.1 to only accept connections from the local machine.
  • tls: If true, use Transport Layer Security (TLS) for encrypted communication. Defaults to false.
  • certfile: Path to the certificate to use for TLS. Required when tls is set to true. Defaults to "".
  • keyfile: Path to the private key to use for TLS. Required when tls is set to true. Defaults to "".
  • (ROS 1) max_update_ms: The maximum number of milliseconds to wait in between polling roscore for new topics, services, or parameters. Defaults to 5000.
  • (ROS 2) num_threads: The number of threads to use for the ROS node executor. This controls the number of subscriptions that can be processed in parallel. 0 means one thread per CPU core. Defaults to 0.
  • (ROS 2) max_qos_depth: Maximum depth used for the QoS profile of subscriptions. Defaults to 10.

Clients

Foxglove Studio connects to foxglove_bridge for live robotics visualization. There are client libraries for the Foxglove WebSocket protocol in Python, C++, and TypeScript.

Development

A VSCode container is provided with a dual ROS 1 and ROS 2 installation and enough tools to build and run the bridge. Some bash aliases are defined to simplify the common workflow. Here's an example of building and running the ROS 2 node:

source /opt/ros/galactic/setup.bash
ros2_build_debug  # or ros2_build_release
ros2_foxglove_bridge

To test the bridge with example data, open another terminal and download the test .mcap files:

./download_test_data.sh

Then start playback:

source /opt/ros/galactic/setup.bash
ros2 bag play -l --clock 100 -s mcap data/nuScenes-v1.0-mini-scene-0061-ros2.mcap

License

foxglove_bridge is released with a MIT license. For full terms and conditions, see the LICENSE file.

CHANGELOG

Changelog for package foxglove_bridge

0.1.0 (2022-11-21)

  • Initial release, topic subscription only

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

Recent questions tagged foxglove_bridge at answers.ros.org

No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro lunar. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.
No version for distro kinetic. Known supported distros are highlighted in the buttons above.