esp32 TTGO arduino compatible board with 128x64 pixel oled display and Wifi
Device description on banggood
- The main control chip using Le Xin ESP32, Tensilica LX6 dual core processor, clocked at 240MHz, computing capacity of up to 600DMIPS, 520 SRAM, 802.11 KB chip b/g/n HT40 Wi-Fi transceiver, baseband, and LWIP protocol stack, Bluetooth (Bluetooth dual-mode integrated traditional and BLE low-power Bluetooth).
- onboard 16 Mt bytes (128 Mt bit), Flash, and Wi-Fi antennas
- 0.96 inch White OLED display
- lithium battery charging circuit and interface
- CP2102 USB to serial chip, perfect support for Arduino development environment
PCB characteristics
poor rf design, display holding screws too near to wifi antenna (one of them is touching it)
Development tools
- board support: arduino-esp32
- oled display: ESP8266 and ESP32 Oled Driver for SSD1306 display (directly available from arduino's library manager)
- SDA = pin 4, SCL = pin 15, RESET = pin 16
- initialize device:
SSD1306 display(0x3c, 4, 15);
- pulse RESET signal, or keep it high during startup:
pinMode(16, OUTPUT); digitalWrite(16, 1);
- internal led is on pin 2
LED blink sample code
#define LED 2
void setup()
{
pinMode(LED, OUTPUT);
}
void loop()
{
digitalWrite(LED, 1);
delay(1000);
digitalWrite(LED, 0);
delay(1000);
}
Windows installation: https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/windows.md
CP210x windows driver: https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers
Board: ESP32 Dev Module
Delete \Program Files (x86)\Arduino\libraries\Wifi\ folder, because it conflicts with ESP32 Wifi implementation (\Documents\Arduino\hardware\espressif\arduino-esp32\libraries\WiFi\src\WiFi.h)