-
 
No version for distro humble. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.

serial package from serial repo

serial

Package Summary

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

Repository Summary

Checkout URI https://github.com/wjwwood/serial.git
VCS Type git
VCS Version main
Last Updated 2022-03-09
Dev Status MAINTAINED
CI status
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

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.

Additional Links

Maintainers

  • William Woodall

Authors

  • William Woodall
  • John Harrison

Serial Communication Library

Build Status(Linux and OS X) Build Status(Windows)

This is a cross-platform library for interfacing with rs-232 serial like ports written in C++. It provides a modern C++ interface with a workflow designed to look and feel like PySerial, but with the speed and control provided by C++.

This library is in use in several robotics related projects and can be built and installed to the OS like most unix libraries with make and then sudo make install, but because it is a catkin project it can also be built along side other catkin projects in a catkin workspace.

Serial is a class that provides the basic interface common to serial libraries (open, close, read, write, etc..) and requires no extra dependencies. It also provides tight control over timeouts and control over handshaking lines.

Documentation

Website: http://wjwwood.github.io/serial/

API Documentation: http://wjwwood.github.io/serial/doc/1.1.0/index.html

Dependencies

Required:

  • catkin - cmake and Python based buildsystem
  • cmake - buildsystem
  • Python - scripting language
    • empy - Python templating library
    • catkin_pkg - Runtime Python library for catkin

Optional (for documentation):

  • Doxygen - Documentation generation tool
  • graphviz - Graph visualization software

Install

Get the code:

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

Build:

make

Build and run the tests:

make test

Build the documentation:

make doc

Install:

make install

License

The MIT License

Authors

William Woodall wjwwood@gmail.com John Harrison ash.gti@gmail.com

Contact

William Woodall william@osrfoundation.org

CHANGELOG

Changelog for package serial

1.2.1 (2015-04-21)

  • Removed the use of a C++11 feature for compatibility with older browsers.
  • Fixed an issue with cross compiling with mingw on Windows.
  • Restructured Visual Studio project layout.
  • Added include of #include <AvailabilityMacros.h> on OS X (listing of ports).
  • Fixed MXE for the listing of ports on Windows.
  • Now closes file device if reconfigureDevice fails (Windows).
  • Added the MARK/SPACE parity bit option, also made it optional. Adding the enumeration values for MARK and SPACE was the only code change to an API header. It should not affect ABI or API.
  • Added support for 576000 baud on Linux.
  • Now releases iterator properly in listing of ports code for OS X.
  • Fixed the ability to open COM ports over COM10 on Windows.
  • Fixed up some documentation about exceptions in serial.h.

1.2.0 (2014-07-02)

  • Removed vestigial read_cache_ private member variable from Serial::Serial
  • Fixed usage of scoped locks Previously they were getting destroyed immediately because they were not stored in a temporary scope variable
  • Added check of return value from close in Serial::SerialImpl::close () in unix.cc and win.cc
  • Added ability to enumerate ports on linux and windows. Updated serial_example.cc to show example of port enumeration.
  • Fixed compile on VS2013
  • Added functions waitReadable and waitByteTimes with implemenations for Unix to support high performance reading
  • Contributors: Christopher Baker, Craig Lilley, Konstantina Kastanara, Mike Purvis, William Woodall

1.1.7 (2014-02-20)

  • Improved support for mingw (mxe.cc)
  • Fix compilation warning See issue #53
  • Improved timer handling in unix implementation
  • fix broken ifdef _WIN32
  • Fix broken ioctl calls, add exception handling.
  • Code guards for platform-specific implementations. (when not using cmake / catkin)
  • Contributors: Christopher Baker, Mike Purvis, Nicolas Bigaouette, William Woodall, dawid

1.1.6 (2013-10-17)

  • Move stopbits_one_point_five to the end of the enum, so that it doesn't alias with stopbits_two.

1.1.5 (2013-09-23)

  • Fix license labeling, I put BSD, but the license has always been MIT...
  • Added Microsoft Visual Studio 2010 project to make compiling on Windows easier.
  • Implemented Serial::available() for Windows
  • Update how custom baudrates are handled on OS X This is taken from the example serial program on Apple's developer website, see: http://free-pascal-general.1045716.n5.nabble.com/Non-standard-baud-rates-in-OS-X-IOSSIOSPEED-IOCTL-td4699923.html
  • Timout settings are now applied by reconfigurePort
  • Pass LPCWSTR to CreateFile in Windows impl
  • Use wstring for port_ type in Windows impl

1.1.4 (2013-06-12 00:13:18 -0600)

  • Timing calculation fix for read and write. Fixes #27
  • Update list of exceptions thrown from constructor.
  • fix, by Thomas Hoppe <<thomas.hoppe@cesys.com>> For SerialException's:
    • The name was misspelled...
    • Use std::string's for error messages to prevent corruption of messages on some platforms
  • alloca.h does not exist on OpenBSD either.

1.1.3 (2013-01-09 10:54:34 -0800)

  • Install headers

1.1.2 (2012-12-14 14:08:55 -0800)

  • Fix buildtool depends

1.1.1 (2012-12-03)

  • Removed rt linking on OS X. Fixes #24.

1.1.0 (2012-10-24)

  • Previous history is unstructured and therefore has been truncated. See the commit messages for more info.

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

No direct system dependencies.

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged serial at Robotics Stack Exchange

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