SparkFun RTK Surveyor Hookup Guide

Contributors: Nate, Ell C
Favorited Favorite 8

Firmware Updates and Customization

The RTK Surveyor is open source hardware meaning you have total access to the firmware and hardware. Be sure to checkout each repo for the latest firmware and hardware information. But for those who want to jump right in and tweak the firmware, we will discuss various methods.

Updating Firmware From the SD Card

From time to time SparkFun will release new firmware for the RTK Surveyor to add and improve functionality. For most users, firmware can be upgraded by loading the appropriate firmware file from the binaries repo folder onto the SD card and bringing up the firmware menu as shown below:

Firmware update menu

Firmware update taking place

The firmware upgrade menu will only display files that have the "RTK_Surveyor_*.bin" file name format so don't change the file names once loaded onto the SD card. Select the firmware you'd like to load and the system will proceed to load the new firmware, then reboot.

Note: You can check your firmware by opening the text menu by pressing a key at any time.

Note: The ability to update firmware via SD card was implemented in the v1.1 release. Previous v1.0 users will need to use the CLI upgrade path described below.

Updating Firmware From CLI

The command line interface is also available for more advanced users or users who want to avoid the hassle of swapping out SD cards. You’ll need to download esptool.exe and RTK_Surveyor_Firmware_vXXX_Combined.bin from the repo.

Connect a USB A to C cable from your computer to the ESP32 port on the RTK Surveyor. Now identify the com port the RTK Enumerated at. The easiest way to do this is to open the device manager:

CH340 is on COM6 as shown in Device Manager

CH340 is on COM6 as shown in Device Manager

If the COM port is not showing be sure the unit is turned On. If an unknown device is appearing, you’ll need to install drivers for the CH340. Once you know the COM port, open a command prompt (Windows button + r then type ‘cmd’).

Navigate to the directory that contains the firmware file and esptool.exe. Run the following command:

esptool.exe --chip esp32 --port COM6 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 0 RTK_Surveyor_Firmware_v13_combined.bin

Note: You will need to modify COM6 to match the serial port that RTK Surveyor enumerates at.

Programming via the esptool CLI

Programming via the esptool CLI

Upon completion, your RTK Surveyor will have the latest and greatest features!

Creating Custom Firmware

The RTK Surveyor is an ESP32 and high-precision GNSS hackers’s delight. Writing custom firmware can be done using Arduino.

Selecting ESP32 Dev Module

Selecting ESP32 Dev Module

Please see the ESP32 Thing Plus Hookup Guide for information about getting Arduino setup. The only difference is that you will need to select ESP32 Dev Module as your board.

Arduino Library Links

Arduino Library Links

Pull the entire RTK Firmware repo and open /Firmware/RTK_Surveyor/RTK_Surveyor.ino and Arduino will open all the sub-files in new tabs. We’ve broken the functional pieces into smaller tabs to help users navigate it. There are a handful of libraries that will need to be installed. To make this easier, we’ve placed a link next to each library that will automatically open the Arduino Library Manager with that library ready for download.

After connecting a USB C cable to the ESP32 Config connector and selecting the correct COM port you should be able to upload new firmware through the Arduino IDE. Note: The RTK Surveyor must be turned on for it to enumerate as a COM port.