ESP32 칩, 개발 보드 개요, 클래식 아두이노와의 차이점.

What is the ESP32?

The ESP32 is a low-cost, low-power SoC (System on Chip) from Espressif Systems. Unlike the ATmega-based Arduino boards, the ESP32 features:

  • Dual-core Xtensa LX6 @ 240 MHz (single-core on C3/C6 variants)
  • 520 KB SRAM, 4–16 MB Flash (on the module)
  • Integrated Wi-Fi 802.11 b/g/n and Bluetooth 4.2 / BLE 5
  • 12-bit ADC on up to 18 channels (vs. 10-bit on Uno)
  • Hardware I2C, SPI, I2S, UART, CAN buses
  • Deep sleep current as low as 10 µA

These features make it the ideal platform for IoT and edge-AI projects.

Common Variants

ModuleCoreKey Addition
WROOM-32Dual LX6Standard workhorse
WROVERDual LX6+8 MB PSRAM for camera/ML
ESP32-S3Dual LX7USB OTG + AI acceleration
ESP32-C3Single RISC-VUltra-low cost
ESP32-S2Single LX7USB native, no BT

The 38-pin DevKit v1 (WROOM module) is recommended for this track.

Installing Board Support

  1. Open Arduino IDE → File → Preferences
  2. In “Additional boards manager URLs”, add:
    https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
  3. Tools → Board → Boards Manager, search “esp32” and install esp32 by Espressif Systems
  4. Select: Tools → Board → ESP32 Arduino → ESP32 Dev Module
  5. Set: Tools → Upload Speed → 921600, Flash Size → 4MB, Partition Scheme → Default

Your First Sketch: Wi-Fi Scan

#include <WiFi.h>

void setup() {
  Serial.begin(115200);
  WiFi.mode(WIFI_STA);
  WiFi.disconnect();
  delay(100);
  Serial.println("Scanning Wi-Fi networks...");
  int n = WiFi.scanNetworks();
  for (int i = 0; i < n; ++i) {
    Serial.printf("%2d: %-32s (%d dBm) %s\n",
      i + 1, WiFi.SSID(i).c_str(), WiFi.RSSI(i),
      WiFi.encryptionType(i) == WIFI_AUTH_OPEN ? "OPEN" : "SECURE");
  }
}

void loop() {}

Open Serial Monitor at 115200 baud — you should see nearby networks listed.

Key Differences from Classic Arduino

FeatureArduino UnoESP32 DevKit
CPU16 MHz 8-bit240 MHz 32-bit dual-core
Wi-Fi✓ built-in
Bluetooth✓ Classic + BLE
Logic level5V3.3V (GPIO not 5V-tolerant!)
ADC resolution10-bit12-bit
Price (clone)~$3 USD~$4–6 USD

Important: ESP32 GPIO is 3.3V logic. Connecting 5V signals directly will damage the chip. Use level shifters when interfacing with 5V Arduino shields or sensors.