Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A JavaScript parser for the NMEA GPS protocol
branch: master
Failed to load latest commit information.
bin Cleanup
codecs added HDT and GGA encoders
test added HDT and GGA encoders
util
.gitignore Added node_modules to gitignore
LICENSE Added MIT license
README.md Added package.json and example output to the readme
helpers.js added HDT and GGA encoders
liner.js Create Node Streams Transformer interface and add command a command l…
nmea.js Update nmea.js
package.json Create Node Streams Transformer interface and add command a command l…
test.js Add APB and BWC parsing

README.md

A NMEA-0183 GPS Protocol parser

An example using the node-serialport library to read a stream of messages from a GlobalSat BU-353 USB GPS receiver:

var serialport = require('serialport');
var nmea = require('nmea');

var port = new serialport.SerialPort('/dev/cu.usbserial', {
                baudrate: 4800,
                parser: serialport.parsers.readline('\r\n')});

port.on('data', function(line) {
    console.log(nmea.parse(line));
});

// { type: 'active-satellites',
//   selectionMode: 'A',
//   mode: 1,
//   satellites: [ 29, 18, 21 ],
//   PDOP: '',
//   HDOP: '',
//   VDOP: '',
//   talker_id: 'GP' }
// { type: 'satellite-list-partial',
//   numMsgs: 3,
//   msgNum: 1,
//   satsInView: 11,
//   satellites: 
//    [ { id: '18', elevationDeg: 7, azimuthTrue: 214, SNRdB: 43 },
//      { id: '21', elevationDeg: 5, azimuthTrue: 114, SNRdB: 34 },
//      { id: '26', elevationDeg: 71, azimuthTrue: 234, SNRdB: 0 } ],
//   talker_id: 'GP' }

Something went wrong with that request. Please try again.