# serial: Serial Library

serial 1.1.0 Cross-platform, serial port library written in C++

- Main Page
- Namespaces
- Data Structures
- Files

All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Defines
Serial Library

Author:
  William Woodall wjwwo.nosp@m.od@g.nosp@m.mail..nosp@m.com, John Harrison ash@g.nosp@m.reat.nosp@m.ertha.nosp@m.ninf.nosp@m.inity.nosp@m..com

## What is serial?

Serial is a cross-platform, simple to use library for using serial ports on computers. This library provides a C++, object oriented interface for interacting with RS-232 like devices on Linux and Windows.

Want to use it with ROS(Robot Operating System)? No problem, it compiles as a unary stack.

## Getting Started

Ready to jump in?

- Checkout our examples: serial_example.cc
- Look at the main class documentation: serial::Serial

## Features

- Linux, Mac OS X, and Windows Support
- Easy to use interface (modeled after PySerial)
- Minimal dependencies (cmake)
- Complete timeout control serial::Serial::setTimeout
- Check and set handshaking lines (CTS, DSR, RI, CD and RTS, DTR)
- Block for changes in handshaking lines (Linux and Windows)
- Flush I/O separately and block until all writing done

## Installation

### Dependencies

- CMake:
  - CMake is required for building the system and can be located here: http://www.cmake.org/

### Compiling

Once you have gathered the dependencies, you need to checkout the software from github.com:

        git clone git://github.com/wjwwood/serial.git

Once you have checked out the source code from github.com you can enter the directory and build the software.

        cd serial
        make
        make test # (optional) builds the example and tests, and runs the tests.
        make doc  # (optional) builds _this_ documentation.

### Installing

To install simply:

        sudo make install

To uninstall simply:

        sudo make uninstall