This is an old revision of the document!


Espressif ESP32

Serial to USB Driver

Espressif ESP32 Development Board

Upload a Sketch

The Examples for the ESP32 become visible after selecting ESP32 DEV MODULE in the Arduino IDE.
Set the flashing speed to 460800 or lower (115200).
Upload your sketch.
It could be necessary to start the IDE with administrator rights, too.


Special Hardware Configuration

The build in LED is on Pin 2.
Pin 34 - 39 are input only. And don't have a software pull-up or pull-down functions. One has to use an external 10k pull-up resistor. Details are at learn.sparkfun.com.


WeMos ESP32 OLED Board


The OLED is connected like that:

  pin5 - SDA
  pin4 - SCL

The I2C address of the screen is 0x3c.

  #include "SSD1306.h"
  SSD1306  display(0x3c, 5, 4);

Librarie:
https://github.com/squix78/esp8266-oled-ssd1306
Board: ESP32 Dev Module

Manuals:
http://www.instructables.com/id/ESP32-With-Integrated-OLED-WEMOSLolin-Getting-Star/
https://techtutorialsx.com/2017/12/02/esp32-arduino-interacting-with-a-ssd1306-oled-display/


Arduino core for ESP32 WiFi chip

https://github.com/espressif/arduino-esp32

Workaround for Arch Linux:

Install the latest Arduino IDE

 sudo pacman -S arduino

Install Git

 sudo pacman -S git

Download and run get-pip.py

 wget https://bootstrap.pypa.io/get-pip.py
 sudo python get-pip.py

Install PySerial

 sudo pip install pyserial

Make a folder in the Arduino folder

 sudo mkdir -p /usr/share/arduino/hardware/espressif
 cd /usr/share/arduino/hardware/espressif

Download ESP32 and run get.py

 sudo git clone https://github.com/espressif/arduino-esp32.git esp32
 cd esp32
 sudo git submodule update --init --recursive
 cd tools
 sudo python2 get.py

Programming the ESP32

IO pin 34 and pin 35 don't work!
ESP-IDF Programming Guide
https://esp-idf.readthedocs.io/en/v2.0/index.html

the 8bit DAC:
https://esp-idf.readthedocs.io/en/v2.0/api/peripherals/dac.html

 #include <driver/dac.h>
 void setup() {
 }
void loop() {
 for (int i=0; i<255; i++){
 dac_out_voltage(DAC_CHANNEL_1, i);
 }
}

Output is a signal between 0 and 3.2V with 76Hz.


Adafruit HUZZAH32 – ESP32 Feather Board