Hardware Overview
Introduction
-
SparkPNT GNSS Flex modules are plug-in boards featuring different GNSS receivers. They are designed to be easily swapped for repairs and pin-compatible for upgrades. The boards have two 2x10-pin, 2mm pitch female headers connecting to carrier boards. For the ZED-X20P GNSS receiver, these pins will break out the USB, UART (x2), and I2C interfaces, along with the PPS and event signals using a standardized pinout. When populated, these pins also break out the two UART interfaces of the IM19 attitude module.
These SparkPNT GNSS Flex Module combines the powerful u-blox ZED-X20P all-band RTK-capable GNSS receiver with an optional IM19 attitude module, which features an inertial measurement unit (IMU) for tilt compensation or dead reckoning. The ZED-X20P module is an all-band, high precision GNSS receiver that concurrently processes signals from the GPS, Galileo, BeiDou, QZSS, and NavIC constellations across all GNSS frequency bands, including L-band. With positioning algorithms for Real-time Kinematics (RTK), PPP-RTK, and Precise Point Positioning* (PPP) technologies, the module supports standard RTCM corrections for Virtual Reference Stations (VRS) in a Network RTK setup or a local base station setup. Additionally, L-band correction services are natively supported without the need to integrate an external receiver, such as the NEO-D9S.
With its very high update rate, the ZED-X20P module is ideal for control applications, ensuring smooth and reliable operation. The module also protects system integrity with multi-layered defenses, including a Root of Trust, jamming and spoofing detection, cryptographic authentication of navigation messages through Galileo OSNMA, and more. This represents the highest level of integration in a single-chip receiver for the navigation and robotics markets; in unmanned autonomous vehicles (UAVs), guidance systems, and auto-steering applications.
Optional IM19 Attitude Module
The optional, IM19 attitude module from Feyman (FMI) fuses MEMS IMU sensor data and GNSS RTK positioning to deliver high-precision attitude compensated measurements, with roll and pitch accurate to within 0.05 degrees. This kind of superb accuracy has widespread uses in industrial applications such as tilt RTK surveys (where RTK poles need not be held straight vertical as the IM19 can calculate a virtual digital level at any tilt angle), agriculture machine automation, and dead reckoning.
When configured, fed with the ZED-X20P Pulse-Per-Second signal and NMEA GGA, RMC and GST messages; once calibrated, the IM19 will output proprietary NMEA messages containing the compensated position and roll, pitch and yaw. By default, the ZED-X20P
UART1
TX
is linked to the IM19UART2
RX
to carry the required NMEA messages. However, this can be changed via jumper links on the Flex Module, if necessary.Note
*
: Feature is still under developmentThe USB interface does not fully comply with industry standards and is not suitable for certification/production use. However, the USB 2.0 FS (full speed, 12 Mbit/s) interface can be used for host communication in development purposes.
GPS
L5
SignalsThe GPS
L5
signals are currently, considered as "pre-operational" and not utilized by default in navigation solutions. However, it is possible override the receiver's configuration to evaluate the GPSL5
signals. Please refer to the integration manual for more details.This is an operational limitation of the satellite/space segment and not an issue of the u-blox product.
Design Files
-
Design Files
- Schematic
- KiCad Files
- STEP File
- Board Dimensions:
- 1.75" x 1.25" (44.45mm x 31.75mm)
-
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 Dimensions of the ZED-X20P GNSS Flex module. 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:
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.
The ZED-X20P GNSS Flex module has the following features:
-
- ZED-X20P GNSS Receiver
- The u-blox ZED-X20P GNSS receiver
-
- GNSS Flex Headers
- Two sets of 2x10 pin, 2mm pitch female headers for connecting a GNSS Flex module to carrier boards
-
- IM19 IMU (optional)
- An optional Feyman IM19 attitude module to provide tilt compensation in surveying applications
-
Antenna L1/L2/L5/E6
U.FL Connector- An U.FL connector for attaching an external GNSS antenna
ZED-X20P GNSS Receiver
The centerpiece of this GNSS breakout board is the ZED-X20P module from u-blox; it features their latest X20 GNSS engine, a successor to their popular F9 engine. The ZED-X20P module is an all-band, high precision GNSS receiver that concurrently processes signals from the GPS, Galileo, BeiDou, QZSS, and NavIC constellations across all GNSS frequency bands, including L-band. With positioning algorithms for Real-time Kinematics (RTK), PPP-RTK, and Precise Point Positioning* (PPP) technologies, the module supports standard RTCM corrections for Virtual Reference Stations (VRS) in a Network RTK setup or a local base station setup. Additionally, L-band correction services are natively supported without the need to integrate an external receiver, such as the NEO-D9S.
With its very high update rate, the ZED-X20P module is ideal for control applications, ensuring smooth and reliable operation. The module also protects system integrity with multi-layered defenses, including a Root of Trust, jamming and spoofing detection, cryptographic authentication of navigation messages through Galileo OSNMA, and more. The module also accommodates users with a diverse choice of interfaces including USB, UART, SPI, and I2C.
Note
*
: Feature in development
Exploded view of the ZED-X20P GNSS receiver.
Features:
- GNSS Constellations and SBAS Systems:
- USA: GPS + WASS
- EU: Galileo + EGNOS
- China: BDS + BDSDAS
- Japan: QZSS + MSAS
- India: NavIC + GAGAN
- Features
- Programmable flash memory
- Carrier phase output
- Jamming detection
- Galileo OSNMA
- Secure boot
- Services:
- AssistNow
- PointPerfect
- Interfaces:
- USB
- UART x2
- SPI
- I2C
- Digital I/O
TIMEPULSE
configurable: 0.25 - 10MHzEXTINT
input for Wakeup
- Supply voltage: 2.7V to 3.6V
- Sensitivity
- Tracking and Nav.: -167dBm
- Reacquisition: -160dBm
- Cold start: -148dBm
- Hot start: -157dBm
- Operational Limits
- Dynamics: <4g
- Altitude: 80,000m
- Velocity: 500m/s
- Update Rate: Up to 25Hz
- Temperature: -40°C to 85°C
- Dynamic Accuracy
- Velocity: 0.05m/s
- Heading: 0.3°
- Time to Fix
- Cold Start: <27s
- Aided Start: <2s
- Hot Start: 2s
- Convergence time:
- RTK: <10s
- SPARTN: <50s
- Dimensions: 17.0mm x 22.0mm x 2.4mm
Power Consumption
The power consumption of the ZED-X20P module depends on the GNSS signals enabled and if the module is acquiring or tacking those signals. The table below, lists the average current consumption with a supply voltage of 3.3V.
GNSS Signals | Acquisition | Tracking |
---|---|---|
GPS+GAL+BDS | 75mA | 70mA |
GPS | 50mA | 50mA |
Tip
During acquisition, the current consumption may reach up to 85mA; make sure the primary power source can sustain this.
Info
For more information, please refer to the ZED-X20P Datasheet.
Frequency Bands
The ZED-X20P module is an all-band, high precision GNSS receiver that concurrently processes signals from the GPS, Galileo, BeiDou, QZSS, and NavIC constellations across all GNSS frequency bands, including L-band. Below, are the frequency bands provided by all the global navigation satellite systems and the ones supported by the ZED-X20P module.
Constellation | Frequency Bands |
---|---|
GPS | L1C/A, L2C, L5 |
QZSS | L1C/A, L1C/B*, L2C, L5, L6 |
GAL | E1B/C, E5a, E6 |
BDS | B1I, B1C, B2a, B3I |
NavIC | L1*, L5 |
SBAS | L1C/A |
The supported frequency bands, organized by constellation.
Note
*
: Feature in development
Frequency bands of the global navigation satellite systems. (Source: Tallysman)
Configuration Settings
Each GNSS constellations and their signal bands can be enabled or disabled independently, using keys from the CFG-SIGNAL-*
configuration group; except for the QZSS and SBAS constellation. A GNSS constellation is considered to be enabled when the constellation enable key is set and at least one of the constellation's band keys is enabled. However, the ZED-X20P only supports certain combinations of constellations and bands. For all GNSS constellations, the L1
band is mandatory even in combination with another frequency band. Any unsupported combinations will be rejected with a UBX-ACK-NAK
and the warning: inv sig cfg
will be sent via UBX-INF and NMEA-TXT messages (if enabled).
Supported Combinations
Constellation keyCFG-SIGNAL-GAL_ENA |
Band keyCFG-SIGNAL-GAL_E1_ENA |
Band keyCFG-SIGNAL-GAL_E5A_ENA |
Band keyCFG-SIGNAL-GAL_E6_ENA |
Constellation enabled? |
---|---|---|---|---|
true (1 ) |
true (1 ) |
true (1 ) |
true (1 ) |
yes |
true (1 ) |
true (1 ) |
true (1 ) |
false (0 ) |
yes |
true (1 ) |
true (1 ) |
false (0 ) |
true (1 ) |
yes |
true (1 ) |
true (1 ) |
false (0 ) |
false (0 ) |
yes |
true (1 ) |
false (0 ) |
true (1 ) |
true (1 ) |
no |
true (1 ) |
false (0 ) |
false (0 ) |
true (1 ) |
no |
true (1 ) |
false (0 ) |
true (1 ) |
false (0 ) |
no |
true (1 ) |
false (0 ) |
false (0 ) |
false (0 ) |
no |
false (0 ) |
true (1 ) |
true (1 ) |
true (1 ) |
no |
false (0 ) |
true (1 ) |
true (1 ) |
false (0 ) |
no |
false (0 ) |
true (1 ) |
false (0 ) |
true (1 ) |
no |
false (0 ) |
false (0 ) |
true (1 ) |
true (1 ) |
no |
false (0 ) |
false (0 ) |
false (0 ) |
true (1 ) |
no |
false (0 ) |
false (0 ) |
true (1 ) |
false (0 ) |
no |
false (0 ) |
true (1 ) |
false (0 ) |
false (0 ) |
no |
false (0 ) |
false (0 ) |
false (0 ) |
false (0 ) |
no |
What are Frequency Bands?
A frequency band is a section of the electromagnetic spectrum, usually denoted by the range of its upper and lower limits. In the radio spectrum, these frequency bands are usually regulated by region, often through a government entity. This regulation prevents the interference of RF communication; and often includes major penalties for any interference with critical infrastructure systems and emergency services.
However, if the various GNSS constellations share similar frequency bands, then how do they avoid interfering with one another? Without going too far into detail, the image above illustrates the frequency bands of each system with a few characteristics specific to their signals. Wit these characteristics in mind, along with other factors, the chart can help users to visualize how multiple GNSS constellations might co-exist with each other.
For more information, users may find these articles of interest:
Position Accuracy
The accuracy of the position reported from the ZED-X20P GNSS module, can be improved based upon the correction method being employed. Currently, RTK corrections provide the highest level of accuracy; however, users should be aware of certain limitations of the system:
- RTK technique requires real-time correction data from a reference station or network of base stations.
- RTK corrections usually come from RTCM messages that are signal specific (i.e. an RTK network may only provide corrections for specific signals; only
E5b
and notE5a
).
- RTK corrections usually come from RTCM messages that are signal specific (i.e. an RTK network may only provide corrections for specific signals; only
- The range of the base stations will vary based upon the method used to transmit the correction data.
- The reliability of RTK corrections are inherently reduced in multipath environments.
Correction Method | Horizontal (CEP) | Vertical (Median) |
---|---|---|
PVT | 1.2m (~3.9') | 2.0m (~6.6') |
SBAS | 0.6m (~2.0') | 1.0m (~3.3') |
RTK | 1cm (~0.39") +1ppm | 1cm (~0.39") +1ppm |
SPARTAN | <6cm (~2.36") | <10cm (~3.94") |
IM19 Attitude Module
When configured and calibrated, the IM19 attitude module can fuses IMU sensor and GNSS RTK positioning data to deliver compensated position. The accuracy, displayed in the table below, should also be considered when implemented.
Tilt Angle | Accuracy |
---|---|
0° - 30° | 1cm |
<60° | 2cm |
RTK Corrections
To understand how RTK works, users will need a more fundamental understanding of the signal error sources.
Tip
For the best performance, we highly recommend that users configure the module to utilize/provide RTK corrections with a compatible L1/L2/L5/L6 GNSS antenna and utilize a low-loss cable.
IM19 IMU (Optional)
The other centerpiece of the GNSS Flex module is an optional IM19 attitude module from Feyman Inc.. Users have the option to purchase a board variant that comes populated with the IM19 attitude module, which fuses MEMS IMU sensor data and GNSS RTK positioning to deliver high-precision attitude compensated measurements, with roll and pitch accurate to within 0.05 degrees. This kind of superb accuracy has widespread uses in industrial applications such as tilt RTK surveys (where RTK poles need not be held straight vertical as the IM19 can calculate a virtual digital level at any tilt angle), agriculture machine automation, and dead reckoning.
When configured, fed with the ZED-X20P Pulse-Per-Second signal and NMEA GGA, RMC and GST messages; once calibrated, the IM19 will output proprietary NMEA messages containing the compensated position and roll, pitch and yaw. By default, the ZED-X20P UART1
TX
is linked to the IM19 UART2
RX
to carry the required NMEA messages. However, this can be changed via jumper links on the Flex Module, if necessary.
Features:
- Power: 0.33W
- Data Rate: 100Hz
- IMU Accuracy: ≤1% * D(1σ, vehicle)
- Gyroscope
- ARW: 0.17°/√(h)
- Bias Stability: ±4.5°/h
- Range: ±1000°/s
- Accelerometer
- Speed RW: 0.04m/s/√(h)
- Bias Stability: ±0.3mg
- Range: ±16g
- Roll and Pitch: ≤0.02°(1σ)
- Heading/Yaw: ≤0.2°(1σ)
- Initialization: 1s (95%)
- Self-calibration Technique
Info
Please refer to the hookup guide linked below, for the operation of the IM19 attitude module in tilt-compensation applications:
Position Accuracy
When configured and calibrated, the IM19 attitude module can fuses its IMU sensor data with the received GNSS RTK positioning data to deliver a tilt compensated position.
Tilt Angle | Accuracy |
---|---|
0° - 30° | 1cm |
<60° | 2cm |
ZED-X20P GNSS Module
The accuracy of the position reported from the ZED-X20P GNSS module, can be improved based upon the correction method being employed. Currently, RTK corrections provide the highest level of accuracy. Its accuracy, displayed in the table below, should also be considered when implemented.
Correction Method | Horizontal (CEP) | Vertical (Median) |
---|---|---|
PVT | 1.2m (~3.9') | 2.0m (~6.6') |
SBAS | 0.6m (~2.0') | 1.0m (~3.3') |
RTK | 1cm (~0.39") +1ppm | 1cm (~0.39") +1ppm |
SPARTAN | <6cm (~2.36") | <10cm (~3.94") |
GNSS Flex Headers
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 boards to be easily swapped for repairs. For the ZED-X20P GNSS receiver, these pins will breakout the UART interface along with three of the programmable I/O pins; the LNA enable pin is not broken out and the safe-boot pin is only exposed as a test point on this board.
The peripherals and I/O pins for the ZED-X20P GNSS receiver.
The peripherals and I/O pins for the IM19 attitude module.
Below, are the features that are available from the ZED-X20P GNSS receiver.
Supported Interfaces:
- USB
- UART x2 (1)
- I2C
- 1x External interrupt
- 1x PPS output signal
- 1x RTK Stat pin
- 1x Geo Stat pin
- 1x Reset pin
- One of the three UART ports is piped to the IM19 module
Note
All the input pins on the ZED-X20P GNSSS module have internal pull-up resistors; in normal operation, they can be left floating if unused.
Below, are the features that are available from the IM19 attitude module.
Supported Interfaces:
- UART (x2)
- Timing Signal (1)
- The timing signal comes from the ZED-X20P GNSS module
The headers of the GNSS Flex system supports up to four UART ports. On this GNSS Flex module, these are connected to both the GNSS receiver and IM19 attitude module.
ZED-X20P
The ZED-X20P GNSS receiver has two UART ports, which can be operated and configured separately.
- The
UART1
andUART2
ports of the ZED-X20P GNSS module are broken out to the headers of the GNSS Flex system. These can be used to interact with the ZED-X20P. - The
TX
pin of theUART1
port from the ZED-X20P GNSS module is also piped directly to theRX
pin of the IM19 attitude module'sUART2
port.
Warning
Firmware updates can only be performed with the UART1
interface.
Configuration
The UART interfaces can be configured with the CFG-UART*
messages:
- Baudrate: 4800 to 8000000bps (Default: 38400bps)
- Data Bits: 8
- Parity: No
- Stop Bits: 1
- Flow Control: None
- Protocols:
- Input messages: NMEA (GGA, GLL, GSA, GSV, RMC, VTG, and TXT), RTCM, SPARTN, and UBX
- Output messages: NMEA, RTCM, and UBX
ZED-X20P | Pins of GNSS Flex Headers |
---|---|
UART1 |
TXD1 /RXD1 |
UART2 |
TXD2 /RXD2 |
Supported Protocols
The UART interfaces support the following protocols:
UART1
Output- NMEA protocol with GGA, GLL, GSA, GSV, RMC, VTG, TXT messages are output by default.
- UBX and RTCM 3.4 protocols are enabled by default, but no output messages are enabled by default.
UART1
Input- UBX, NMEA and RTCM 3.4 input protocols are enabled by default.
UART2
Output- RTCM 3.4 protocol is enabled by default, but no output messages are enabled by default.
- NMEA protocol is disabled by default.
UART2
Input- NMEA, RTCM 3.4, and SPARTN protocols are enabled by default.
Tip
A UART RX
interface will be disabled when more than 100 frame errors are detected during a one-second period. This can happen if the wrong baud rate is used or the UART RX
pin is grounded. An error message appears when the UART RX
interface is reenabled at the end of the one-second period.
IM19
The IM19 attitude module has two UART ports, which operate separately.
- The
UART1
port of the IM19 module is broken out to the headers of the GNSS Flex system, on pinsTXD3
andRXD3
. These pins should be used to configure the IM19 module. - The
UART2
port of the IM19 module is used to receive GNSS data from the GNSS receiver and output the tilt compensated data.- By default, the
RX
pin receives data from theUART1
port of the ZED-X20P GNSS module.- Users can modify the jumpers on the top of the GNSS Flex module, to utilize the
TXD2
orRXD4
pins (of the GNSS Flex headers) instead.
- Users can modify the jumpers on the top of the GNSS Flex module, to utilize the
- Once IM19 module is configured and calibrated, the
TX
pin outputs the tilt compensated data to theTXD4
pin on the GNSS Flex headers.
- By default, the
Default Configuration
By default, the UART ports are configured with the following settings:
- Baudrate: 115200bps
- Data Bits: 8
- Parity: No
- Stop Bits: 1
- Flow Control: None
- Protocols:
- AT Commands
- Proprietary Data Formats
- MEMS Raw data protocol
- GNSS Raw data protocol
- Binary NAVI positioning data protocol
IM19 | Pins of GNSS Flex Headers |
---|---|
UART1 |
TXD3 /RXD3 |
UART2 |
TXD4 |
The PPS1
pin is connected to the TIMEPULSE
output signal from the ZED-X20P GNSS receiver and the PPS
input for the IM19 attitude module. The period, length, and polarity (rising or falling edge) of the TIMEPULSE
signal can be configured with the CFG-TP-*
messages. In order to receive tilt-compensated data from the IM19 attitude module, this pin needs to be configured to provide a timing pulse at the same rate as the PVT solutions.
PPS
signal output on the ZED-X20P GNSS Flex module.
Note
The SAFEBOOT_N
and TIMEPULSE
(PPS
) pins are internally connected in the ZED-X20P GNSS module, by a 1kΩ series resistor. When the SAFEBOOT_N
pin is pulled LOW
at starup, the ZED-X20P module will enter safeboot mode. Therefore, these pins have no load that could pull them low at startup; otherwise, the receiver will enter its safeboot mode.
The ZED-X20P supports a single I2C interface. If available, this interface can be accessed through Qwiic connectors on a GNSS Flex "carrier" board.
What is Qwiic?


The Qwiic connect system is a solderless, polarized connection system that allows users to seamlessly daisy chain I2C boards together. Play the video below to learn more about the Qwiic connect system or click on the banner above to learn more about Qwiic products.
Features of the Qwiic System
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.
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, right from the start.
The PCB connector is part number SM04B-SRSS (Datasheet) or equivalent. The mating connector used on cables is part number SHR04V-S-B or an equivalent (1mm pitch, 4-pin JST connector).
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.
The ZED-X20P supports external interrupts through its EXTINT
pin. This is useful for waking the module up from its standby mode or for timing applications.
EVENTA
pin on the ZED-X20P GNSS Flex module.
Tip
All the inputs of the ZED-X20P have internal pull-up resistors in normal operation and can be left open if unused.
The RESET
pin is connected to the reset pins of the ZED-X20P and IM19 modules.
- Driving the pin
LOW
for at least 1ms triggers a cold-start reset, clearing theBBR
content (receiver configuration, real-time clock (RTC), and GNSS orbit data) of the ZED-X20P GNSS receiver. - Driving the pin
LOW
for at least 100ms triggers a restart of the IM19 attitude module.
RESET
pin on the ZED-X20P GNSS Flex module.
Info
Capacitors should not be placed between RESET
and GND
; otherwise, it could trigger a reset on startup.
Tip
All the inputs of the ZED-X20P have internal pull-up resistors in normal operation and can be left open if unused.
The RTK_STAT
and GEOFENCE_STAT
signals from the ZED-X20P GNSS receiver are broken out to the RTK
and PVT
pins of the GNSS Flex headers.
RTK
and PVT
indicators on the ZED-X20P GNSS Flex module.
RTK
-
The
RTK_STAT
signal indicates the RTK positioning status and if a stream of valid correction messages is being received.Pin State
HIGH
- Indicates that RTK fixed mode has been achieved- Blinking - Indicates that a valid stream of correction messages is being received and utilized, but no RTK fixed mode has been achieved
LOW
- Indicates that no carrier phase solution is available
PVT
-
The
GEOFENCE_STAT
signal indicates the current geofence status as to whether the receiver is inside any of the active areas. It is possible to configure up to four circular areas as geofence locations. Once configured, the receiver continuously compares its current position with the preset geofenced areas.The receiver toggles the assigned pin according to the combined geofence state.
- Inside - The position is inside the geofence with the configured confidence level
- Outside - The position lies outside of the geofence with the configured confidence level
- Unknown - There is no valid position solution or the position uncertainty does not allow for unambiguous state evaluation
Pin State
HIGH
- TheGEOFENCE_STAT
pin is always set to high level when the combined geofence state is unknownLow
- A low level can represent either an inside or outside state based upon theCFG-GEOFENCE-PINPOL
configuration
Tip
All the inputs of the ZED-X20P have internal pull-up resistors in normal operation and can be left open if unused.
U.FL Connector
Users will need to connect a compatible GNSS antenna to the L1/L2/L5/L6/L-Band
U.FL connector. The type of antenna used with the ZED-X20P module affects the overall accuracy of the positions calculated by the GNSS receiver.
- Passive antennas are not recommended for the ZED-X20P GNSS module.
- There is no need to inject an external DC voltage for the GNSS antenna. Power is already provided from the ZED-X20P module for the LNA of an active antenna.
The U.FL connector to attach an external GNSS antenna to the ZED-X20P GNSS Flex module.
Tip
For the best performance, we recommend users choose a compatible L1/L2/L5/L6/L-Band GNSS antenna and utilize a low-loss cable. Also, don't forget that GNSS signals are fairly weak and can't penetrate buildings or dense vegetation. The GNSS antenna should have an unobstructed view of the sky.
Jumpers
The are three jumpers on top of the ZED-X20P GNSS Flex module that can be modified to change the source of the GNSS data for the IM19 attitude module.
Never modified a jumper before?
Check out our Jumper Pads and PCB Traces tutorial for a quick introduction!