PlatformIO
Introduction to ESP32
ESP32 comes with an on-chip 32-bit microcontroller with integrated Wi-Fi + Bluetooth + BLE features that targets a wide range of applications. It is a series of low-power and low-cost developed by Espressif Systems.
For this tutorial, we will use ESP32-S3-WROOM-1-N16R8 board with following features:
- 2.4 GHz Wi-Fi (802.11b/g/n) and Bluetooth® 5 module 
- Built around ESP32-S3 series of SoCs, Xtensa® dual-core 32-bit LX7 microprocessor 
- Flash up to 16 MB, PSRAM 
- up to 16 MB Up to 36 GPIOs, rich set of peripherals 
- On-board PCB antenna or external antenna connector 

ESP32-S3 Development Board Pinout
The ESP32-S3 development board has 45 programmable GPIO pins and the pin mapping is as follows:

Way of Programming for ESP32
The ESP32 supports both C/C++ and MicroPython programming languages that you can use to program your ESP32. Now, let’s check the supported ide for both types of languages.
Here’s a list of IDEs that supports to program the ESP32 series boards with C/C++.
- ESP-IDF 
- Arduino IDE 
- VS Code + PlatformIO 
Here’s a list of IDEs that supports to program the ESP32 series boards with MicroPython.
- Thonny IDE 
- PyCharm 
- Mu Editor 
- uPyCraft IDE 
- VS Code + Pymakr extension 
PlatformIO is an ideal tool for microcontrollers. While PlatformIO itself is not an IDE, it is a plug-in for other IDEs. Here we will run it in the very common open source IDE Visual Studio Code. Compared to Arduino IDE, this is a more advanced way to develop the MCU, and it has more functions like debugger and auto complete etc..
Last updated