Site icon Renzo Mischianti

ESP32-wroom-32, esp32-S: flash, pinout, specs and IDE configuration – 1

Spread the love

esp32-wroom-32 flash pinout specs and IDE configuration

Here is another article on esp32; we are going to introduce the basic module, which can be used without a specific developer card. Still, to program it, you need to do some wiring and create an adapter (with the programming card, you will undoubtedly do it first, but you want to put the satisfaction).

You can find the esp32-wroom-32 and esp32-s on ESP32 Dev Kit v1 - TTGO T-Display 1.14 ESP32 - NodeMCU V3 V2 ESP8266 Lolin32 - NodeMCU ESP-32S - WeMos Lolin32 - WeMos Lolin32 mini - ESP32-CAM programmer - ESP32-CAM bundle - ESP32-WROOM-32 - ESP32-S

ESP32 programming board Aliexpress adapter esp8266 esp32

ESP32 S pinout low resolution

Specs and hight resolution pinout image

ESP32 wroom 32 pinout

Specs and hight resolution pinout image

Specs

3D printed adapter

A good and fast solution is to print one adapter. Exists a lot of adapters, but I think this is a good choice.

Socket for esp32-wroom-32  

Socket for esp32-wroom-32 V base 

Wiring

There is some connection to do to use the board correctly, first, we must power and pull up and pull down some pins.

Normal start

Here is the startup configuration: you enable the device (EN pull-up), prevent RESET, and pull up GPIO0 or FLASH fin to prevent that from entering in programming mode.

esp32-wroom-32 basic connection breadboard

Enter flash mode

Now to put in boot mode you must add 2 button, one to reset the device (put to ground EN), and one to send LOW signal to GPIO0.

Then EN and GPIO0 pull up, and you will connect a button that puts the pin to GND on click like the diagram.

To enter boot mode, you must:

esp32-wroom-32 programming flash connection no serial breadboard

Programming with FTDI (USB to Serial converter)

To program the device with this system, it is possible to use an FTDI converter, and there are several types, one that transmits and receives only and one that also supplies a selectable supply voltage.

You can find some kind of FTDI on USB to TTL CH340G - USB to TTL FT232RL


esp32-wroom-32 programming flash connection breadboard

Now you must share the Ground pin and put RX of FTDI to TX of esp and TX to RX.

With the 3d printed adapter, the wiring becomes:

esp32-wroom-32 socket programming flash on breadboard

Here is the photo of the result on the breadboard.

esp32-wroom-32 socket programming flash breadboard photo

I added a led to pin 21 to check the pin output.

ModeGPIO0
UARTHigh
Flash BootLow

Configure IDE

In the Arduino IDE, you must install the esp32 environment. Refer to “ESP32: pinout, specs and Arduino IDE configuration“, then you must configure the correct board information, now I use an esp32-wroom-32 and I set:

esp32-wroom-32 Arduino IDE configuration

Upload a simple blink sketch

Now you must only:

/*
    Blink

  Mischainti Renzo www.mischianti.org
*/

//#include "soc/soc.h"
//#include "soc/rtc_cntl_reg.h"

#define LED_PIN 21 // I add the led to the GPIO21

// the setup function runs once when you press reset or power the board
void setup() {
//    WRITE_PERI_REG(RTC_CNTL_BROWN_OUT_REG, 0); //disable brownout detector

  Serial.begin(115200);
  // initialize digital pin LED_PIN as an output.
  pinMode(LED_PIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_PIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  Serial.println("HIGH");
  delay(1000);                       // wait for a second
  digitalWrite(LED_PIN, LOW);    // turn the LED off by making the voltage LOW
  Serial.println("LOW");
  delay(1000);                       // wait for a second
}

And here the serial monitor result.

Connect to serial port COM16 at 115200
LOW
HIGH
LOW
HIGH
LOW
HIGH
LOW
HIGH
LOW
HIGH

esp32 programming board PCB

I share the PCB used by me to program esp32 with the 3D-printed socket. Here is the article “ESP32-wroom-32 ESP32-S programming board and breadboard adapter“.

ESP32 wroom 32 S programming board pcb

Thanks

  1. ESP32: pinout, specs and Arduino IDE configuration
  2. ESP32: integrated SPIFFS Filesystem
  3. ESP32: manage multiple Serial and logging
  4. ESP32 practical power saving
    1. ESP32 practical power saving: manage WiFi and CPU
    2. ESP32 practical power saving: modem and light sleep
    3. ESP32 practical power saving: deep sleep and hibernation
    4. ESP32 practical power saving: preserve data, timer and touch wake up
    5. ESP32 practical power saving: external and ULP wake up
    6. ESP32 practical power saving: UART and GPIO wake up
  5. ESP32: integrated LittleFS FileSystem
  6. ESP32: integrated FFat (Fat/exFAT) FileSystem
  7. ESP32-wroom-32
    1. ESP32-wroom-32: flash, pinout, specs and IDE configuration
  8. ESP32-CAM
    1. ESP32-CAM: pinout, specs and Arduino IDE configuration
    2. ESP32-CAM: upgrade CamerWebServer with flash features
  9. ESP32: use ethernet w5500 with plain (HTTP) and SSL (HTTPS)
  10. ESP32: use ethernet enc28j60 with plain (HTTP) and SSL (HTTPS)
  11. How to use SD card with esp32
  12. esp32 and esp8266: FAT filesystem on external SPI flash memory
  1. Firmware and OTA update management
    1. Firmware management
      1. ESP32: flash compiled firmware (.bin)
      2. ESP32: flash compiled firmware and filesystem (.bin) with GUI tools
    2. OTA update with Arduino IDE
      1. ESP32 OTA update with Arduino IDE: filesystem, firmware, and password
    3. OTA update with Web Browser
      1. ESP32 OTA update with Web Browser: firmware, filesystem, and authentication
      2. ESP32 OTA update with Web Browser: upload in HTTPS (SSL/TLS) with self-signed certificate
      3. ESP32 OTA update with Web Browser: custom web interface
    4. Self OTA uptate from HTTP server
      1. ESP32 self OTA update firmware from the server
      2. ESP32 self OTA update firmware from the server with version check
      3. ESP32 self-OTA update in HTTPS (SSL/TLS) with trusted self-signed certificate
    5. Non-standard Firmware update
      1. ESP32 firmware and filesystem update from SD card
      2. ESP32 firmware and filesystem update with FTP client
  1. Integrating LAN8720 with ESP32 for Ethernet Connectivity with plain (HTTP) and SSL (HTTPS)
  2. Connecting the EByte E70 to ESP32 c3/s3 devices and a simple sketch example
  3. ESP32-C3: pinout, specs and Arduino IDE configuration
  4. Integrating W5500 with ESP32 Using Core 3: Native Ethernet Protocol Support with SSL and Other Features
  5. Integrating LAN8720 with ESP32 Using Core 3: Native Ethernet Protocol Support with SSL and Other Features

Spread the love
Exit mobile version