#include <TinyGPS++.h>
#include <SoftwareSerial.h>
// Define pins for SoftwareSerial
#define RXPin 1 // GPS TX → Arduino RX
#define TXPin 0 // GPS RX → Arduino TX (optional)
// Create TinyGPS++ object
TinyGPSPlus gps;
// Create SoftwareSerial object
SoftwareSerial gpsSerial(RXPin, TXPin);
void setup() {
Serial.begin(9600); // Begin Serial Monitor communication
gpsSerial.begin(9600); // Begin GPS communication
Serial.println("Initializing GPS... Please wait for satellite lock.");
}
void loop() {
// Check if there is data available from the GPS module
while (gpsSerial.available() > 0) {
char c = gpsSerial.read(); // Read each character from GPS
gps.encode(c); // Feed character to TinyGPS++ for parsing
// If GPS has valid location data, print latitude and longitude
if (gps.location.isUpdated()) {
Serial.print("Latitude: ");
Serial.println(gps.location.lat(), 6); // Latitude with 6 decimal places
Serial.print("Longitude: ");
Serial.println(gps.location.lng(), 6); // Longitude with 6 decimal places
Serial.println("----------------------");
}
}
// Provide feedback if no satellite data is available
if (millis() % 5000 == 0 && !gps.location.isValid()) {
Serial.println("Waiting for satellite signal...");
}
}
AFTER COMPILING THE ABOVE WITH GPS SENSOR(GY-GPS6MV2/L80-M39), NOT RECEVING ANY GPS LOCATION IN ARDUINO SERIAL MONITOR . PLEASE SUGGEST SOLUTION