Skip to main content tempire.dev

Multiple Espressif Versions

Install multiple versions of esp32 idf tools on linux

Terminal

Install v4

bash code snippet start

export FOLDER=$HOME/Projects/esp4
mkdir -p $FOLDER
export IDF_TOOLS_PATH=$HOME/.espressif4
cd $FOLDER
git clone -b v4.4.4 --recursive https://github.com/espressif/esp-idf.git
cd esp-idf
./install.sh esp32,esp32s3

bash code snippet end

Add to .bashrc/.profile

bash code snippet start

alias getidf4='export IDF_TOOLS_PATH=$HOME/.espressif4 && . $HOME/Projects/esp4/esp-idf/export.sh'
alias idf=idf.py
alias esptool=esptool.py

bash code snippet end

Install v5

bash code snippet start

export FOLDER=$HOME/Projects/esp5
mkdir -p $FOLDER
export IDF_TOOLS_PATH=$HOME/.espressif5
cd $FOLDER
git clone -b v5.2.5 --recursive https://github.com/espressif/esp-idf.git
cd esp-idf
./install.sh esp32,esp32s3

bash code snippet end

Add to .bashrc/.profile

bash code snippet start

alias getidf5='export IDF_TOOLS_PATH=$HOME/.espressif5 && . $HOME/Projects/esp5/esp-idf/export.sh'
alias idf=idf.py
alias esptool=esptool.py

bash code snippet end

VSCode

Change the esp-idf extension setting, saveCode, to 3, which saves all esp-idf settings to the workspaceFolder, instead of the default, global.

CTRL+SHIFT+P, user settings

Code examples for reference book

Book: Developing-IoT-Projects-with-ESP32, Second-edition Code for multiple versions

4.4.4: https://github.com/PacktPublishing/Developing-IoT-Projects-with-ESP32-2nd-edition?tab=readme-ov-file

5.2.2 https://www.packtpub.com/product/developing-iot-projects-with-esp32-2nd-edition-second-edition/9781803237688