Wednesday, December 2, 2015

Setup environment for ESP32

In order to develop something with the ESP32 you need to setup the environment for it.

I am hopping that Santa will bring me an ESP31 ( the prerelease model for ESP32).

Usually I create a VM for this. After I've installed the lumbuntu 15.04 in a Virtual Box and the Guest Addition now is time for compiler stuff.

The following commands are from espressif github with few modification for using the lumbutu i386 VM.

Step 1. Install the required toolchain packages.

sudo apt-get install git autoconf build-essential gperf bison flex texinfo libtool libncurses5-dev wget gawk libc6-dev python-serial libexpat-dev libtool-bin

Step 2. Create a directory (e.g./opt/Espressif) to store the toolchain.

sudo mkdir /opt/Espressif

Step 3. Make the current user the owner.

sudo chown $USER /opt/Espressif/

Step 4. Download the latest toolchain installation file to the directory created in Step 2.

cd /opt/Espressif/git clone -b esp108-1.21.0 git://

Step 5. Install toolchain.

cd crosstool-NG./bootstrap && ./configure --prefix=`pwd` && make && make install
./ct-ng xtensa-esp108-elf
./ct-ng build

The command ./ct-ng build takes some time(30-40minutes), so grab a coffee or a cup with tea.
Step 6. Set the PATH variable to point to the newly compiled toolchain.

export PATH=/opt/Espressif/crosstool-NG/builds/xtensa-esp108-elf/bin:$PATH

Note: You need to do Step 6 once you open a new shell, or you can put it inside your .bashrc file

Project template Compile

Step 1. Create a directory (e.g.~/Workspace) to store a new project.

mkdir ~/Workspace

Step 2. Clone ESP32 RTOS SDK.

cd ~/Workspacegit clone

Step 3. Copy ESP32_RTOS_SDK/examples/project_template to Workspace directory created in Step 1.

cp -R ~/Workspace/ESP32_RTOS_SDK/examples/project_template ~/Workspace/

Step 4. Create a directory (e.g.~/Workspace/ESP32_BIN) to store the bin files compiled.

mkdir ~/Workspace/ESP32_BIN

Step 5. Set SDK_PATH as the path of SDK files and BIN_PATH as the path of .bin files compiled.

export SDK_PATH=~/Workspace/ESP32_RTOS_SDK
export BIN_PATH=~/Workspace/ESP32_BIN

Notice: Make sure you set the correct paths, or it will occur a compile error.
Step 6. Start to compile files

make cleanmake

Now in ESP32_BIN directory you have the bin files.

No comments:

Post a Comment