SparkFun RTK Facet L-Band Hookup Guide
Hardware Overview - Advanced Features
The RTK Facet L-Band is a hacker’s delight. Under the hood of the RTK Facet L-Band is an ESP32 WROOM connected to a ZED-F9P as well as some peripheral hardware (LiPo fuel gauge, microSD, etc). It is programmed in Arduino and can be tailored by the end user to fit their needs.
ZED-F9P GNSS Receiver
The ZED-F9P GNSS receiver is configured over I2C and uses two UARTs to output NMEA (UART1) and input/output RTCM (UART2). In general, the ESP32 harvests the data from the ZED-F9Ps UART1 for Bluetooth transmission and logging to SD.
NEO-D9S L-Band Receiver
The NEO-D9S is configured over I2C. The ESP32 sends decryption keys to the ZED-F9P at startup then harvests the encrypted PMP data from the NEO-D9S and sends the packets to the ZED-F9P over I2C.
ESP32
The ESP32 uses a standard USB to serial conversion IC (CH340) to program the device. You can use the ESP32 core for Arduino or Espressif’s IoT Development Framework (IDF).
The CH340 automatically resets and puts the ESP32 into bootload mode as needed. However, the reset pin of the ESP32 is brought out to an external 2-pin 0.1” footprint if an external reset button is needed.
LiPo and Charging
The RTK Facet L-Band houses a standard 6000mAh 3.7V LiPo. The charge circuit is set to 1A so with an appropriate power source, charging an empty battery should take a little over six hours. USB C on the RTK Facet L-Band is configured for 2A draw so if the user attaches to a USB 3.0 port, the charge circuit should operate near the 1A max. If a user attaches to a USB 2.0 port, the charge circuit will operate at 500mA. This charge circuit also incorporates a 42C upper temperature cutoff to insure the LiPo cannot be charged in dangerous conditions.
Fuel Gauge and Accelerometer
The MAX17048 is a simple to use fuel gauge IC that gives the user a statement of charge (SOC) that is basically a 0 to 100% report. The MAX17048 has a sophisticated algorithm to figure out what the SOC is based on cell voltage that is beyond the scope of this tutorial but for our purposes, allows us to reliably view the battery level when the unit is on.
The RTK Facet L-Band also incorporates a the LIS2DH12 triple-axis accelerometer to aid in leveling in the field.
Qwiic
An internal Qwiic connector is included in the unit for future expansion. Currently the stock RTK Facet L-Band does not support any additional Qwiic sensors or display but users may add support for their own application.
microSD
A microSD socket is situated on the ESP32 SPI bus. Any microSD up to 32GB is supported. RTK Facet L-Band supports RAWX and NMEA logging to the SD card. Max logging time can also be set (default is 24 hours) to avoid multi-gigabyte text files. For more information about RAWX and doing PPP please see this tutorial.
Data Port and Digital Mux
The 74HC4052 analog mux controls which digital signals route to the external Data port. This allows a variety of custom end user applications. The most interesting of which is event logging. Because the ZED-F9P has microsecond accuracy of the incoming digital signal, custom firmware can be created to triangulate an event based on the receiver's position and the time delay between multiple captured events. Currently, TM2 event logging is supported.
Additionally, this mux can be configured to connect ESP pin 26 (DAC capable) and pin 39 (ADC capable) for end user custom applications.
Internal Power Button
For normal operation, the power button on the outside of the device is used to turn on/off the unit. If the external power button ever fails or is suspect, an internal power button can be used to diagnose the problem.
The internal power button is located on the back of the display board.
Pressing and holding the internal power button for more than 2 seconds will turn on the device. Similarly, pressing and holding the button when the device is on will cause the device to power down.