Skip to content

Hardware Overview

Banner

pHAT (not HAT+)

This is product does not completely meet Raspberry Pi's HAT+ specification.

  • An identification EEPROM is not populated on the board; however, we do provide a footprint for future use.
  • Without an ID EEPROM, a Raspberry Pi cannot automatically identify this board. Therefore, users will need to manually install any software and provide configurations for the hardware connections.

Introduction

  • SparkFun GNSS Flex pHAT
    SKU: GPS-28137


    Product Thumbnail

  • The SparkFun GNSS Flex pHAT is a Raspberry Pi pHAT that functions as a carrier board for our SparkPNT GNSS Flex modules. With pre-soldered headers, no soldering is required to stack the pHAT on the headers of a Raspberry Pi, NVIDIA Jetson Nano, Google Coral, or other single-board computer with a similar 40-pin header.

    The GNSS Flex pHAT also comes populated with two sets of 2x10 pin, 2mm pitch male headers for attaching a GNSS Flex module. With these headers, the GNSS Flex system is designed to be modular so that boards are pin-compatible for upgrades and can be easily swapped for repairs. Depending on the capabilities of the GNSS Flex module that is connected, these pins will breakout the USB, UART (x4), I2C, and SD card interfaces for the GNSS receiver along with any PPS or event signals, using a standardized pin out.

Design Files

  • Design Files



    Hardware Included w/ Kit


    • x1 - SparkPNT GNSS Flex Module
    • x1 - Tall GPIO Female Headers - 2x20 Pin
    • x1 - 50mm U.FL to U.FL Cable
    • x4 - Aluminum Hex Standoff
      • Thread: M2.5-0.45; Length: 16mm
    • x8 - Phillips Machine Screw
      • Thread: M2.5-0.45x8mm
  • Manipulate 3D Model
    Controls Mouse Touchscreen
    Zoom Scroll Wheel 2-Finger Pinch
    Rotate Left-Click & Drag 1-Finger Drag
    Move/Translate Right-Click & Drag 2-Finger Drag

    Board Dimensions
    Dimensions of the GNSS Flex pHAT.

    Need more measurements?

    For more information about the board's dimensions, users can download the KiCad files for this board. These files can be opened in KiCad and additional measurements can be made with the measuring tool.

    KiCad - Free Download!

    KiCad is free, open-source CAD program for electronics. Click on the button below to download their software. (*Users can find out more information about KiCad from their website.)

    📏 Measuring Tool

    This video demonstrates how to utilize the dimensions tool in KiCad, to include additional measurements:

    QR code to play video

Board Layout

The GNSS Flex system is designed around two 2x10-pin, 2mm pitch headers used mate the two types of boards. A standardized pin layout, keeps the ecosystem pin-compatible for upgrades and allows board to be easily swapped for repairs. Depending on the capabilities of the GNSS receiver, these pins will breakout the USB, UART (x4), I2C, and SD card interfaces along with any PPS or event signals of the GNSS receiver.

Board Layout

Layout of the major components of the GNSS Flex pHAT.

The GNSS Flex pHAT has the following features:

  1. 40-pin GPIO Header
    The 2x20 pin, 0.1" pitch female header for stacking the pHAT on top the Raspberry Pi's 40-pin GPIO header.
  2. GNSS Flex Headers
    Two sets of 2x10 pin, 2mm pitch female headers for connecting a GNSS Flex module.
  3. Alignment Indicator
    Used to indicate the board alignment of a GNSS Flex module.
  4. Antenna Bridge
    U.FL and SMA connectors for attaching an external GNSS antenna.
  5. Status LEDs
    Four status indication LEDs for the pHAT and attached GNSS Flex module.
  6. USB-C Connector
    A USB connector that breaks out the USB interface of an attached GNSS Flex module.
  7. SD Card Slot
    Depending on the capabilities of the GNSS Flex module, a µSD card slot for data logging.
  8. Qwiic Connector
    A Qwiic connector for attaching peripheral devices to the I2C bus.

Antenna Bridge

The SMA connector provides users with a more robust interface for attaching an external GNSS antenna. With the U.FL and SMA connectors bridged together and their ground plane isolated from the rest of the board, this allows users to pass the antenna connection from the GNSS Flex module to the GNSS Flex pHAT.

Antenna bridge

An SMA antenna bridge on the GNSS Flex pHAT, which provides a more robust connection.

40-pin GPIO Header

In its simplest form, the SparkFun GNSS Flex pHAT sits atop a Raspberry Pi interfacing with its 40-pin header.

GPIO header

The 40-pin female GPIO header for attaching to an SBC.

Interfaces

The following interfaces and signals of the GNSS Flex system are connected to the 40-pin female GPIO header of the GNSS Flex pHAT. Below, are tables detailing the pin connections for each interface.

UART Numbering

Please note that the UART numbers (UART1 - UART4) listed below follow the GNSS Flex Module UART numbering scheme. The mosaic-X5 supports four hardware UARTs (COM1 - COM4). The LG290P supports only three (UART1 - UART3).

