A fully functional GPS receiver with the ability to display the current location, heading, speed, average speed and maximum speed, the distance traveled, the bearing, distance and ETA to a way-point or coordinates, and the date and time.
This is a sketch to interface an Arduino, SparkFun GPS Shield, digital compass (optional), and Nuelectronics LCD Keypad Shield together in a useful way, providing all the functionality of older commercial GPS receivers.
The sketch provides four modes of operation: current location, heading and speed; distance traveled, average and maximum speed; bearing, distance and ETA to a set of coordinates or a way-point; and the date and time. In addition, up to 20 way-points can be saved with names, so you can build a library of locations you have visited or plan to visit later. All settings can be configured on the fly from a configuration menu, and the settings and saved way-points are saved in EEPROM so they are persistent between power cycles.
The source code for the sketch is available for download below.
In this basic configuration, the Arduino, SparkFun GPS Shield, and Nuelectronics LCD Keypad Shield are all stacked together using extra long stacking headers.
The only assembly required is attaching the GPS module to the GPS shield, soldering the stacking headers on to the GPS shield, and setting the toggle switch on the GPS shield to DLINE mode. After that, just attach the shields to the Arduino.
Modes of Operation and Configuration Options
|Arduino GPS System v 2.0||34.65 KB|