# serialport2

> node.js serial port driver.

Latest version **0.0.5** (published 2012-06-02) · MIT license · 0 weekly downloads

> **Deprecated.** This package is deprecated.

## Install

```sh
npm install serialport2
pnpm add serialport2
yarn add serialport2
bun add serialport2
```

Provides the commands `serialportlist`, `serialportterm`.

## Health

**Score 10/100 (F)** — status: deprecated.

Negative: deprecated.

## Facts

| | |
|---|---|
| Version | 0.0.5 |
| Published | 2012-06-02 |
| First published | 2012-04-25 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >=0.6.0 |
| Dependencies | 4 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Joe Ferner |
| Maintainers | joeferner |
| Keywords | serial, serialport, com, comport, arduino |

## Links

- npm: https://www.npmjs.com/package/serialport2
- Repository: https://github.com/joeferner/node-serialport2
- Issues: https://github.com/joeferner/node-serialport2/issues
- npm.io page: https://npm.io/package/serialport2

## Dependencies (4)

- [sf](https://npm.io/package/sf.md) 0.1.3
- [async](https://npm.io/package/async.md) 0.1.18
- [bindings](https://npm.io/package/bindings.md) 0.3.0
- [optimist](https://npm.io/package/optimist.md) ~0.3.4

## Alternatives

- [@progress/kendo-ooxml](https://npm.io/package/@progress/kendo-ooxml.md) — 152.1K weekly downloads
- [@progress/kendo-react-ripple](https://npm.io/package/@progress/kendo-react-ripple.md) — 8.0K weekly downloads
- [@progress/kendo-react-orgchart](https://npm.io/package/@progress/kendo-react-orgchart.md) — 4.3K weekly downloads
- [@praxisui/dynamic-fields](https://npm.io/package/@praxisui/dynamic-fields.md) — 2.4K weekly downloads
- [@progress/kendo-vue-listbox](https://npm.io/package/@progress/kendo-vue-listbox.md) — 932 weekly downloads

## Recent versions

- 0.0.5 (latest) — 2012-06-02
- 0.0.4 — 2012-05-12
- 0.0.3 — 2012-04-26
- 0.0.2 — 2012-04-25
- 0.0.1 — 2012-04-25

## README

# SerialPort2

Node.js serial port driver. Works on Windows, OSX, and linux.

# Install

```
npm install serialport2
```

**Note for windows users.** If you are using Node v0.6.x you will need to have Python 2.7 installed.
See [node-gyp](https://github.com/TooTallNate/node-gyp) for instruction on getting a working node-gyp
environment.

# Quick Example

```javascript
var SerialPort = require('serialport2').SerialPort;
var port = new SerialPort();

port.on('data', function(data) {
  console.log(data.toString());
});

port.on('error', function(err) {
  console.log(err);
});

port.open('COM4', {
  baudRate: 9600,
  dataBits: 8,
  parity: 'none',
  stopBits: 1
}, function(err) {
  port.write("hello world");
  port.close();
});
```

```javascript
var sp = require('../');
sp.list(function(err, ports) {
  console.log(ports);
});
```

# API

## SerialPort

### new SerialPort()

Creates the serial port.

### open(portName, [options], [callback])

Open the serial port.

__Arguments__

  * portName - The name of the port to open. Example: Windows 'COM1', Linux '/dev/ttyUSB0'.
  * options - Options for open
    * baudRate - The baud rate [default: 9600]
    * dataBits - The data bits [default: 8]
    * parity - The parity, can be (none, odd, even) [default: 'none']
    * stopBits - The number of stop bits, can be (1, 1.5, 2) [default: 1]
    * flowControl - Enable flow control (true, false) [default: false]
  * callback(err) - Callback called after opening the port.

### write(buffer, [callback])

Writes data to the serial port.

__Arguments__

  * buffer - This can be a node Buffer object or a string.
  * callback(err, byteWritten) - Callback called after writing bytes.

### close(callback)

Closes the serial port.

__Arguments__

  * callback(err) - Callback called after the port is closed.

### Event: data

Event emitted by SerialPort when data is available. The first argument will contain a Buffer with the data.

### Event: error

Event emitted by SerialPort if an error occurs. The first argument will contain the error.

## list(callback)

Lists the serial ports on the machine.

__Arguments__

  * callback(err, ports) - Callback called after the list is retrieved.

---
_Source: https://npm.io/package/serialport2 · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
