Creative Commons images are CC BY 2.0

SparkFun RTK Express Kit

The RTK Express Kit has everything you need to get centimeter level global positioning measurements using GNSS RTK. We've created a handy carrying case to protect the most expensive bits, allowing you to quickly attach the L1/L2 antenna and RTK Express housing to the pole or tripod of your choice. The kit includes all the antenna bits, cables and chargers you need to jump right into the field.

The RTK Express is a Bluetooth® enabled multi-band GNSS receiver based on the ESP32 from Espressif and the ZED-F9P from u-blox. Power it up and you'll have 300mm approximate accuracy out of the box and 14mm accuracy with RTCM corrections. This kit provides the L1/L2 antenna, adapters, interface cables, and chargers needed for general GNSS use.

The RTK Express Kit works with common GIS software for Android and iOS including SW Maps Android / iOS, Field Genius, SurvPC, Survey Master, Vespucci, QGIS, QField, and any GIS software that supports NMEA over Bluetooth.

We generally recommend using your cellular phone as the radio backhaul for RTCM but you can also use your own, higher power radios as long as they support 57600bps. We also recommend logging all data to your phone over Bluetooth®. This is as simple as checking a box within SW Maps. But if you prefer to do long surveys, or need to deal with RAWX measurements where a phone will not be present, a microSD card should be purchased (any size up to 32GB).

Please keep in mind that you will need to provide your own mono-pod or tripod as well as a cell-phone type holder for securing the RTK Express to your mono-pod or tripod. We've found this style clamp and this style clamp work well. Your mileage may vary.

Note: The L1/L2 antenna has a 5/8" thread which will fit most surveying platforms. The kit includes a 5/8" to 1/4" adapter as well which will fit most camera mono-pods and tripods. You may need additional adapters for your specific equipment.

