Building Development Environment for Espressif ESP32

Submitted by matthiaslink on Thu, 2018-10-11 - 23:23

Install Arduino IDE

1. Go to https://www.arduino.cc/
2. Software > Downloads
3. Download & Install Arduino IDE (e.g. Windows - Installer, for Windows XP and up)

 

Install the Windows USB Driver

1. Go to https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers
2. Download & Unzip Windows 10 Universial Driver ("Download VCP")
3. Go to directory and install CP210xVCPInstaller_x64.exe

Testcase: Open Arduino ID and connect the ESP32 board, there should be now within Menu Item "Tools > Port" a new Port (e.g. COM3).

Hint: There is no driver Installation or USB device connect message when connecting the board to your PC, so don't be confused. Furthermore the red LED is Power LED, it's always on.

 

Install the ESP32 Core (Arduino ESP32 support)

1. Install git-scm (from https://git-scm.com)
2. Open cmd.exe
2. Go to directory %userprofile%\Documents\Arduino (cd %userprofile%\Documents\Arduino)
3. Create subdirectories hardware\espressif (mkdir hardware; cd hardware; mkdir espressif; cd espressif; mkdir esp32)
4. Go to directory %userprofile%\Documents\Arduino\hardware\espressif\esp32
5. Clone official repository with git clone https://github.com/espressif/arduino-esp32.git .
6. Go to directory %userprofile%\Documents\Arduino\hardware\espressif\esp32\tools
7. Execute get.exe and download all necessary files
8. Go to directory %userprofile%\Documents\Arduino\hardware\espressif\esp32
9. Clone dependent library repos with git submodule update --init --recursive

Important: It is important that you clone the git repository locally in the esp32 directly with the "." at the end of the clone command. This is important because else you might not face an issue at the beginning and when uploading simple scripts but with more includes of libraries you'll get some wired error messages e.g. 'multiple libraries were found for "WiFi.h"' etc.

 

Settings in Arduino IDE

1. Open Arduino IDE
2. Select the new generated port within "Tools > Port" - in my case it's COM3
3. Selecte the Board "ESP32 Dev Module" in "Tools > Board"
4. Select the Baud Rate "115200" in "Tools > Upload Speed"
5. Select Baud Rate "115200" also in "Tools > Serial Monitor"

Important: If you don't select the Baud Rate "115200" in Upload Speed than you might have issues when uploading Sketches. If you don's select Baud Rate "115200" in Serial Monitor you'll get cryptic chars instead of correct ASCII characters when running a sketch and checking output in the monitor.

 

Upload your first Sketch

1. Open "Files > Examples > Examples for ESP32 Dev Module > ESP32 > Chip ID > GetChipID"
2. Check and compile sketch (STRG + R)
3. Upload sketch (STRG + U)
4. Open Serial Monitor with (STRG + SHIFT + M)
5. You might reset the board with the Reset Button on Board now also and you should see in serial monitor somthing like
"ESP32 Chip ID = FDAC982DXXXX"

Congratulations, you are done and can continue to install the Heise Basecamp Library with "Tools > Maintain Libraries" and search for "basecamp".

Hint: If you want to upload another Sketch during upload procedure with STRG +U you'll see appearing some "....._____...…" within this phase press and hold (roundabout 2 secs) the boot button on the ESP32 to set the board in "update" mode.

 

Further Informations

  • c't 2018, Issue 2
  • Github arduino-esp32 project page (https://github.com/espressif/arduino-esp32)
  • arduino-esp32 ticket (https://github.com/espressif/arduino-esp32/issues/1048)
  • Manual of ESP32 Board (http://anleitung.joy-it.net/?goods=nodemcu-esp32)
  • Voltage Regulator Data Sheet AMS1117 3.3V (http://www.advanced-monolithic.com/pdf/ds1117.pdf)
  • DOIT Board Information - might be same schema
    https://docs.zerynth.com/latest/official/board.zerynth.doit_esp32/docs/index.html (Zerynth)
    https://idyl.io/doit-esp32-development-board-review/ (Review with listing some restrictions)
    https://startingelectronics.org/articles/ESP32-WROOM-testing/ (Additional info on Serial; Lua)
  • Some more ESP32 boards (https://makeradvisor.com/esp32-development-boards-review-comparison/)

Add new comment

This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.