Skip to content

Commit 8af67ed

Browse files
authored
Install latest stable Arduino core version (#59)
* Update platform.json * Fetch stable release from GH API / Arduino package json * use get * Update platform.py * use matching Arduino libs to release * silence debug prints
1 parent 411e190 commit 8af67ed

File tree

2 files changed

+15
-3
lines changed

2 files changed

+15
-3
lines changed

platform.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"type": "git",
1919
"url": "https://github.com/pioarduino/platform-espressif32.git"
2020
},
21-
"version": "51.03.07",
21+
"version": "51.03.0x-stable",
2222
"frameworks": {
2323
"arduino": {
2424
"script": "builder/frameworks/arduino.py"
@@ -33,13 +33,13 @@
3333
"type": "framework",
3434
"optional": true,
3535
"owner": "espressif",
36-
"version": "https://github.com/espressif/arduino-esp32/releases/download/3.0.7/esp32-3.0.7.zip"
36+
"version": ""
3737
},
3838
"framework-arduinoespressif32-libs": {
3939
"type": "framework",
4040
"optional": true,
4141
"owner": "espressif",
42-
"version": "https://github.com/espressif/esp32-arduino-lib-builder/releases/download/idf-release_v5.1/esp32-arduino-libs-idf-release_v5.1-632e0c2a.zip"
42+
"version": ""
4343
},
4444
"framework-espidf": {
4545
"type": "framework",

platform.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,18 @@ def configure_default_packages(self, variables, targets):
4545
if "arduino" in frameworks:
4646
self.packages["framework-arduinoespressif32"]["optional"] = False
4747
self.packages["framework-arduinoespressif32-libs"]["optional"] = False
48+
# use latest stable release Arduino core
49+
ARDUINO_CORE_API_URL = "https://api.github.com/repos/espressif/Arduino-esp32/releases/latest"
50+
api_data = requests.get(ARDUINO_CORE_API_URL, timeout=10).json()
51+
zipball = api_data.get("zipball_url")
52+
tag = api_data.get("tag_name")
53+
# print("Latest release Arduino core URL:", zipball)
54+
self.packages["framework-arduinoespressif32"]["version"] = zipball
55+
# use corresponding espressif Arduino libs to release
56+
URL = "https://raw.githubusercontent.com/espressif/arduino-esp32/" + tag + "/package/package_esp32_index.template.json"
57+
packjdata = requests.get(URL, timeout=10).json()
58+
dyn_lib_url = packjdata['packages'][0]['tools'][0]['systems'][0]['url']
59+
self.packages["framework-arduinoespressif32-libs"]["version"] = dyn_lib_url
4860

4961
if "buildfs" in targets:
5062
filesystem = variables.get("board_build.filesystem", "littlefs")

0 commit comments

Comments
 (0)