SparkFun
GPS-RTK Dead Reckoning Breakout - ZED-F9R (Qwiic)
· MPN: GPS-22693
This high-precision GNSS breakout is built around the u-blox ZED-F9R, combining RTK positioning with Automotive Dead Reckoning (ADR) sensor fusion. It fuses ...
Get notified when back in stock
This high-precision GNSS breakout is built around the u-blox ZED-F9R, combining RTK positioning with Automotive Dead Reckoning (ADR) sensor fusion. It fuses a 3D IMU sensor, wheel ticks, a vehicle dynamics model, correction data and GNSS measurements to provide accurate and continuous positioning.
The ZED-F9R is a 184-channel u-blox F9 engine receiver for GPS, GLONASS, Galileo and BeiDou. It operates as an RTK rover, so it needs a base station or correction source, and is well suited to autonomous robots and vehicles working in dense urban areas, covered spaces, short tunnels or parking garages.
Two Qwiic connectors make I2C connection solder-free, while 0.1"-spaced pins are broken out for breadboard use. The board also includes an integrated u.FL antenna connector, and it requires a suitable external antenna and cable for operation.
Configuration can be handled through u-blox u-center or the SparkFun Arduino Library, including settings such as baud rates, update rates, geofencing, spoofing detection, external interrupts and SBAS/D-GPS. An on-board rechargeable battery powers the RTC to help reduce time-to-first-fix, and v1.2 updates the board silkscreen.
Features:
- 2x Qwiic Connectors
- Integrated u.FL connector for use with antenna of your choice
- Concurrent reception of GPS, GLONASS, Galileo and BeiDou
- Receives both L1C/A and L2C bands
- Built-In Accelerometer and Gyroscope
- Software Configurable
- Geofencing
- Odometer
- Spoofing Detection
- External Interrupt
- Pin Control
- Low Power Mode
- Many others!
- Supports NMEA, UBX, and RTCM protocols over UART or I2C interfaces
Specifications:
- GNSS Receiver: 184-Channel GNSS Receiver
- Horizontal Position Accuracy: 0.01m with RTK
- Max Navigation Rate: Up to 30Hz
- Time to First Fix - Cold: 24s
- Time to First Fix - Hot: 2s
- Max G: ≤4G
- Max Altitude: 80km (49.7 miles)
- Max Velocity: 500m/s (1118mph)
- Velocity Accuracy: 0.05m/s
- Heading Accuracy: 0.2 degrees
- Time Pulse Accuracy: 30ns
- Voltage: 5V or 3.3V but all logic is 3.3V
- Current: ~85mA to ~130mA (varies with constellations and tracking state)
- Dimensions: 43.18mm x 50.8mm (1.7in x 2.0in)
- Weight: 11.05g
Jargon buster
Plain-language definitions for the technical terms used above.
- baud
- Baud is the signalling rate of a serial connection, often used as the speed setting for UART communication. Matching the baud rate matters because both connected devices must use the same setting for readable data.
- 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.
- Galileo
- Europe’s satellite navigation system. Galileo support can improve satellite availability and accuracy, especially when combined with GPS and other constellations.
- GLONASS
- Russia’s satellite navigation system. A receiver that can also use GLONASS has more satellites to choose from, which can improve positioning reliability when the sky view is partly blocked.
- 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.
- 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.
- 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.
- 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.
- RTC
- A Real-Time Clock keeps track of time even when the main processor is asleep or powered down, usually with a small backup battery. It matters for data logging and tracking projects that need accurate timestamps.
- 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.
- 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.
- 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.
Find this product in
ZED-F9R Breakout Schematic
Schematic · 296.0 KB · Click any page to view full size
ZED-F9R Datasheet
Datasheet · 2.6 MB · Click any page to view full size
ZED-F9R Product Summary
Product Brief · 115.7 KB · Click any page to view full size
ZED-F9R Integration Manual
User Guide · 11.6 MB · Click any page to view full size
Supplier page — sparkfun.com
Supplier Description · 878.2 KB · Click any page to view full size
u-blox F9 Interface Description
User Guide · 3.3 MB · Click any page to view full size
u-blox ECCN Document
Compliance · 27.8 KB · Click any page to view full size
Resources & Downloads
Guides, code examples, and more
Source Code
Open-source libraries, firmware & example projects for this product
5f9ddc4
almost 3 years ago
· 37 commits
- Documents Update u-blox Integration Manual and Interface Descriptions for ZED-F9R-01B about 3 years ago
- Hardware Adds u.FL version and moves all design files to their own folders almost 3 years ago
- Production Adds Production files for u.FL and organizes production folder with almost 3 years ago
- .gitignore Adjust file name in .gitignore to ignore about 6 years ago
- CONTRIBUTING.md Adds breakout board and related documents, libraries over 6 years ago
- ISSUE_TEMPLATE.md Adds breakout board and related documents, libraries over 6 years ago
- LICENSE.md Adds breakout board and related documents, libraries over 6 years ago
- README.md Update README.md almost 3 years ago
An Arduino library which allows you to communicate seamlessly with u-blox GNSS modules using the Configuration Interface
7610634
21 days ago
· 314 commits
- .github Update compile-sketch.yml 9 months ago
- examples Create Example1_Galileo_HAS.ino 21 days ago
- img Initial commit over 3 years ago
- keys v3.1.14 : Add keys from u-blox-X20-HPG-2.10 21 days ago
- src Add getPositionAccuracyPOSECEF helper method 21 days ago
- Utils UBX_Integrity_Checker improvements: about 1 year ago
- .gitattributes Initial commit over 3 years ago
- .gitignore Initial commit over 3 years ago
- Adding_New_Messages.md Update Adding_New_Messages.md over 3 years ago
- CONTRIBUTING.md Markdown updates over 3 years ago
- ISSUE_TEMPLATE.md Initial commit over 3 years ago
- keywords.txt Add getPositionAccuracyPOSECEF helper method 21 days ago
- library.properties v3.1.14 : Add keys from u-blox-X20-HPG-2.10 21 days ago
- LICENSE.md Initial commit over 3 years ago
- README.md Update README.md 6 months ago