Important: The SparkFun RTK Express is not designed for permanent outdoor mounting. Please mount the L1/L2 antenna (which we've had outside constantly for over three years in Colorado UV) outside with a SMA cable running to the RTK Express that is located inside or protected from the elements. See Creating a Permanent Base for more information.

Supported GIS Data Collector Software:

GNSS Receiver: ZED-F9P

  • Concurrent reception of GPS, GLONASS, Galileo and BeiDou
  • Receives both L1C/A and L2C bands
  • Current: 68mA - 130mA (varies with constellations and tracking state)
  • Time to First Fix: 25s (cold), 2s (hot)
  • Max Navigation Rate:
    • PVT (basic location over UBX binary protocol) - 25Hz
    • RTK - 20Hz
    • Raw - 25Hz
  • Horizontal Position Accuracy:
    • 2.5m without RTK
    • 0.010m with RTK
  • Max Altitude: 50km (31 miles)
  • Max Velocity: 500m/s (1118mph)

Bluetooth® Transceiver: ESP32 WROOM

  • Xtensa® dual-core 32-bit LX6 microprocessor
  • Up to 240MHz clock frequency
  • 16MB of flash storage
  • 520kB internal SRAM
  • Integrated 802.11 BGN WiFi transceiver
  • Integrated dual-mode Bluetooth® (classic and BLE)
  • Hardware accelerated encryption (AES, SHA2, ECC, RSA-4096)
  • 2.5 µA deep sleep current

Overall Device

  • Internal Battery: LiPo 1300mAh with 500mA charging
  • Radio Port: 3.3V TTL Serial (57600bps RTCM TX/RX)
  • Data Port: 3.3V TTL Serial (115200bps NMEA)
  • Embedded OLED Display for available satellites, data logging, and more.
  • Push button controls
  • Weight: 162g (entire device including battery)
  • Dimensions: 132mm x 101mm x 32mm (5.2in x 3.9in x 1.2in)
  • 1x Qwiic Connector
  • Works with common GIS software including: SW Maps, SurvPC, Field Genius, et al.

GNSS Multi-Band L1/L2 Surveying Antenna

  • Gain: ≥5dBi
  • LNA Gain: 40dB
  • Reception Frequencies
    • L1: 1555 to 1615MHz
    • L2: 1198 to 1278MHz
  • 50 Ohm Antenna Impedance
  • Overall antenna weight: 335g
  • Bare antenna element weight (including MMCX connector, with RF shield): 160g
  • Dimensions: 148 x 55mm
  • Waterproof IP67
  • Connector: Female TNC

SparkFun RTK Express Kit Product Help and Resources

How to Build a DIY GNSS Reference Station

October 15, 2020

Learn how to affix a GNSS antenna, use PPP to get its ECEF coordinates and then broadcast your own RTCM data over the internet and cellular using NTRIP to increase rover reception to 10km!

SparkFun RTK Express Hookup Guide

June 21, 2021

Learn how to use the enclosed RTK Express product to achieve millimeter level geospatial coordinates.

How to Upgrade Firmware of a u-blox GNSS Receiver

March 26, 2021

A few steps and you'll upgrade to the latest features on a u-blox GNSS receiver.

Core Skill: DIY

Whether it's for assembling a kit, hacking an enclosure, or creating your own parts; the DIY skill is all about knowing how to use tools and the techniques associated with them.


Skill Level: Rookie - Basic hand tools are required and instructions will allow more freedom. You may need to make your own decisions on design. If sewing is required, it will be free-form.
See all skill levels

Core Skill: Programming

If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.

3 Programming

Skill Level: Competent - The toolchain for programming is a bit more complex and will examples may not be explicitly provided for you. You will be required to have a fundamental knowledge of programming and be required to provide your own code. You may need to modify existing libraries or code to work with your specific hardware. Sensor and hardware interfaces will be SPI or I2C.
See all skill levels

Core Skill: Electrical Prototyping

If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.

2 Electrical Prototyping

Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels


Looking for answers to technical questions?

We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.

  • Member #1782452 / about a year ago / 1

    I am trying to use the "Assisted Base" resource (, but it is not connect to the NTRIP Client, I believe the access credentials are correct because in "Rover" mode it works perfectly, however when switching to "Base" mode it does not connect to the server by NTRIP. Is this a FW bug? I'm using the latest version (3.0)

    • Thanks for reporting! Please post your issue on the repo here so we can better track your issue.

  • Member #1782452 / about a year ago / 1

    I'm using a Sparkfun RTK Express with a PixHawk 6C. I'm making the following connection: RTK Express Data port (NMEA mode) -> Pixhawk GPS1 port 3.3V -> Not Connected TX -> RX RX -> Not Connected GND -> GND

    So far so good, everything works! However, if I connect the RTK Express RX to the PixHawk TX pin, the RTK Express module hangs, or if it is turned off, the Logo on the screen keeps turning on and off. Could someone explain to me why this is happening?

    I believe it's because when I connect the Pixhawk's TX to the Data port RX, internally it's also connecting to the ESP32 TX, which would cause conflict, as ESP32 and PixHawk would be trying to send UBX messages to the ZED same time.

    Wouldn't this be a design error on the RTK Express PCI?

    In order for Pixhawk to send UBX messages do I need to remove resistor R19? Opening the connection between TX ESP32 and RX ZED.

    • The RTK products are designed to be internally controlled and configured at power on. They are not designed to be controlled by an external device.

      I suspect you are correct: the Pixhawk TX pin is sending configuration data to the data RX pin and there is bus contention and confusion.

      If you are trying to get RTK level NMEA into the Pixhawk, you do not need to connect the Pixhawk TX pin to the RTK Express. Allow the RTK Express to achieve GPS fix, then feed the RTK Express with RTCM (either over BT, WiFi, or over the RADIO port) and the device will automatically achieve RTK fix. At that point, the NMEA being streamed into the Pixhawk will be ~14mm HPA.

      If the Pixhawk is capable of transmitting UBX configuration messages you may be able to save some money and connect a ZED-F9P directly.

  • Member #887589 / about 3 years ago / 1

    The text recommends this for a back haul radio: Serial Telemetry Radio Kit - 915MHz, 500mW Retired WRL-17255 Note:Retired Product This product has been retired from our catalog and is no longer for sale. This page is made available for those looking for datasheets and the simply curious.

    • Sorry, that's confusing. We are waiting for the supplier to get us their new version of the 915MHz radio. I've removed the link for now.

Customer Reviews

4.4 out of 5

Based on 5 ratings:

Currently viewing all customer reviews.

1 of 1 found this helpful:

Works Great

The RTK Express is a nice handheld GPS unit.

Outdoors the RTK Express as a standalone device in Rover mode seems to easily get less than 1 meter horizontal accuracy. When combining it with NTRIP data via a cell phone's Bluetooth, the RTK Express is able to get around 1 cm horizontal accuracy. I am using the RTK Express to do some surveying where I need horizontal accuracy much less than 1 meter. The RTK Express is working nicely for my purposes.

As mentioned on the website, the firmware is open source. I have been able to update the firmware on the unit from v1.10 to v1.11 using the SparkFun provided binaries. Additionally, on my Linux system, I am able to compile the open source firmware and load it successfully on the RTK Express.

Very Impressive!

I am blown away by the accuracy of this product. Even using a Base station 50 miles away, I am able to get RTK fixes with 20 - 25mm accuracy. I mounted mine on a 2-meter SECO rod with bipod supports. The recommended brackets work perfectly with this monopole, and allows me to handle my tablet without moving the antenna. I would definitely buy this again.

One of the better hobby-level RTK systems on the market

We've purchased quite a number of these units to serve as stand-in units for new team members who do not have access to the $5k to $30k systems from professional-grade units that we use from Novatel, Hemisphere, etc. We've found that this SparkFun system handles basic DGPS functionality or GPS rover functions quite well. And with the instructions hosted by SparkFun, both modes were quite easy to set up. However, the professional units still have obvious benefits including faster lock, hot start, selectable constellation support, better in-house integration with IMUs, etc. But for the cost, this unit does surprisingly well, particularly for basic, hobby-type applications.

Why a 4 star of 5 rating? We've seen a few design issues. And we are sharing them here with hopes that will hopefully fade away in future revs. For example:

  1. The directionality of the antenna is not specified, so it's anyone's guess how to orient the antenna to north per NOAA DGPS base-station standards. Yes, this matters - twist the antenna, and the position lock measurably changes by a few mm for a DGPS base station, and only one of those orientations is true. Any why waste mm's due to something so simple as orientation? After some digging, our guess is that the manufacturer spec is followed like with other antennas, that the connector is the "North" side of the antenna disk. But the documentation for this is not easily found for this unit, and so this is still our educated guess.

  2. The connector at the bottom of the antenna is placed such that the connector's output interferes with standard adjustable mounts for DGPS antennas (see: for example, . These are very standard mounts, and to make an antenna that is not physically compatible is frustrating. To fix this, we used a threaded stand-off between the antenna and calibration mount, which is annoying as it adds positioning errors unnecessarily. Again, a mm here, a mm there, and one quickly loses the cm-level accuracy that the system can and should produce.

  3. The serial numbers for the antennas are not clearly visible externally, so it is impossible to create the documentation required for documenting DGPS antenna specs for use in base stations (again, see the NOAA standards, or those used for setting up a CORS station).

  4. There's not an obviously way to "hot start" the unit at a known location, so depending on the signal environment, we've found it can take about a minute - and sometimes much longer - to get a good initial lock even with a roof-top full-sky visibility. However, we've tested these on very dynamic conditions such as an RC car racing around a course at roughly 50 mph / 80 kph, and appears to maintain very good dynamic lock after initial setup. We haven't tested intermittent dynamic lock, such as driving a vehicle under a bridge - this is challenging for most systems, particularly due to the multi-path issues under bridges.

  5. The antenna connections into the antenna are somewhat fragile - we've broken several with just basic setup handling (which we do quite a bit). We suggest that users buy a few extra SMA antenna cables. And even if your hands are truly frozen like ours were when setting this up on a rooftop during sub-freezing weather, you should handle the cables with gloves off to avoid damage to the cable. This is another difference versus professional antennas: our pro units use much more robust, but more expensive, cable connectors that we routinely handle with leather gloves on, for 20 years, with no wear/tear.

  6. We've tested the maximum distance that we can string the antennas using strings of 10-meter SMA cables (see SparkFun product: CAB-17495), and we found that signal loss starts to occur at about 4 cables, sometimes 3. This chaining gave us roughly 30 meters of cable length from antenna to base station, which is within the spec given by the manufacturer (100 feet). This is similar to what we've seen for run-of-mill professional units. We're sharing this distance test in hopes this info is useful for others who, like us, want to mount the antenna far outside and far above the receiver.

We're still shaking out the antenna, and may update this review as we get more use, particularly in its ability to survive harsh weather. But so far, we are quite happy overall, even with the minor issues above. The units are so cost effective that we readily buy more as needed, which is is a game-changer in DGPS systems. And many of these issues could be resolved with even a bit more documentation. Such relatively minor updates could could push this unit into becoming the default hobby-level DGPS solution.

Overall: from what we've seen with roughly a year of use, this is the first hobby-level GPS kit that, in turn-key form, gives professional GPS receiver kits some very real price versus performance competition.

Excellent review. Thank you. We're taking notes!

  1. The North Reference Point is the receiver connector. Sorry, this is not more clear. We'll update the documents.

  2. Agreed. We are planning an antenna change but this must occur after we re-tool the carrying cases. It will be a bit.

  3. This is good to know. We'll add the SN label to the antenna change list.

  4. Acquisition time with all four constellations enabled is specified to be 25 seconds but may vary. An assisted hot start (basically within a second) is achievable we just need to think about how to move the data from the phone's cellular connection down to the RTK unit. A fine feature to work towards.

  5. This is good to know. We'll work to improve the cable durability.

  6. Agreed. CAB-17495 is RG174 cable that will experience loss. Combining 3 or 4 extensions will degrade the signal to the point where GNSS reception is impossible. We are working on stocking new RG58 based cable extensions that will allow for much longer runs.

Please note constellation selection is supported.

Thanks again for a very thorough review!

Worked Great Until it Died After Six Days

I found the unit very easy to set up from the instructions on the website. It worked well and was accurate according to my testing. The forum was very helpful and responsive. However after six days the display stopped working and the unit froze. I was instructed to return the unit for repair/replacement. I have not received the repaired unit back yet. When I receive the returned product I will update my review.