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-29888

$1,180.05 |
In stock at supplier
No reviews yet

Build high-accuracy positioning projects around a Raspberry Pi with this GNSS Flex pHAT and included ZED-X20P and IM19 module. It combines a u-blox ZED-X20P ...

Stock availability

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

Build high-accuracy positioning projects around a Raspberry Pi with this GNSS Flex pHAT and included ZED-X20P and IM19 module. It combines a u-blox ZED-X20P all-band RTK GNSS receiver with a Feyman IM19 IMU for centimetre-level positioning, tilt compensation and dead reckoning in demanding navigation applications.

The pHAT bridges your Raspberry Pi to the modular SparkPNT GNSS Flex ecosystem using an extended 40-pin header and standardised 2x10-pin headers. The GNSS Flex format makes it simpler to swap modules for repair or future upgrades, while onboard jumpers allow the default GNSS-to-IMU data path to be reconfigured for your project.

By default, navigation data from the ZED-X20P is fed to the IM19, which outputs proprietary NMEA messages containing compensated position and attitude data including roll, pitch and yaw. The board also provides USB-C, UART, I2C, Qwiic, microSD, SMA and U.FL connectivity options for flexible integration.

This product requires an external GNSS antenna and a Raspberry Pi or similar single-board computer. A GNSS antenna can be connected via the U.FL connector on the GNSS Flex module, or via the sturdier SMA connector on the pHAT bridged to U.FL with a short U.FL cable.

Features:

  • Raspberry Pi Connectivity: Standard 40-pin GPIO header for a direct, secure connection.
  • USB-C Port: Provides an alternative data interface to the GNSS module. (Read USB note)
  • Versatile Antenna Connections: Equipped with both SMA and U.FL connectors to accommodate various antenna types.
  • Mounting Hardware Included: Comes with the necessary standoffs, screws, and an extended header for a clean, stable setup.
  • RTK & PPP Ready: Supports Real-time Kinematics (RTK), PPP-RTK, and Precise Point Positioning* for ultimate flexibility.
  • L-Band Corrections: Natively supports L-band correction services*, eliminating the need for external receivers.
  • High Update Rate: Ensures smooth and reliable operation in high-speed robotics and vehicle control systems.
  • Uncompromising Security: Features multi-layered defenses including a Root of Trust, advanced jamming and spoofing detection, and Galileo OSNMA cryptographic authentication.
  • Survey-Grade Accuracy: Delivers roll and pitch measurements accurate to within 0.05 degrees.
  • Tilt Compensation: The IM19 can calculate a virtual digital level point at any tilt angle.
  • Sensor Fusion: Offers a continuous navigation solution (Dead Reckoning) even during brief GNSS signal loss.

