AI agents & screen readers: for a machine-readable, text-only catalogue, start at /llms.txt. Products are available as Markdown (/products.md, /products/{handle}.md) and JSON (/products.json, /products/{handle}.json).
Store

SparkFun

· MPN: GPS-15005

$498.95 |
In stock at supplier
No reviews yet

Built around the u-blox NEO-M8P-2, this breakout brings high-accuracy GNSS and GPS positioning with RTK support to the Qwiic ecosystem. It’s designed for app...

Stock availability

Available with leadtime
240 available
Estimated Delivery
Arrives
Disclaimer
View Markdown
Secure checkout

Built around the u-blox NEO-M8P-2, this breakout brings high-accuracy GNSS and GPS positioning with RTK support to the Qwiic ecosystem. It’s designed for applications where standard GPS accuracy isn’t enough, with RTK positioning down to 25mm so you can track the location of a device, robot or vehicle with much greater precision.

The board can operate as either a rover or a base station, which makes it especially flexible for RTK setups. Two Qwiic connectors make it easy to add to an I2C system without soldering, while 0.1"-spaced pins are also broken out for breadboard or wired installations.

A rechargeable backup battery is included to retain the latest module configuration and satellite data for up to two weeks, helping the receiver warm-start much faster. Survey-in mode allows the module to become a base station and output RTCM 3.x correction data, and SparkFun also provides an Arduino library to simplify reading and controlling the module over Qwiic.

There’s plenty of flexibility on the interface side too, with USB, UART, I2C and SPI all available. The default I2C address is 0x42 and it is software configurable, but if you need to use more than one NEO-M8P-2 on the same I2C bus, a multiplexer is required.

Features:

  • RTK positioning: High accuracy GNSS and GPS location solutions including RTK
  • Accuracy: Positioning within one inch / 25mm with RTK
  • Operating modes: Capable of both rover and base station operations
  • Qwiic system: No soldering is required to connect it to the rest of your system
  • Pin breakout: 0.1"-spaced pins are broken out for breadboard use
  • Backup battery: Rechargeable backup battery keeps the latest module configuration and satellite data available for up to two weeks
  • Warm start: Backup battery helps warm-start the module and decreases time-to-first-fix
  • Survey-in mode: Allows the module to become a base station and produce RTCM 3.x correction data
  • Configuration options: Supports geofencing
  • Configuration options: Variable I2C address
  • Configuration options: Variable update rates
  • High precision RTK solution: Can be increased to 4Hz
  • USB: Enumerates as a COM port
  • UART: 3.3V TTL
  • I2C: Available via the two Qwiic connectors or broken out pins
  • SPI: Supported
  • Arduino library: Arduino library for u-blox modules makes reading and controlling the GPS-RTK over the Qwiic Connect System easy
  • I2C address: Default address is 0x42 and it is software configurable
  • Multiple sensors: A multiplexer/Mux is required to communicate to multiple NEO-M8P-2 sensors on a single bus

Specifications:

  • Voltage: 5V or 3.3V but all logic is 3.3V
  • Current: ~35mA (varies with constellations and tracking state)
  • Time to First Fix: 29s (cold), 1s (hot)
  • Max Navigation Rate - PVT (basic location over UBX binary protocol): 10Hz
  • Max Navigation Rate - RTK: 5Hz
  • Max Navigation Rate - Moving Baseline RTK: 4Hz
  • Max Navigation Rate - Raw: 10Hz
  • Horizontal Position Accuracy - without RTK: 2.5m
  • Horizontal Position Accuracy - with RTK: 0.025m
  • Qwiic Connectors: 2x Qwiic Connectors
  • Weight: 6.3g
  • Dimensions: 40.6mm x 33mm (1.6in x 1.3in)

A solid choice for precision positioning projects, RTK experiments, robotics, mapping and survey applications. It suits Arduino and Qwiic users particularly well, while still offering UART, SPI and USB for more custom integrations.

Jargon buster

Plain-language definitions for the technical terms used above.

