pb-protocol
v0.6.0
Published
[Documentation](https://s3.amazonaws.com/hd-powerblue/pb-protocol/docs/index.html) | [Code Coverage](https://s3.amazonaws.com/hd-powerblue/pb-protocol/coverage/index.html)
Downloads
6
Readme
Powerblue Protocol Serialization
This module provides a simple API for serializing PowerBlue commands to binary. It also handles response parsing for commands which expect a response. It is written in Typescript and can be consumed as a module in either TS/JS.
References
Example
import { GoToPositionCommand } from 'pb-protocol';
const cmd = new GoToPositionCommand({
servo1: 0.5, // values are normalized 0-1
velocity: 0.9
});
// toData() returns an Uint8 array
console.log(cmd.toData()); // [ 247, 1, 0, 9, 136, 19, 0, 128, 0, 128, 0, 128, 144 ]
// Note that UInt16 and larger are printed in a more readable fashion with toValues() methods
console.log(cmd.toValues()); // [ 247, 1, 0, 9, 5000, 32768, 32768, 32768, 144 ]
console.log(cmd.toHexValues()); // [ 'F7', '01', '00', '09', '1388', '8000', '8000', '8000', '90' ]
Getting Started
pb-protocol can be consumed as an npm dependency in a typescript or javascript project. You will need (and should have) gitlab ssh access to the project repository for this to work.
i.e. in package.json
"dependencies": {
"pb-protocol": "git+ssh://[email protected]:powerblue/pb-protocol.git#v0.4.2"
},
For more information on formatting that git url dependency string check out the npm docs
Releasing
- Generate JS w/ type maps with
npm run build
- Bump version with
npm version $BUMP
where $BUMP = (major|minor|patch) - Tag the repository with this new version
git tag $VERSION
git push origin master --tags
Eventually we'll script this.