Package Summary
Documented
ROS Serial is a point-to-point version of ROS communications over serial, primarily for integrating low-cost microcontrollers (Arduino) into ROS. ROS serial consists of a general p2p protocol, libraries for use with Arduino, and nodes for the PC/Tablet side (currently in both Python and Java).
- Author: Maintained by Michael Ferguson, Adam Stambler
- License: BSD
- Source: hg https://kforge.ros.org/rosserial/hg (branch: default)
Package Summary
Documented
ROS Serial is a point-to-point version of ROS communications over serial, primarily for integrating low-cost microcontrollers (Arduino) into ROS. ROS serial consists of a general p2p protocol, libraries for use with Arduino, and nodes for the PC/Tablet side (currently in both Python and Java).
- Author: Maintained by Michael Ferguson, Adam Stambler
- License: BSD
- Source: hg https://kforge.ros.org/rosserial/hg (branch: default)
Package Summary
Released Continuous integration Documented
Metapackage for core of rosserial.
- Maintainer status: developed
- Maintainer: Michael Ferguson <mferguson AT willowgarage DOT com>
- Author: Michael Ferguson
- License: BSD
- Source: git https://github.com/ros-drivers/rosserial.git (branch: groovy-devel)
Package Summary
Released Continuous integration Documented
Metapackage for core of rosserial.
- Maintainer status: maintained
- Maintainer: Paul Bouchier <paul.bouchier AT gmail DOT com>, Mike Purvis <mpurvis AT clearpathrobotics DOT com>
- Author: Michael Ferguson
- License: BSD
- Source: git https://github.com/ros-drivers/rosserial.git (branch: hydro-devel)
Package Summary
Released Continuous integration Documented
Metapackage for core of rosserial.
- Maintainer status: maintained
- Maintainer: Paul Bouchier <paul.bouchier AT gmail DOT com>, Mike Purvis <mpurvis AT clearpathrobotics DOT com>
- Author: Michael Ferguson
- License: BSD
- Source: git https://github.com/ros-drivers/rosserial.git (branch: indigo-devel)
Package Summary
Released Continuous integration Documented
Metapackage for core of rosserial.
- Maintainer status: maintained
- Maintainer: Paul Bouchier <paul.bouchier AT gmail DOT com>, Mike Purvis <mpurvis AT clearpathrobotics DOT com>
- Author: Michael Ferguson
- License: BSD
- Source: git https://github.com/ros-drivers/rosserial.git (branch: jade-devel)
Package Summary
Released Continuous integration Documented
Metapackage for core of rosserial.
- Maintainer status: maintained
- Maintainer: Paul Bouchier <paul.bouchier AT gmail DOT com>, Mike Purvis <mpurvis AT clearpathrobotics DOT com>
- Author: Michael Ferguson
- License: BSD
- Source: git https://github.com/ros-drivers/rosserial.git (branch: jade-devel)
Overview
rosserial is a protocol for wrapping standard ROS serialized messages and multiplexing multiple topics and services over a character device such as a serial port or network socket.
In addition to a protocol definition, there are three types of packages found in this suite:
Client Libraries
Client libraries allow users to easily get ROS nodes up and running on various systems. These clients are ports of a the general ANSI C++ rosserial_client library. Currently, these packages include:
Arduino, especially UNO and Leonardo |
|
support for Embedded Linux (eg, routers) |
|
support for communicating with Windows applications |
|
support for mbed platforms |
|
support for TI's Launchpad boards, TM4C123GXL and TM4C1294XL |
ROS-side Interfaces
Devices running rosserial code require a node on the host machine to bridge the connection from the serial protocol to the more general ROS network:
A Python-based implementation (recommended for PC usage). |
|
A C++ implementation based on the ShapeShifter message, some limitations compared to rosserial_python but recommended for high-performance applications. |
|
A Java-based implementation. This implementation is only recommended when you need a Java OSGI based rosserial module or when you want to use rosserial with the Android ADK. |
Examples and Use Cases
We have created a number of extensions and examples:
rosserial_arduino Tutorials - contains a number of examples of using various sensors and actuators with Arduino.
rosserial_xbee - tools for creating sensor networks using XBEE devices and Arduino.
rosserial_embeddedlinux Tutorials contains a number of examples of various sensors and actuators with an embedded linux system which cannot run full-blown ROS.
rosserial_mbed Tutorials - contains a number of examples of using various sensors and actuators with and Mbed platform.
rosserial_tivac Tutorials - Various examples for programming TI's TivaC Launchpad with Energia IDE or catkinized projects.
Please see the Overview and Tutorials for more information.
Report a Bug
Report bugs, ask questions in the issues list on github/rosserial







