Skip to content

Commit 8e7cb3b

Browse files
initial description how to handle multiple board versions in Arduino IDE
1 parent f913f6b commit 8e7cb3b

File tree

1 file changed

+99
-0
lines changed

1 file changed

+99
-0
lines changed

extras/multiple_versions.md

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
# Using Multiple ESP32 Board Versions in Arduino IDE (Windows)
2+
3+
Tested with: **Arduino IDE 2.3.5**\
4+
Target: Use multiple versions of **Espressif's ESP32 Arduino core** side-by-side in the Arduino IDE.
5+
6+
---
7+
8+
## ⚒️ Step-by-step Instructions
9+
10+
### 1. 📂 Prepare Your Folder Structure
11+
12+
Create a `hardware` folder inside your Arduino sketchbook:
13+
14+
```text
15+
C:\Users\%USERNAME%\Documents\Arduino\hardware
16+
```
17+
18+
Inside that, create a subfolder for your desired version:
19+
20+
```text
21+
C:\Users\%USERNAME%\Documents\Arduino\hardware\espressif_2.0.17
22+
```
23+
24+
Clone the ESP32 Arduino core into the `esp32` subfolder:
25+
26+
```bash
27+
cd %USERPROFILE%\Documents\Arduino\hardware\espressif_2.0.17
28+
29+
git clone https://github.com/espressif/arduino-esp32.git esp32
30+
31+
cd esp32
32+
33+
git checkout tags/2.0.17
34+
```
35+
36+
This will download version 2.0.17 into the path:
37+
38+
```text
39+
...\Arduino\hardware\espressif_2.0.17\esp32
40+
```
41+
42+
### 2. 🔄 Restart Arduino IDE
43+
44+
After restarting the Arduino IDE, you will now see both board versions:
45+
46+
- The default one from Boards Manager
47+
- Your custom version from the Sketchbook
48+
49+
Look for entries like:
50+
51+
- `ESP32 Dev Module`
52+
- `ESP32 Dev Module (in Sketchbook) (espressif_2.0.17)`
53+
54+
![grafik](https://github.com/user-attachments/assets/5fa68133-cdfc-461a-acec-9a76942a4a9d)
55+
56+
57+
---
58+
59+
### 3. ⚠️ Compatibility with Arduino IDE < 2.x
60+
61+
Older IDE versions may **not display version labels** in the board selection menu.
62+
63+
To make your custom version distinguishable:
64+
65+
1. Edit this file:
66+
67+
```text
68+
...\Arduino\hardware\espressif_2.0.17\esp32\platform.txt
69+
```
70+
71+
2. Add or modify the `name` field at the top:
72+
73+
```ini
74+
name=ESP32 Arduino (in Sketchbook) (espressif_2.0.17)
75+
```
76+
77+
This ensures proper identification in older IDEs.
78+
79+
---
80+
81+
## ✅ Benefits
82+
83+
- Use different versions of ESP32 platform for different projects
84+
- Test compatibility with older/newer SDKs
85+
- Avoid breaking changes from updates
86+
87+
---
88+
89+
## 💻 Optional: One-liner Script for Setup
90+
91+
```bash
92+
cd %USERPROFILE%\Documents\Arduino\hardware
93+
94+
mkdir espressif_2.0.17 && cd espressif_2.0.17
95+
96+
git clone https://github.com/espressif/arduino-esp32.git esp32
97+
98+
cd esp32 && git checkout tags/2.0.17
99+
```

0 commit comments

Comments
 (0)