3.3V TTL
3.3V TTL means the serial logic signals use 3.3 volt levels rather than 5 volts. This matters because connecting it directly to a 5V-only signal can damage the module or cause unreliable communication unless level shifting is used.
breakout
A breakout board carries a small or fine-pitched component and brings its connections out to standard, breadboard- and header-friendly pins. Describing a part as a breakout means it can be wired into a project without soldering directly to the component's tiny contacts.
COM port
A COM port is how a computer (chiefly under Windows) presents a serial port to software, whether a physical RS-232 port or a virtual port created when a USB-to-serial device is plugged in. Software can then communicate with the connected device over serial using a terminal or configuration program.
GNSS
GNSS stands for Global Navigation Satellite System, an umbrella term for satellite positioning networks such as GPS, GLONASS, Galileo and BeiDou. Receivers use these satellites to determine position, and high-precision units can output a steady stream of serial position data.
GPS
The US satellite navigation system used by GNSS receivers to calculate position and time. Support for GPS is important because it is widely available and often used together with other constellations for more reliable positioning.
I2C
I2C is a two-wire communication bus used by many sensors and small modules. It matters because several I2C devices can share the same two wires, but each device needs a compatible address and your controller must support I2C.
I2C address
An I2C address is the number a device uses so a microcontroller can tell it apart from other devices on the same I2C bus. It matters because two devices with the same fixed address may conflict if used together.
multiplexer
A multiplexer (mux) is a chip or circuit that selects one of several input signals and routes it to a single shared output, with select lines choosing which input is connected; running the same idea in reverse, to send one input to a chosen output, gives a demultiplexer. Multiplexers let a single controller or line work with several signals or devices that would otherwise clash on a shared connection.
NEO-M8P-2
A u-blox GNSS receiver module that supports high-precision RTK positioning. The exact module matters because it determines the board’s accuracy, update rates, supported interfaces, and whether it can work as a rover or base station.
PVT
Position, velocity and time data reported by a GNSS receiver. Knowing the PVT update rate helps you judge how often the board can provide basic navigation information to your project.
Qwiic
Qwiic is a plug-in connector system for I2C devices that uses small 4-pin cables, so you can connect compatible sensors without soldering. It matters because your controller or adapter also needs Qwiic, or you will need a cable or breakout to wire it up.
RTCM 3.x
RTCM 3.x is a standard data format used to send GNSS correction information from a base station to a rover. It matters because both ends of an RTK setup need to understand the correction format to achieve high-accuracy positioning.
RTK
Real-Time Kinematic positioning is a GNSS technique that uses correction data from a base station to greatly improve location accuracy. It matters if you need centimetre-level positioning for robotics, mapping, surveying, or tracking rather than ordinary metre-level GPS accuracy.
SPI
A fast serial communication bus often used for displays, memory cards, and sensors. It matters because SPI devices need specific pins for clock and data, plus a separate chip-select line for each device.
Survey-in mode
Survey-in mode is a GNSS base-station setup process in which a receiver averages its own position over a set period to establish a fixed reference location. A receiver that supports survey-in can act as an RTK base and generate correction data for one or more rover receivers.
UART
UART is a simple asynchronous serial interface that sends data over separate transmit and receive wires, usually labelled TX and RX, with both ends set to the same baud rate. It is a common way for microcontrollers and other serial devices to exchange data.
UBX binary protocol
UBX is u-blox’s binary communication protocol for sending configuration commands and receiving detailed navigation data. It matters when you want faster, more compact, or more complete data than standard text-based GPS messages can provide.

NEO-M8P-2 Datasheet

Datasheet · 866.8 KB · Click any page to view full size

Download PDF

GPS-RTK NEO-M8P-2 Schematic

Schematic · 82.5 KB · Click any page to view full size

Download PDF

NEO-M8P-2 Datasheet

Datasheet · 1.9 MB · Click any page to view full size

Download PDF

NEO-M8P Product Summary

Product Brief · 314.3 KB · Click any page to view full size

Download PDF

NEO-M8P Hardware Integration Manual

User Guide · 1.2 MB · Click any page to view full size

Download PDF

u-blox 8 / M8 Receiver Description and Protocol Spec

User Guide · 8.0 MB · Click any page to view full size

Download PDF

u-blox ECCN Document

Compliance · 27.8 KB · Click any page to view full size

Download PDF

Supplier page — sparkfun.com

Supplier Description · 712.2 KB · Click any page to view full size

Download PDF

Source Code

Open-source libraries, firmware & example projects for this product

Stella
Stella Expert

Ask me anything about this product

Maddy, co-founder of Little Bird

Need help? We're here for you!

Hi, I'm Maddy. My team and I are ready to help with your order or any questions.