Please also note that the UART numbers on Raspberry Pi will be different, as will the /dev/ttyAMA device names. There is not a 1:1 mapping between the GNSS Flex UART numbers and the Raspberry Pi UART numbers. The Raspberry Pi UART numbers also vary from model to model; the Pi 5 and Pi 4 numbering is different for example.

GNSS Flex Pin Raspberry Pi GPIO
RX1 GPIO14 (TX)
TX1 GPIO15 (RX)

Highlighted in Green

GNSS Flex Pin Raspberry Pi GPIO
RX2 GPIO08 (CE0)
TX2 GPIO09 (POCI0)
RTS2 GPIO10 (PICO0)
CTS2 GPIO11 (SLK0)

Highlighted in Blue

GNSS Flex Pin Raspberry Pi GPIO
RX3 GPIO04 (GCLK0)
TX3 GPIO05 (GCLK1)
RTS3 GPIO06 (GCLK2)
CTS3 GPIO07 (CE1)

Highlighted in Yellow

GNSS Flex Pin Raspberry Pi GPIO
RX4 GPIO12 (PMW0)
TX4 GPIO13 (PMW1)

Highlighted in Red

GPIO header
The pin connections of the UART interface, from the GNSS Flex system to the 40-pin female GPIO header.

GNSS Flex Pin Raspberry Pi GPIO
SDA GPIO02 (SDA)
SCL GPIO03 (SCL)

GPIO header
The pin connections of the I2C interface, from the GNSS Flex system to the 40-pin female GPIO header.

GNSS Flex Pin Raspberry Pi GPIO
PPS1 GPIO22
PPS2 GPIO23

GPIO header
The pin connections of the PPS signals, from the GNSS Flex system to the 40-pin female GPIO header.

GNSS Flex Pin Raspberry Pi GPIO
EVENTA GPIO24
EVENTB GPIO25

GPIO header
The pin connections of the event triggers, from the GNSS Flex system to the 40-pin female GPIO header.

LEDs

There are four status LEDs on the GNSS Flex pHAT:

Status LEDs

The status LED indicators on the GNSS Flex pHAT.

  • PWR - Power (Red)
    • Turns on once power is supplied to the board from the 40-pin GPIO header
  • PPS - Pulse-Per-Second (Yellow)
    • Indicates when there is a pulse-per-second signal from the GNSS Flex module
  • RTK - RTK (White)
    • Usually indicates when an RTK fix has been established or when the correct RTCM data is being received by the GNSS Flex module
  • PVT - PVT (Blue)
    • Usually, indicates when an GNSS lock or a position fix has been established by the GNSS Flex module

USB Connector

Depending on the capabilities of the GNSS receiver, the USB connector breaks out the USB interface from the GNSS Flex module.

USB connector

The USB connector on the GNSS Flex pHAT.

SD Card Slot

Depending on the capabilities of the GNSS receiver, the µSD card slot can be used for data logging.

SD card slot

The SD card slot on the GNSS Flex pHAT.

Qwiic Connector

The Qwiic connector attached to the primary I2C interface of the 40-pin GPIO header.

Qwiic connector

The Qwiic connector on the GNSS Flex pHAT.

What is Qwiic?

Qwiic Logo - light theme Qwiic Logo - dark theme


The Qwiic connect system is a solderless, polarized connection system that allows users to seamlessly daisy chain I2C boards together. Play the video, to learn more about the Qwiic connect system or click on the banner above to learn more about Qwiic products.

QR code to instructional video

Features of the Qwiic System

no soldering - light theme no soldering - dark theme

Qwiic cables (4-pin JST) plug easily from development boards to sensors, shields, accessory boards and more, making easy work of setting up a new prototype.

polarized connector - light theme polarized connector - dark theme

There's no need to worry about accidentally swapping the SDA and SCL wires on your breadboard. The Qwiic connector is polarized so you know you’ll have it wired correctly every time.

The part numbers for the PCB connector is SM04B-SRSS (Datasheet) and the mating connector on the cables is SHR04V-S-B; or an equivalent 1mm pitch, 4-pin JST connection.

daisy chainable - light theme daisy chainable - dark theme

It’s time to leverage the power of the I2C bus! Most Qwiic boards will have two or more connectors on them, allowing multiple devices to be connected.

Jumpers

There are twenty-three jumpers on the GNSS Flex pHAT:

Jumpers on the top of the pHAT

Jumpers on the top of the GNSS Flex pHAT.

Jumpers on the bottoms of the pHAT

Jumpers on the bottom of the GNSS Flex pHAT.

  • The SHLD jumper can be cut to isolate the shielding of the USB-C connector from the ground plane of the board.
  • All the jumpers labeled with numbers, can be cut tp disconnect a signal from the GNSS Flex header to the associated Raspberry Pi GPIO pin (refer to the 40-pin GPIO Header section).
  • All the jumpers next to the status LEDs, can be cut to disable the associated LED.
  • There are two I2C jumpers; one next to the Qwiic connector and one next to the unpopulated EEPROM footprint.
    • The I2C jumper next to the Qwiic connector, can be cut to disconnect the two 3.9kΩ pull-up resistors for that I2C bus.
    • The I2C jumper next to the EEPROM footprint, can be closed to connect two 3.9kΩ pull-up resistors if an EEPROM is populated.