Specifications:

  • GNSS Flex pHAT Raspberry Pi header: 40-pin socket
  • GNSS Flex pHAT GNSS Flex module header: 40-pin header
  • GNSS Flex pHAT module headers: Two 2x20-pin, 2mm-pitch male headers
  • GNSS Flex pHAT power: 3.3V
  • GNSS Flex pHAT backup power: Backup power
  • GNSS Flex pHAT USB bus detect: USB bus detect (not a power source)
  • GNSS Flex pHAT USB data: USB data (Read USB note)
  • GNSS Flex pHAT UART: UART (x4)
  • GNSS Flex pHAT SD card: SD card
  • GNSS Flex pHAT I2C bus: I2C bus
  • GNSS Flex pHAT PPS signal: PPS signal (x2)
  • GNSS Flex pHAT LED indicators: LED indicators (x2)
  • GNSS Flex pHAT event indicators: Event indicators (x2)
  • GNSS Flex pHAT USB-C connector: USB-C connector (Read USB note)
  • GNSS Flex pHAT GNSS Flex module interface: Interfaces directly w/ GNSS Flex Module
  • GNSS Flex pHAT antenna bridge: Antenna bridge
  • GNSS Flex pHAT U.FL connector: U.FL connector
  • GNSS Flex pHAT SMA connector: SMA connector
  • GNSS Flex pHAT µSD socket: µSD card socket
  • GNSS Flex pHAT Qwiic connector: Qwiic connector
  • GNSS Flex pHAT indicator LED PWR: PWR (Red)
  • GNSS Flex pHAT indicator LED PPS: PPS (Yellow)
  • GNSS Flex pHAT indicator LED RTK: RTK (White)
  • GNSS Flex pHAT indicator LED PVT: PVT (Blue)
  • GNSS Flex pHAT jumpers: Twenty-four jumpers
  • GNSS Flex pHAT Raspberry Pi GPIO isolation: Raspberry Pi GPIO isolation (x16)
  • GNSS Flex pHAT LED power isolation: LED power isolation (x4)
  • GNSS Flex pHAT I2C pull-up resistors: I2C pull-up resistors (x4)
  • GNSS Flex Module GNSS module: u-blox ZED-X20P Allband, GNSS module
  • GNSS constellation GPS: GPS (USA)
  • GNSS constellation Galileo: Galileo (EU)
  • GNSS constellation BDS: BDS (China)
  • GNSS constellation QZSS: QZSS (Japan)
  • GNSS constellation NavIC: NavIC (India)
  • SBAS system WAAS: WAAS (USA)
  • SBAS system EGNOS: EGNOS (EU)
  • SBAS system BDSBAS: BDSBAS (China)
  • SBAS system MSAS: MSAS (Japan)
  • SBAS system GAGAN: GAGAN (India)
  • GNSS Flex Module IMU: IM19 Inertial Measurement Unit
  • GNSS Flex Module headers: Two 2x20-pin, 2mm-pitch female headers
  • GNSS Flex Module pHAT / breakout socket: 40-pin socket for GNSS Flex pHAT / Breakout
  • GNSS Flex Module power: 3.3V
  • GNSS Flex Module backup power: Backup power
  • GNSS Flex Module USB bus detect: USB bus detect (not a power source)
  • GNSS Flex Module USB: USB (x1) (Read USB note)
  • GNSS Flex Module UART: UART (x4)
  • GNSS Flex Module I2C bus: I2C bus
  • GNSS Flex Module PPS signal: PPS signal (x1)
  • GNSS Flex Module PVT signal: PVT signal (x1)
  • GNSS Flex Module RTK signal: RTK signal (x1)
  • GNSS Flex Module event signal: Event signal (x1)
  • GNSS Flex Module U.FL connector antenna: GNSS Antenna (Active, Multi-band)
  • GNSS Flex Module U.FL connector active antenna power: 3.3V power for an active antenna
  • GNSS Flex Module dimensions: 44.0mm x 34.0mm (Approx. 1.73" x 1.34")
  • GNSS Flex Module mounting holes: Four mounting holes
  • GNSS Flex Module screw compatibility: 4-40 screw compatible
  • GNSS Flex Module hole centres: Hole centers: 39.0mm x 29.0mm
  • GNSS Flex Module header spacing: 36.0mm
  • Flex Module USB interface: ZED-X20P only (D+ and D-) (Read USB note)
  • Flex Module I2C interface: ZED-X20P only (SDA and SCL)
  • Flex Module Flex COM1: ZED-X20P UART1 (TX and RX only)
  • Flex Module Flex COM2: ZED-X20P UART2 (TX and RX only)
  • Flex Module Flex COM3: IM19 UART1 (TX and RX only)
  • Flex Module Flex COM4: IM19 UART2
  • Flex Module PPS1: ZED-X20P TIMEPULSE
  • Flex Module PPS2: N/C
  • Flex Module EVENTA: ZED-X20P EXTINT
  • Flex Module EVENTB: N/C
  • Flex Module RTK LED: ZED-X20P RTK_STAT (Inverted)
  • Flex Module PVT LED: ZED-X20P GEO_STAT (Geofence)
  • ZED-X20P supply voltage: 2.7V to 3.6V
  • ZED-X20P GPS support: GPS: L1C/A, L2C, L5
  • ZED-X20P Galileo support: Galileo: E1B/C, E5a, E6
  • ZED-X20P BeiDou support: BeiDou: B1I, B1C, B2a, B3I
  • ZED-X20P QZSS support: QZSS: L1C/A, L1C/B*, L2C, L5, L6
  • ZED-X20P NavIC support: NavIC: L1*, L5
  • ZED-X20P SBAS support: SBAS: L1C/A
  • ZED-X20P USB interface: USB (Read USB note)
  • ZED-X20P UART interface: UART x2
  • ZED-X20P SPI interface: SPI
  • ZED-X20P I2C interface: I2C
  • ZED-X20P programmable flash memory: Programmable flash memory
  • ZED-X20P carrier phase output: Carrier phase output
  • ZED-X20P jamming detection: Jamming detection
  • ZED-X20P Galileo OSNMA: Galileo OSNMA
  • ZED-X20P secure boot: Secure boot
  • ZED-X20P AssistNow service: AssistNow
  • ZED-X20P PointPerfect service: PointPerfect
  • ZED-X20P operating temperature: -40°C to 85°C
  • ZED-X20P dimensions: 17.0mm x 22.0mm x 2.4mm
  • IM19 accelerometer operating range: ±8g
  • IM19 gyroscope operating range: ±1000°/s
  • IM19 accelerometer bias accuracy: ±5mg
  • IM19 gyroscope bias accuracy: ±0.2°/s
  • IM19 roll/pitch accuracy: ±0.025° (1σ)
  • IM19 heading accuracy: ±0.25° (1σ)
  • IM19 RTK accuracy: + 0.3mm/tilt°, with 200cm straight pole (1σ)
  • IM19 auto steering yaw: 0.25° (1σ)
  • IM19 initialization: ~1s
  • IM19 footprint: 14.8mm x 18.4mm
  • Development note: *: Feature in development

