ESP32

Getting started with ESP32

The ESP32 is a low-cost SoC with Wi-Fi and Bluetooth, dual-core Tensilica cores (up to 240 MHz), and a rich set of peripherals. It is a strong default for IoT prototypes that may later grow into production fleets.

Why teams pick it

  • Built-in Wi-Fi and BLE
  • Enough RAM/CPU for sensors + protocols without an immediate Linux SBC
  • Huge community and PlatformIO support
  • Low enough cost to instrument many devices

Minimal PlatformIO setup

pip install platformio
mkdir my_esp32_project
cd my_esp32_project
pio project init --board esp32dev

platformio.ini:

[env:esp32dev]
platform = espressif32
board = esp32dev
framework = arduino

src/main.cpp blink:

#include <Arduino.h>

void setup() {
    pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
    digitalWrite(LED_BUILTIN, HIGH);
    delay(1000);
    digitalWrite(LED_BUILTIN, LOW);
    delay(1000);
}
pio run -t upload

When you outgrow demos, read Shipping IoT past the demo.