UNPKG

@canboat/canboatjs

Version:

Native javascript version of canboat

26 lines 1.04 kB
#!/usr/bin/env node /** * Stream Maretron IPG100 binary frames as canboat plain CSV. * * Connects, completes the CONNECT handshake, sends SET_MODE\tBINARY\0 on * receipt of CONNECTED, and writes one CSV line per inbound 0xA5 frame to * stdout in the format canboat's `analyzer` accepts: * * YYYY-MM-DD-HH:MM:SS.mmm,<prio>,<pgn>,<src>,<dst>,<len>,<hex>,<hex>,... * * Control text frames (handshake replies, license-pool announces) go to * stderr, so stdout can be piped directly into `analyzerjs`: * * maretron-ipgjs ipg100-ip | analyzerjs -json -nv * * Outbound traffic: each line on stdin is sent to the bus. canboat plain * CSV is interpreted as a string; a line that starts with `{` is parsed * as a JSON PGN object (matching cansendjs's convention). * * cat commands.txt | maretron-ipgjs ipg100-ip * * stdin is not consumed until the CONNECT handshake completes; the kernel * pipe buffer applies backpressure to the producer so nothing is dropped. */ export {}; //# sourceMappingURL=maretron-ipgjs.d.ts.map