99 FIRMWARE_VERSION_MINOR : 99
1010 POINTPERFECT_LBAND_TOKEN : ${{ secrets.POINTPERFECT_LBAND_TOKEN }}
1111 POINTPERFECT_IP_TOKEN : ${{ secrets.POINTPERFECT_IP_TOKEN }}
12+ POINTPERFECT_LBAND_IP_TOKEN : ${{ secrets.POINTPERFECT_LBAND_IP_TOKEN }}
13+ CORE_VERSION : 3.0.1
1214
1315jobs :
1416 build :
5557 uses : arduino/setup-arduino-cli@v1
5658
5759 - name : Start config file
58- run : arduino-cli config init --additional-urls "https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json"
60+ run : arduino-cli config init --additional-urls "https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json,https://espressif.github.io/arduino-esp32/package_esp32_dev_index.json "
5961
6062 - name : Update core index
6163 run : arduino-cli core update-index
@@ -64,44 +66,48 @@ jobs:
6466 run : arduino-cli lib update-index
6567
6668 - name : Install platform
67- run : arduino-cli core install esp32:esp32@2.0.11
69+ run : arduino-cli core install esp32:esp32@${{ env.CORE_VERSION }}
70+
71+ - name : Get IDF version
72+ run : |
73+ cd /home/runner/.arduino15/packages/esp32/tools/esp32-arduino-libs
74+ IDF_VERSION=$(ls | grep idf-release)
75+ echo "ESP_IDF=${IDF_VERSION}" >> "$GITHUB_ENV"
6876
6977 - name : Get Known Libraries
7078 run : arduino-cli lib install
71- ArduinoJson@6.19 .4
79+ ArduinoJson@7.0 .4
7280 ESP32Time@2.0.0
7381 ESP32_BleSerial@1.0.4
7482 " ESP32-OTA-Pull" @1.0.0
75- Ethernet@2.0.2
7683 JC_Button@2.1.2
7784 PubSubClient@2.8.0
7885 " SdFat" @2.1.1
7986 " SparkFun LIS2DH12 Arduino Library" @1.0.3
8087 " SparkFun MAX1704x Fuel Gauge Arduino Library" @1.0.4
81- " SparkFun u-blox GNSS v3" @3.1.4
82- SparkFun_WebServer_ESP32_W5500@1.5.5
88+ " SparkFun u-blox GNSS v3" @3.1.5
8389 " SparkFun Qwiic OLED Arduino Library" @1.0.13
8490 SSLClientESP32@2.0.0
8591 " SparkFun Extensible Message Parser" @1.0.0
8692 " SparkFun BQ40Z50 Battery Manager Arduino Library" @1.0.0
8793 " ArduinoMqttClient" @0.1.8
94+ " SparkFun u-blox PointPerfect Library" @1.11.4
95+ " SparkFun IM19 IMU Arduino Library" @1.0.1
96+ " SparkFun UM980 Triband RTK GNSS Arduino Library" @1.0.4
8897
89- - name : Enable external libs
90- run : arduino-cli config set library.enable_unsafe_install true
91-
92- - name : Get Libraries
93- run : arduino-cli lib install --git-url
94- https://${{ secrets.GET_PRIVATE_PPL_LIBRARY }}@github.com/sparkfun/SparkFun_u-blox_PointPerfect_Library.git
95- https://${{ secrets.GET_PRIVATE_IM19_LIBRARY }}@github.com/sparkfun/SparkFun_IM19_IMU_Arduino_Library.git
96- https://github.com/sparkfun/SparkFun_Unicore_GNSS_Arduino_Library.git
97- https://github.com/me-no-dev/ESPAsyncWebServer.git
98- https://github.com/me-no-dev/AsyncTCP.git
99-
100- # Incorporate ESP-Now patch into core: https://github.com/espressif/arduino-esp32/pull/7044/files
101- # - name: Patch ESP32 Core
102- # run: |
103- # cd Firmware/RTK_Everywhere/Patch/
104- # cp WiFiGeneric.cpp /home/runner/.arduino15/packages/esp32/hardware/esp32/2.0.2/libraries/WiFi/src/WiFiGeneric.cpp
98+ # https://github.com/avinabmalla/ESP32_BleSerial/issues/15
99+ - name : Patch ESP32_BleSerial BLECharacteristic
100+ run : |
101+ cd Firmware/RTK_Everywhere/Patch/
102+ cp BleSerial.cpp /home/runner/Arduino/libraries/ESP32_BleSerial/src/BleSerial.cpp
103+
104+ - name : Patch libmbedtls
105+ run : |
106+ cd Firmware/RTK_Everywhere/Patch/
107+ cp libmbedtls.a /home/runner/.arduino15/packages/esp32/tools/esp32-arduino-libs/${{ env.ESP_IDF }}/esp32/lib/libmbedtls.a
108+ cp libmbedtls_2.a /home/runner/.arduino15/packages/esp32/tools/esp32-arduino-libs/${{ env.ESP_IDF }}/esp32/lib/libmbedtls_2.a
109+ cp libmbedcrypto.a /home/runner/.arduino15/packages/esp32/tools/esp32-arduino-libs/${{ env.ESP_IDF }}/esp32/lib/libmbedcrypto.a
110+ cp libmbedx509.a /home/runner/.arduino15/packages/esp32/tools/esp32-arduino-libs/${{ env.ESP_IDF }}/esp32/lib/libmbedx509.a
105111
106112 - name : Setup Python
107113 uses : actions/setup-python@v4
@@ -133,13 +139,13 @@ jobs:
133139
134140 - name : Copy custom RTKEverywhere.csv
135141 run :
136- cp Firmware/RTKEverywhere.csv /home/runner/.arduino15/packages/esp32/hardware/esp32/2.0.11 /tools/partitions/RTKEverywhere.csv
142+ cp Firmware/RTKEverywhere.csv /home/runner/.arduino15/packages/esp32/hardware/esp32/${{ env.CORE_VERSION }} /tools/partitions/RTKEverywhere.csv
137143
138144 - name : Compile Sketch
139145 run : arduino-cli compile --fqbn "esp32:esp32:esp32":DebugLevel=${{ env.DEBUG_LEVEL }},PSRAM=enabled ./Firmware/RTK_Everywhere/RTK_Everywhere.ino
140146 --build-property build.partitions=RTKEverywhere
141147 --build-property upload.maximum_size=3145728
142- --build-property "compiler.cpp.extra_flags=\"-DPOINTPERFECT_LBAND_TOKEN=$POINTPERFECT_LBAND_TOKEN\" \"-DPOINTPERFECT_IP_TOKEN=$POINTPERFECT_IP_TOKEN\" \"-DFIRMWARE_VERSION_MAJOR=$FIRMWARE_VERSION_MAJOR\" \"-DFIRMWARE_VERSION_MINOR=$FIRMWARE_VERSION_MINOR\" \"-DENABLE_DEVELOPER=${{ env.ENABLE_DEVELOPER }}\""
148+ --build-property "compiler.cpp.extra_flags=-MMD -c \"-DPOINTPERFECT_LBAND_TOKEN=$POINTPERFECT_LBAND_TOKEN\" \"-DPOINTPERFECT_IP_TOKEN=$POINTPERFECT_IP_TOKEN\" \"-DPOINTPERFECT_LBAND_IP_TOKEN=$POINTPERFECT_LBAND_IP_TOKEN \" \"-DFIRMWARE_VERSION_MAJOR=$FIRMWARE_VERSION_MAJOR\" \"-DFIRMWARE_VERSION_MINOR=$FIRMWARE_VERSION_MINOR\" \"-DENABLE_DEVELOPER=${{ env.ENABLE_DEVELOPER }}\""
143149 --export-binaries
144150
145151 - name : Create artifact name
0 commit comments