When using GPS class with an Arduino (or similar microcontroller), be sure to upload the StandardFirmataPlus firmware to your board.
Breadboard for "GPS - Hardware Serial"
Fritzing diagram: gps-hardware-serial.fzz
Run this example from the command line with:
node eg/gps-hardware-serial.js
const { Board, GPS } = require("johnny-five");
const board = new Board();
board.on("ready", () => {
/*
* Explicitly setting HW_SERIAL1 for the port
*/
const gps = new GPS({
port: board.io.SERIAL_PORT_IDs.HW_SERIAL1
});
// If latitude, longitude, course or speed change log it
gps.on("change", position => {
const {latitude, longitude} = position;
console.log("GPS Position:");
console.log(" latitude : ", latitude);
console.log(" longitude : ", longitude);
console.log("--------------------------------------");
});
});