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
| Chipset | u-blox NEO-6 GPS engine |
| Operating voltage | 3.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-fix | Cold start ~27s, warm start ~27s, hot start ~1s (typical, open-sky conditions) |
| Update rate | Up to 5 Hz position updates |
| Output format | Standard NMEA 0183 sentences (GPGGA, GPRMC, etc.) over UART |
| Interface | UART, default baud rate 9600 |
| Antenna | Included ceramic patch antenna on most breakout boards, connected via a small U.FL connector |
Pinout
| Pin | Name | Description |
|---|---|---|
| 1 | VCC | Power, 3.3–5V DC depending on breakout board |
| 2 | GND | Ground |
| 3 | TX | UART transmit — connect to microcontroller RX to receive NMEA data |
| 4 | RX | UART receive — connect to microcontroller TX to send configuration commands |
| 5 | PPS | Pulse-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.
| Variant | Temp range | Hum range | Accuracy | Protocol | Price |
|---|---|---|---|---|---|
| NEO-6M breakout (with patch antenna) | ~$5-10 | ||||
| NEO-M8N | ~$10-18 | ||||
| NEO-7M | ~$6-12 |