Show EOL distros:
Package Summary
A set of packages which provide various web-related functionality and expose various aspects of ROS to the outside world. At its core, rosbridge is a websockets server with a JSON API exposing ROS service and pub/sub functionality. Additional packages provide convenience functions, and handling for specific datatypes.
- Author: Maintained by Jonathan Mace
- License: BSD
- External website: http://www.rosbridge.org
- Source: git https://github.com/RobotWebTools/rosbridge_suite.git (branch: fuerte-devel)
Package Summary
Rosbridge provides a JSON API to ROS functionality for non-ROS programs. There are a variety of front ends that interface with rosbridge, including a WebSocket server for web browsers to interact with. Rosbridge_suite is a meta-package containing rosbridge, various front end packages for rosbridge like a WebSocket package, and helper packages.
- Maintainer status: maintained
- Maintainer: Brandon Alexander <baalexander AT gmail DOT com>, Jihoon Lee <jihoonlee.in AT gmail DOT com>, Russell Toris <rctoris AT wpi DOT edu>
- Author: Jonathan Mace <jonathan.c.mace AT gmail DOT com>
- License: BSD
- External website: https://github.com/RobotWebTools/rosbridge_suite
- Source: git https://github.com/RobotWebTools/rosbridge_suite.git (branch: master)
Package Summary
Rosbridge provides a JSON API to ROS functionality for non-ROS programs. There are a variety of front ends that interface with rosbridge, including a WebSocket server for web browsers to interact with. Rosbridge_suite is a meta-package containing rosbridge, various front end packages for rosbridge like a WebSocket package, and helper packages.
- Maintainer status: maintained
- Maintainer: Russell Toris <rctoris AT wpi DOT edu>, Jihoon Lee <jihoonlee.in AT gmail DOT com>
- Author: Jonathan Mace <jonathan.c.mace AT gmail DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/RobotWebTools/rosbridge_suite/issues
- Source: git https://github.com/RobotWebTools/rosbridge_suite.git (branch: master)
Package Summary
Rosbridge provides a JSON API to ROS functionality for non-ROS programs. There are a variety of front ends that interface with rosbridge, including a WebSocket server for web browsers to interact with. Rosbridge_suite is a meta-package containing rosbridge, various front end packages for rosbridge like a WebSocket package, and helper packages.
- Maintainer status: maintained
- Maintainer: Russell Toris <rctoris AT wpi DOT edu>, Jihoon Lee <jihoonlee.in AT gmail DOT com>
- Author: Jonathan Mace <jonathan.c.mace AT gmail DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/RobotWebTools/rosbridge_suite/issues
- Source: git https://github.com/RobotWebTools/rosbridge_suite.git (branch: indigo)
Package Summary
Rosbridge provides a JSON API to ROS functionality for non-ROS programs. There are a variety of front ends that interface with rosbridge, including a WebSocket server for web browsers to interact with. Rosbridge_suite is a meta-package containing rosbridge, various front end packages for rosbridge like a WebSocket package, and helper packages.
- Maintainer status: maintained
- Maintainer: Russell Toris <rctoris AT wpi DOT edu>, Jihoon Lee <jihoonlee.in AT gmail DOT com>
- Author: Jonathan Mace <jonathan.c.mace AT gmail DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/RobotWebTools/rosbridge_suite/issues
- Source: git https://github.com/RobotWebTools/rosbridge_suite.git (branch: master)
Package Summary
Rosbridge provides a JSON API to ROS functionality for non-ROS programs. There are a variety of front ends that interface with rosbridge, including a WebSocket server for web browsers to interact with. Rosbridge_suite is a meta-package containing rosbridge, various front end packages for rosbridge like a WebSocket package, and helper packages.
- Maintainer status: maintained
- Maintainer: Russell Toris <rctoris AT wpi DOT edu>, Jihoon Lee <jihoonlee.in AT gmail DOT com>
- Author: Jonathan Mace <jonathan.c.mace AT gmail DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/RobotWebTools/rosbridge_suite/issues
- Source: git https://github.com/RobotWebTools/rosbridge_suite.git (branch: master)
Package Summary
Rosbridge provides a JSON API to ROS functionality for non-ROS programs. There are a variety of front ends that interface with rosbridge, including a WebSocket server for web browsers to interact with. Rosbridge_suite is a meta-package containing rosbridge, various front end packages for rosbridge like a WebSocket package, and helper packages.
- Maintainer status: maintained
- Maintainer: Russell Toris <rctoris AT wpi DOT edu>, Jihoon Lee <jihoonlee.in AT gmail DOT com>
- Author: Jonathan Mace <jonathan.c.mace AT gmail DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/RobotWebTools/rosbridge_suite/issues
- Source: git https://github.com/RobotWebTools/rosbridge_suite.git (branch: master)
Package Summary
Rosbridge provides a JSON API to ROS functionality for non-ROS programs. There are a variety of front ends that interface with rosbridge, including a WebSocket server for web browsers to interact with. Rosbridge_suite is a meta-package containing rosbridge, various front end packages for rosbridge like a WebSocket package, and helper packages.
- Maintainer status: maintained
- Maintainer: Russell Toris <rctoris AT wpi DOT edu>, Jihoon Lee <jihoonlee.in AT gmail DOT com>
- Author: Jonathan Mace <jonathan.c.mace AT gmail DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/RobotWebTools/rosbridge_suite/issues
- Source: git https://github.com/RobotWebTools/rosbridge_suite.git (branch: master)
Package Summary
Rosbridge provides a JSON API to ROS functionality for non-ROS programs. There are a variety of front ends that interface with rosbridge, including a WebSocket server for web browsers to interact with. Rosbridge_suite is a meta-package containing rosbridge, various front end packages for rosbridge like a WebSocket package, and helper packages.
- Maintainer status: maintained
- Maintainer: Russell Toris <rctoris AT wpi DOT edu>, Jihoon Lee <jihoonlee.in AT gmail DOT com>
- Author: Jonathan Mace <jonathan.c.mace AT gmail DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/RobotWebTools/rosbridge_suite/issues
- Source: git https://github.com/RobotWebTools/rosbridge_suite.git (branch: master)
About
There's two parts to rosbridge: the protocol and the implementation.
Rosbridge Protocol
The rosbridge protocol is a specification for sending JSON based commands to ROS (and in theory, any other robot middleware). An example of the protocol for subscribing to a topic:
{ "op": "subscribe", "topic": "/cmd_vel", "type": "geometry_msgs/Twist" }
The specification is programming language and transport agnostic. The idea is that any language or transport that can send JSON can talk the rosbridge protocol and interact with ROS. The protocol covers subscribing and publishing topics, service calls, getting and setting params, and even compressing messages and more.
Rosbridge Implementation
The rosbridge_suite package is a collection of packages that implement the rosbridge protocol and provides a WebSocket transport layer.
The packages include:
rosbridge_library - The core rosbridge package. The rosbridge_library is responsible for taking the JSON string and sending the commands to ROS and vice versa.
rosapi - Makes certain ROS actions accessible via service calls that are normally reserved for ROS client libraries. This includes getting and setting params, getting topics list, and more.
rosbridge_server - While rosbridge_library provides the JSON<->ROS conversion, it leaves the transport layer to others. Rosbridge_server provides a WebSocket connection so browsers can "talk rosbridge." Roslibjs is a JavaScript library for the browser that can talk to ROS via rosbridge_server.
Source Code
Source code is available at https://github.com/RobotWebTools/rosbridge_suite. Please file issues and pull requests there.
Installation
Rosbridge is available as a debian. To install:
sudo apt-get install ros-<rosdistro>-rosbridge-server
Tutorials
Beginner Tutorials
- Running Rosbridge
This tutorial shows you how to launch a rosbridge server and talk to it.
Intermediate Tutorials
- Developing Rosbridge
This tutorial shows you how to develop on rosbridge itself.
Community
Rosbridge is a community project and involvement is encouraged! In addition to the GitHub repository, check out the Google Group and ROS Answers.