Skip to content

Commit 6cf4b8c

Browse files
committed
Update firmware_update.md
1 parent f40a801 commit 6cf4b8c

File tree

1 file changed

+35
-18
lines changed

1 file changed

+35
-18
lines changed

docs/firmware_update.md

Lines changed: 35 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -487,11 +487,13 @@ docker container rm rtk_container
487487

488488
### Compiling on Windows (Deprecated)
489489

490-
The SparkFun RTK Firmware is compiled using Arduino (currently v1.8.15). To compile:
490+
**Note: we recommend using the Docker method. It is far easier and much less error-prone...**
491+
492+
The SparkFun RTK Firmware can be compiled using the Arduino IDE (currently v1.8.19). To compile:
491493

492494
1. Install [Arduino](https://www.arduino.cc/en/software).
493495

494-
2. Install ESP32 for Arduino. [Here](https://learn.sparkfun.com/tutorials/esp32-thing-hookup-guide#installing-via-arduino-ide-boards-manager) are some good instructions for installing it via the Arduino Boards Manager. **Note**: Use v2.0.2 of the core. **Note:** We use the 'ESP32 Dev Module' for pin numbering. Select the correct board under Tools->Board->ESP32 Arduino->ESP32 Dev Module.
496+
2. Install ESP32 for Arduino. [Here](https://learn.sparkfun.com/tutorials/esp32-thing-hookup-guide#installing-via-arduino-ide-boards-manager) are some good instructions for installing it via the Arduino Boards Manager. **Note**: Use **v2.0.2** of the core. **Note:** We use the 'ESP32 Dev Module' for pin numbering. Select the correct board under Tools->Board->ESP32 Arduino->ESP32 Dev Module.
495497

496498
3. Change the Partition table. Replace
497499

@@ -505,15 +507,28 @@ The SparkFun RTK Firmware is compiled using Arduino (currently v1.8.15). To comp
505507

506508
B. Set the 'Flash Size' to 16MB (128mbit)
507509

508-
5. Obtain all the [required libraries](firmware_update.md#required-libraries).
510+
5. Obtain all the [required libraries](#required-libraries).
511+
512+
6. Patch `Server.h` in the ESP core: copy `Server.h` from the `RTK_Surveyor\Patch` folder and replace:
513+
514+
```
515+
~/.arduino15/packages/esp32/hardware/esp32/2.0.2/cores/esp32/Server.h
516+
```
517+
518+
7. Update the web config `form.h` by running the two python scripts in the `Tools` folder:
519+
520+
```
521+
python index_html_zipper.py ../RTK_Surveyor/AP-Config/index.html ../RTK_Surveyor/form.h
522+
python main_js_zipper.py ../RTK_Surveyor/AP-Config/src/main.js ../RTK_Surveyor/form.h
523+
```
509524

510525
Once compiled, firmware can be uploaded directly to a unit when the RTK unit is on and the correct COM port is selected under the Arduino IDE Tools->Port menu.
511526

512527
If you are seeing the error:
513528

514529
> text section exceeds available space ...
515530
516-
You have not replaced the partition file correctly. See the 'Change Partition table' step inside the [Windows instructions](firmware_update.md#windows_1).
531+
You have not replaced the partition file correctly. See the 'Change Partition table' step inside the [Windows instructions](#compiling-on-windows-deprecated_3).
517532

518533
**Note:** There are a variety of compile guards (COMPILE_WIFI, COMPILE_AP, etc) at the top of RTK_Surveyor.ino that can be commented out to remove them from compilation. This will greatly reduce the firmware size and allow for faster development of functions that do not rely on these features (serial menus, system configuration, logging, etc).
519534

@@ -533,38 +548,40 @@ Using the library manager in the Arduino IDE, for each of the libraries below:
533548

534549
The RTK firmware requires the following libraries:
535550

536-
* [Arduino JSON](https://github.com/bblanchon/ArduinoJson)
551+
* [Arduino JSON @ 6.19.4](https://github.com/bblanchon/ArduinoJson)
537552

538-
* [ESP32Time](https://github.com/fbiego/ESP32Time)
553+
* [ESP32Time @ 2.0.0](https://github.com/fbiego/ESP32Time)
539554

540-
* [ESP32 BleSerial](https://github.com/avinabmalla/ESP32_BleSerial)
555+
* [ESP32 BleSerial @ 1.0.5](https://github.com/avinabmalla/ESP32_BleSerial)
541556

542-
* [ESP32-OTA-Pull](https://github.com/mikalhart/ESP32-OTA-Pull)
557+
* [ESP32-OTA-Pull @ 1.0.0](https://github.com/mikalhart/ESP32-OTA-Pull)
543558

544-
* Ethernet
559+
* Ethernet @ 2.0.2
545560

546-
* [JC_Button](https://github.com/JChristensen/JC_Button)
561+
* [JC_Button @ 2.1.2](https://github.com/JChristensen/JC_Button)
547562

548-
* [PubSub Client for MQTT](https://github.com/knolleary/pubsubclient)
563+
* [PubSub Client for MQTT @ 2.8.0](https://github.com/knolleary/pubsubclient)
549564

550-
* [SdFat](https://github.com/greiman/SdFat)
565+
* [SdFat @ 2.1.1](https://github.com/greiman/SdFat)
551566

552-
* [SparkFun LIS2DH12 Arduino Library](https://github.com/sparkfun/SparkFun_LIS2DH12_Arduino_Library)
567+
* [SparkFun LIS2DH12 Arduino Library @ 1.0.3](https://github.com/sparkfun/SparkFun_LIS2DH12_Arduino_Library)
553568

554-
* [SparkFun MAX1704x Fuel Gauge Arduino Library](https://github.com/sparkfun/SparkFun_MAX1704x_Fuel_Gauge_Arduino_Library)
569+
* [SparkFun MAX1704x Fuel Gauge Arduino Library @ 1.0.4](https://github.com/sparkfun/SparkFun_MAX1704x_Fuel_Gauge_Arduino_Library)
555570

556-
* [SparkFun u-blox GNSS v3](https://github.com/sparkfun/SparkFun_u-blox_GNSS_v3)
571+
* [SparkFun u-blox GNSS v3 @ 3.0.14](https://github.com/sparkfun/SparkFun_u-blox_GNSS_v3)
557572

558-
* [SparkFun_WebServer_ESP32_W5500](https://github.com/SparkFun/SparkFun_WebServer_ESP32_W5500)
573+
* [SparkFun_WebServer_ESP32_W5500 @ 1.5.5](https://github.com/SparkFun/SparkFun_WebServer_ESP32_W5500)
574+
575+
* [SparkFun Qwiic OLED Arduino Library @ 1.0.13](https://github.com/sparkfun/SparkFun_Qwiic_OLED_Arduino_Library)
576+
577+
* [SSL CLient ESP32 @ 2.0.0](https://github.com/alkonosst/SSLClientESP32)
559578

560579
The following libraries are only available via GitHub:
561580

562581
* [AsyncTCP](https://github.com/me-no-dev/AsyncTCP) (not available via library manager)
563582

564583
* [ESPAsyncWebServer](https://github.com/me-no-dev/ESPAsyncWebServer) (not available via library manager)
565584

566-
* [SparkFun Micro OLED Breakout](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library)
567-
568585
### Compiling on Ubuntu 20.04 (Deprecated)
569586

570587
#### Virtual Machine

0 commit comments

Comments
 (0)