Detector and wrapper for serial port devices
A computer may have multiple devices attached to it through serial ports, but we may not know which devices there are, and wo which ports they are connected. Moreover, which port they are on can change over time. PortsOfCall combines an architecture for searching the various attached ports, trying to detect what device is attached to them, with wrappers that can then be attached to the port and used as abstractions for the device itself. While I mean for it to have a plugin architecture, the main devices I mean to support out of the box are GPS units and OBD-II devices for cars.
npm install @bitblit/ports-of-call
This library depends on the following libraries:
- Serialport - I really hope its obvious why I depend on this
- GPS - For processing data coming in from the gps device
- Ratchet - I depend on my own Ratchet library for various utility functions
- Winston - because I always need logging
- Moment-Timezone - because I always need timezone specific handling of date
- RXJS - I use observable timers for periodic reconnection, as well as for wrapping some things in observables
Ha! No, seriously - I am actually improving on this in Node, slowly (2018-03-23)
To run the tests that ARE in here,
The 0.x.x branches are built on Node 8.11.1.
The 0.1.x branches are built on Node 8.12.0. The 0.2.x branches are built on Node 10.x
I'll write notes-to-self here on how my deployment from CircleCI is actually going to work.
Following the notes from here. Important points:
- Everything in the package that isn't in .gitignore or .npmignore gets uploaded. Review before post
For circleci using these notes
Looks like its my standard - set a release tag and push to Github, CircleCI takes care of the rest:
git commit -m "New stuff" git tag -a release-0.0.5 -m "Because I like it a lot" git push origin master --tags
Pull requests are welcome, although I'm not sure why you'd be interested!