Global Positioning System (GPS)
The NEO-6M GPS module is shown in the figure below. It comes with an external antenna, and does’t come with header pins. So, you’ll need to get and solder some.

- This module has an external antenna and built-in EEPROM.
- Interface: RS232 TTL
- Power supply: 3V to 5V
- Default baudrate: 9600 bps
- Works with standard NMEA sentences
Pin Wiring
The NEO-6M GPS module has four pins: VCC, RX, TX, and GND. The module communicates with the Arduino via serial communication using the TX and RX pins, so the wiring couldn’t be simpler:
NEO-6M GPS Module |
Wiring to Arduino UNO |
VCC |
5V |
RX |
TX pin defined in the software serial |
TX |
RX pin defined in the software serial |
GND |
GND |
Getting GPS Raw Data
To get raw GPS data you just need to start a serial communication with the GPS module using Software Serial. Continue reading to see how to do that.
Interfacing with Arduino:
Wire the NEO-6M GPS module to your Arduino by following the schematic below.

- The module GND pin is connected to Arduino GND pin
- The module RX pin is connected to Arduino pin 3
- The module TX pin is connected to Arduino pin 4
- The module VCC pin is connected to Arduino 5V pin
Code:
Copy the following code to your Arduino IDE and upload it to your Arduino board.
/*
* Rui Santos
* Complete Project Details https://randomnerdtutorials.com
*/
#include <SoftwareSerial.h>
// The serial connection to the GPS module
SoftwareSerial ss(4, 3);
void setup(){
Serial.begin(9600);
ss.begin(9600);
}
void loop(){
while (ss.available() > 0){
// get the byte data from the GPS
byte gpsData = ss.read();
Serial.write(gpsData);
}
}
Application:
- Location – determining a position
2. Navigation – getting from one location to another
3. Tracking – monitoring object or personal movement
4. Mapping – creating maps of the world
5. Timing – bringing precise timing to the world
Reference:
https://www.novatel.com/focus-pages/what-are-gps-systems-used-for/
https://electrosome.com/interfacing-gps-arduino/
https://randomnerdtutorials.com/guide-to-neo-6m-gps-module-with-arduino/
https://www.electronicwings.com/arduino/gps-module-interfacing-with-arduino-uno