Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

github.com/npat-efault/serial

Package Overview
Dependencies
Alerts
File Explorer
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/npat-efault/serial

  • v0.0.0-20151123093855-0bb7f04a02f0
  • Source
  • Go
  • Socket score

Version published
Created
Source

#serial GoDoc

Download:

go get github.com/npat-efault/serial

Package serial provides a simple, high-level, system-independent interface for accessing asynchronous serial ports.

It provides functions and methods for opening serial ports, configuring their basic parameters (baudrate, character format, flow-control, etc.), for reading and writing data from and to them, and for a few other miscellaneous operations (sending a break signal, flushing the I/O buffers, and so on).

Data transfer operations support deadlines (timeouts) and safe cancelation; a blocked read or write operation can be safely and reliably canceled from another goroutine by closing the port.

###Supported systems

Most unix-like systems are supported.

Package serial uses package termios to supports systems that provide the POSIX Terminal Interface for configuring terminal devices.

For data-transfer operations (Read, Write) it uses package poller, which provides I/O operations with timeouts and safe cancelation.

Depending on the specific system, both of these packages (termios and poller) can be compiled either to use CGo, or as pure-Go packages. See their documentation for details.

Addition of support for other systems is certainly possible, and mostly welcome. Patches and pull requests for this will be greatly appreciated.


#termios GoDoc

Package termios is a simple Go wrapper to the POSIX Terminal Interface (POSIX Termios).

Package termios is more low-level and system-specific than package serial and can be used to configure most aspects of a terminal device's operation on systems that support POSIX Termios.

###Supported systems

Package termios should work on all systems that support the POSIX terminal interface, that is, on most Unix-like systems. Depending on the system, package termios can either be built to use the system's LIBC functions and macros through CGo, or as a pure-go package that issues system calls directly. In either case, the API presented by the package is identical.

By default, package termios is built to use CGo to access the system's LIBC termios functions and macros. This is the most portable option. If building termios fails on a system that has POSIX termios support, please file an issue, or submit a patch to make it work (the required changes will most likely be trivial).

Alternatively, you can build package termios as a pure-Go package that issues system-calls directly. To do this define the nocgo build-tag when building/installing the package, like this:

cd $GOPATH/github.com/npat-efault/serial/termios
go install -tags 'nocgo'

Building termios as a pure-Go package is not supported on all systems.

FAQs

Package last updated on 23 Nov 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc