Working with serialports can be hard, this is a collection of projects that make it easier. We currently have the following packages.
serialport
the only package you need to get started.@serialport/stream
our traditional stream interface with nothing else@serialport/binding-abstract
as an abstract class for all bindings@serialport/binding-mock
for a mock binding package- Parser Byte Length
- Parser cctalk
- Parser delimiter
- Parser readline
- Parser ready
- Parser regex
- Parser slip-encoder
Imagine a world where you can write JavaScript to control blenders, lights, security systems, or even robots. That's right—robots! Thanks to Node Serialport, that world is here.
Node-Serialport provides an interface for the low-level serial port code necessary to control Arduino chipsets, X10 interfaces, Zigbee radios, highway signs, lcd screens, cash drawers, motor controllers, sensor packages, fork lifts, modems, drones, CNC machines, plotters, vending machines, ccTalk coin accecptors, SMS Gateways, RFID scanners and much more. If you have a hardware device with a UART we can speak to it. The physical world is your oyster with this goodie.
For a full breakdown of why we made Node-Serialport, please read NodeBots - The Rise of JS Robotics. It explains why one would want to program robots in JS in the first place. It's not being against firmware but we can be better than it.
You can generate the docs by running
npm run docs
And browsing to ./docs/index.html
.
- Clone this repo
git clone git@github.com:node-serialport/node-serialport.git
- Run
npm install
to setup local package dependencies (run this any time you depend on a package local to this repo) - Run
npm test
to ensure everything is working properly - Run
npm run generate
to generate a new project - Add dev dependencies to the root package.json and package dependencies to the package's one.
SerialPort packages are all MIT licensed and all it's dependencies are MIT or BSD licensed.