// This example illustates basic use of the NMEA library. // It assumes that a GPS receiver is connected to serial // port 'Serial1' at 4800 bps, and that a LED is connected // to digital i/o pin 0. // // A GPS data connection of type GPRMC is created, and // used to get distance to a destination. If the distance // is under 500 meters, the LED lights up, otherwise it // is off. #include NMEA gps(GPRMC); // GPS data connection to GPRMC sentence type // destination coordinates in degrees-decimal float dest_latitude = 48.858342; float dest_longitude = 2.294522; void setup() { Serial1.begin(4800); pinMode(0, OUTPUT); } void loop() { if (Serial1.available() > 0 ) { // read incoming character from GPS char c = Serial1.read(); // check if the character completes a valid GPS sentence if (gps.decode(c)) { // check if GPS positioning was active if (gps.gprmc_status() == 'A') { // read distance to destination in meters and set led accordingly if (gps.gprmc_distance_to(dest_latitude, dest_longitude, MTR) < 500.0) { digitalWrite(0, HIGH); } else { digitalWrite(0, LOW); } } } } }