According to u-blox, support for Precise Point Positioning (PPP) and full L-band correction services is still under development and will be made available through a future firmware update.

Jargon buster

Plain-language definitions for the technical terms used above.

B1I
A BeiDou satellite signal used for standard positioning. It matters because the receiver must support the signal bands used by a constellation to take advantage of those satellites.
B2a
A BeiDou satellite signal used by newer dual-band GNSS receivers. Support for B2a can improve accuracy and reliability when combined with other GNSS bands.
BDS
BeiDou, China’s satellite navigation system. Support for BDS gives the receiver access to more satellites, which can help maintain a better position fix in challenging locations.
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.
E5a
A Galileo satellite signal band used for higher-performance positioning services. Support for E5a can help dual-band GNSS receivers improve accuracy and reduce errors from atmospheric delay.
EGNOS
Europe’s SBAS service for improving GNSS positioning accuracy and reliability. It is relevant if the receiver will be used in Europe or nearby supported areas without an RTK correction link.
Flash memory
Flash memory is non-volatile memory that retains stored data even when power is removed, and can be erased and rewritten in blocks. It lets data such as firmware, settings or saved records persist across power cycles.
GAGAN
India’s SBAS service for improving GNSS positioning. It matters for projects in its coverage region because it can improve standard GNSS accuracy when RTK is not being used.
Galileo
Europe’s satellite navigation system. Galileo support can improve satellite availability and accuracy, especially when combined with GPS and other constellations.
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.
GPIO
General-purpose input/output pins are microcontroller pins you can set in software to read signals, switch devices on and off, or connect to peripherals. The number of GPIO pins matters because it limits how many buttons, LEDs, sensors, and other parts you can wire directly to the board.
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.
Gyroscope
A gyroscope measures rotation, such as how fast a board is turning around its X, Y, and Z axes. This matters for projects like gesture controls, balancing robots, and motion tracking where tilt or rotation changes need to be detected.
Headers
Rows of connector contacts on a fixed pitch (commonly 2.54 mm) used to link a board to a breadboard, jumper wires, or another board. They come as male pin headers and female socket headers; when a module ships with pre-soldered headers it can be used straight away, whereas bare pads require soldering the pins yourself.
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.
IMU
An IMU (Inertial Measurement Unit) combines motion sensors, typically an accelerometer and gyroscope and sometimes a magnetometer, to measure movement and orientation. It can sense motion, tilt, vibration, rotation, and changes in direction, which is useful for tasks such as navigation, stabilisation, gesture detection, and asset tracking.
L1C/A
A GPS signal band used by many GNSS receivers for standard positioning. Support for this band helps determine which satellite signals the receiver can use and how well it can maintain a location fix.
L2C
A second GPS signal band used by dual-band GNSS receivers to improve precision and reduce errors caused by the atmosphere. It matters for RTK and high-accuracy applications because using two bands can produce faster and more reliable centimetre-level fixes.
L5
A modern GNSS signal band used by several satellite systems for more accurate and robust positioning. Dual-band receivers that include L5 can often perform better than single-band receivers, especially for RTK and areas with reflected signals.
LED
A light-emitting diode (LED) is a small electronic component that emits light when current flows through it in the correct direction. Because it only conducts one way, its polarity matters, and a through-hole LED must be soldered the correct way around to light up.
MSAS
Japan’s SBAS service for improving GNSS positioning. It is useful to know because SBAS benefits depend on whether your project is located in the service’s coverage area.
pHAT
A smaller add-on board format for Raspberry Pi, similar in idea to a HAT but usually not full-sized. It matters because pHAT compatibility can affect how neatly a board stacks or fits into a Raspberry Pi project.
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.
QZSS
Japan’s regional satellite navigation system designed to improve coverage around Japan and the Asia-Pacific region. QZSS support can improve satellite availability in supported regions when used alongside GPS.
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.
RX
RX means receive, usually showing data being received by the board. An RX indicator LED can help with troubleshooting USB or serial communication.
SBAS
Satellite-Based Augmentation System, a set of regional services that broadcast correction information for GNSS receivers. SBAS can improve ordinary GPS-style positioning, although it is not the same as centimetre-level RTK correction.
single-board computer
A complete computer built onto one circuit board, usually including the processor, memory, ports, and connectors. This matters because accessories like heatsinks must match the board’s layout and mounting holes to fit properly.
SMA
SMA is a small threaded coaxial (RF) connector widely used to attach antennas and other radio-frequency cables. A device with SMA antenna ports needs antennas or pigtails with matching SMA connectors, or a suitable adapter, to connect to them.
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.
TX
TX means transmit, usually showing data being sent from the board. A TX indicator LED can help you see when the board is communicating or uploading code.
u.FL
u.FL is a tiny snap-on antenna connector often used on compact wireless boards. A board with u.FL usually needs an external antenna, which matters if the product will be inside an enclosure or needs better antenna placement.
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.
USB-C
USB-C is a small, reversible USB connector that can carry power, data and, on some devices, video over a single cable. The same connector can range from charging only to high-speed data, so the functions a given port actually supports vary.
WAAS
A North American SBAS service that provides correction data for GNSS receivers. It matters if you are using the product in a supported region and want better non-RTK positioning accuracy.

GNSS Flex pHAT Schematic

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

Download PDF

GNSS Flex pHAT Board Dimensions

Mechanical Drawings · 236.3 KB · Click any page to view full size

Download PDF

u-blox ZED-X20P Product Summary

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

Download PDF

u-blox ZED-X20P Datasheet

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

Download PDF

u-blox ZED-X20P Integration Manual

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

Download PDF

u-blox X20 HPG Interface Description

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

Download PDF

u-blox HPG202 Release Notes

Product Change Note · 150.2 KB · Click any page to view full size

Download PDF

GPS L5 Configuration Application Note

App / Software · 373.5 KB · Click any page to view full size

Download PDF

Supplier page — sparkfun.com

Supplier Description · 1.1 MB · 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.