Skip to content
Location / GPS

NEO-6M GPS Module

Adds location tracking to any board with a UART connection — the maker's choice for GPS.

The NEO-6M is a complete GPS receiver module built around u-blox's NEO-6 chipset, combining the GPS antenna, RF front-end, and positioning engine on a single breakout board. It continuously outputs standard NMEA sentences over UART containing latitude, longitude, altitude, speed, and time, making it the go-to module for adding location tracking, geofencing, or time-synchronization to Arduino and ESP32 projects.

Specifications

Chipsetu-blox NEO-6 GPS engine
Operating voltage3.3V–5V DC (module has an onboard regulator; raw NEO-6M chip is 3.3V)
Operating current~45 mA typical during acquisition and tracking
Position accuracy~2.5m CEP (circular error probable)
Time-to-first-fixCold start ~27s, warm start ~27s, hot start ~1s (typical, open-sky conditions)
Update rateUp to 5 Hz position updates
Output formatStandard NMEA 0183 sentences (GPGGA, GPRMC, etc.) over UART
InterfaceUART, default baud rate 9600
AntennaIncluded ceramic patch antenna on most breakout boards, connected via a small U.FL connector

Pinout

PinNameDescription
1VCCPower, 3.3–5V DC depending on breakout board
2GNDGround
3TXUART transmit — connect to microcontroller RX to receive NMEA data
4RXUART receive — connect to microcontroller TX to send configuration commands
5PPSPulse-per-second output, useful for precise time synchronization projects

On boards like the Arduino Uno with only one hardware UART, use SoftwareSerial on spare digital pins so the hardware UART stays free for USB debugging; libraries like TinyGPS++ parse the raw NMEA sentences into usable latitude/longitude/time values. A clear view of the sky is required for a reliable fix — indoor testing will often show no satellites.

Variants

The NEO-6M remains the most budget-friendly and widely documented option for basic location-tracking projects. For faster fixes, better accuracy, or multi-constellation support (useful in urban/tree-covered areas), the NEO-M8N is worth the extra cost.

VariantTemp rangeHum rangeAccuracyProtocolPrice
NEO-6M breakout (with patch antenna)~$5-10
NEO-M8N~$10-18
NEO-7M~$6-12