Learning paths

ESP32 Guides & Tutorials

Structured learning from chip fundamentals to Arduino IDE setup, sensors, and connected systems.

Phase 1: Foundations Phase 2: Development 100% Free
Phase 4: Connectivity 10 guides
Phase 4: Connectivity Advanced 15 min read

MQTT on ESP32 — Publish Sensor Data to a Broker

Use MQTT with ESP32 to publish sensor readings and subscribe to commands. Covers PubSubClient library, broker setup, QoS levels, retained…

Read Guide
Phase 4: Connectivity Advanced 12 min read

Wi-Fi Basics on ESP32 — Connecting to a Network

Learn how to connect your ESP32 to a Wi-Fi network using Arduino IDE. Covers SSID credentials, connection states, IP address…

Read Guide
Phase 4: Connectivity Advanced 10 min read

ESP32 Wi-Fi Modes — Station, AP, and AP+STA

Understand ESP32 Wi-Fi operating modes: Station (client), Access Point (hotspot), and the dual AP+STA mode. Includes code for each mode…

Read Guide
Phase 4: Connectivity Advanced 14 min read

ESP32 HTTP Client — GET and POST Requests

Send HTTP GET and POST requests from ESP32 using the HTTPClient library. Includes JSON payloads, response parsing, HTTPS with certificate…

Read Guide
Phase 4: Connectivity Advanced 16 min read

ESP32 Web Server — Serve an HTML Control Page

Build a local web server on ESP32 to control GPIO pins from a browser. Covers the WebServer library, route handlers,…

Read Guide
Phase 4: Connectivity Advanced 13 min read

WebSockets on ESP32 — Real-Time Bidirectional Communication

Implement WebSockets on ESP32 for real-time bidirectional data between the board and a browser. Covers ESPAsyncWebServer, ws.textAll(), JSON events, and…

Read Guide
Phase 4: Connectivity Advanced 11 min read

Bluetooth Classic on ESP32 — Serial Over Bluetooth (SPP)

Use ESP32 Bluetooth Classic Serial Port Profile (SPP) to send and receive data wirelessly from Android phones, Windows PCs, and…

Read Guide
Phase 4: Connectivity Advanced 14 min read

BLE on ESP32 — GATT Server, Characteristics, and Notifications

Implement Bluetooth Low Energy on ESP32 as a GATT server. Create services and characteristics, send notifications to connected clients, and…

Read Guide
Phase 4: Connectivity Advanced 13 min read

ESP-NOW — Low-Latency Peer-to-Peer Wireless Between ESP32 Boards

Use ESP-NOW to send data between ESP32 boards without a Wi-Fi router. Covers point-to-point, broadcast, and multi-peer communication with send/receive…

Read Guide
Phase 4: Connectivity Advanced 14 min read

OTA Updates on ESP32 — Update Firmware Over Wi-Fi

Flash new firmware to ESP32 over Wi-Fi without a USB cable. Covers ArduinoOTA (Arduino IDE), web browser OTA with ESPAsyncWebServer,…

Read Guide
Phase 3: GPIO & Hardware 10 guides
Phase 3: GPIO & Hardware Advanced 13 min read

Reading Buttons on ESP32: Wiring, Code, and Projects

Learn how to read button inputs on ESP32 — wiring normally-open switches, active-LOW vs active-HIGH logic, debouncing, toggle buttons, and…

Read Guide
Phase 3: GPIO & Hardware Advanced 13 min read

Debouncing Buttons on ESP32: Software and Hardware Methods

Fix button bounce on ESP32 — learn software debouncing with millis(), the Bounce2 library, hardware RC debounce circuits, and interrupt-safe…

Read Guide
Phase 3: GPIO & Hardware Advanced 14 min read

Driving LEDs with ESP32: Resistors, PWM, RGB, and NeoPixels

Complete guide to driving LEDs with ESP32 — calculate resistor values, control brightness with PWM (LEDC), drive RGB LEDs, and…

Read Guide
Phase 3: GPIO & Hardware Advanced 15 min read

Using Relays Safely with ESP32: Wiring, Code, and AC Safety

Learn to control relays with ESP32 safely — understand relay modules, flyback diodes, 3.3V logic compatibility, active-LOW vs active-HIGH, and…

Read Guide
Phase 3: GPIO & Hardware Advanced 13 min read

Reading Analog Signals on ESP32: analogRead, Sensors, and ADC Tips

Learn to read analog signals on ESP32 — use analogRead(), map sensor values, interface potentiometers, LDR, NTC thermistors, and fix…

Read Guide
Phase 3: GPIO & Hardware Advanced 14 min read

ADC Explained on ESP32: Resolution, Attenuation, and Calibration

Deep dive into ESP32 ADC — understand SAR ADC architecture, ADC1 vs ADC2, 12-bit resolution, attenuation, calibration methods, and how…

Read Guide
Phase 3: GPIO & Hardware Advanced 12 min read

DAC Explained on ESP32: Generate Analog Voltages and Audio Signals

Learn how to use the ESP32 built-in 8-bit DAC — output analog voltages on GPIO25/GPIO26, generate sine waves, audio signals,…

Read Guide
Phase 3: GPIO & Hardware Advanced 11 min read

Pull-Up vs Pull-Down Resistors on ESP32: Full Explanation

Understand pull-up and pull-down resistors for ESP32 GPIO — when to use external vs internal resistors, resistor values, wiring diagrams,…

Read Guide
Phase 3: GPIO & Hardware Advanced 14 min read

Digital Inputs on ESP32: Complete GPIO Input Guide

Master digital inputs on ESP32 — configure INPUT, INPUT_PULLUP, INPUT_PULLDOWN, use digitalRead(), hardware interrupts, and protect against 5V signals.

Read Guide
Phase 3: GPIO & Hardware Advanced 12 min read

Digital Outputs on ESP32: Control LEDs, Relays, and More

Learn how to control digital outputs on ESP32 with digitalWrite(), manage output current, drive LEDs and relays, and use safe…

Read Guide
Phase 6: Interfaces & Sensors 2 guides
Phase 6 3 guides
Phase 2: Setup & Development 10 guides
Phase 2: Setup & Development Intermediate 18 min read read

Installing ESP-IDF: Native Espressif Development Framework Setup Guide

Install ESP-IDF on Windows, macOS, and Linux for native FreeRTOS ESP32 development. Covers toolchain setup, environment variables, your first IDF…

Read Guide
Phase 2: Setup & Development Intermediate 16 min read read

Installing Arduino IDE for ESP32: Complete Setup Guide for Windows, Mac, and Linux

Step-by-step guide to installing Arduino IDE 2.x and adding ESP32 board support via the Board Manager. Covers Windows, macOS, and…

Read Guide
Phase 2: Setup & Development Intermediate 17 min read read

Your First ESP32 Program: From Blink to Wi-Fi in One Session

Write your first ESP32 programs step by step — LED blink, button input, Serial debugging, analog reading, and a Wi-Fi…

Read Guide
Phase 2: Setup & Development Intermediate 15 min read read

Uploading Code to ESP32: Methods, Troubleshooting, and OTA Updates

Master all methods for uploading code to ESP32 — USB serial, manual boot mode, OTA over Wi-Fi, esptool.py, and ESP…

Read Guide
Phase 2: Setup & Development Intermediate 14 min read read

ESP32 Serial Monitor Guide: Debug, Plot, and Monitor Your Projects

Master the Arduino Serial Monitor and Serial Plotter with ESP32. Learn Serial.print, printf, timestamps, debugging state machines, binary protocol decoding,…

Read Guide
Phase 2: Setup & Development Intermediate 12 min read read

ESP32 Board Manager Setup: Installing, Updating, and Switching Core Versions

How to install the ESP32 Arduino core via Board Manager, manage multiple core versions, switch between ESP32 chip variants, and…

Read Guide
Phase 2: Setup & Development Intermediate 15 min read read

PlatformIO vs Arduino IDE for ESP32: Feature Comparison and Migration Guide

Compare PlatformIO and Arduino IDE for ESP32 development. Covers project structure, library management, board configuration, debugging, CI/CD integration, and which…

Read Guide
Phase 2: Setup & Development Intermediate 14 min read read

VS Code with ESP32: PlatformIO and ESP-IDF Extension Setup Guide

Set up VS Code for ESP32 development using PlatformIO or the Espressif IDF extension. Covers IntelliSense configuration, JTAG debugging, CMake…

Read Guide
Phase 2: Setup & Development Intermediate 13 min read read

Flashing ESP32 Firmware: esptool.py, Flash Download Tool, and Recovery

Complete guide to flashing ESP32 firmware using esptool.py command line, Espressif Flash Download Tool GUI, and recovering a bricked ESP32…

Read Guide
Phase 2: Setup & Development Intermediate 16 min read read

Updating ESP32 Firmware: OTA Updates, Version Control, and Rollback

How to safely update ESP32 firmware using OTA updates, HTTPS secure delivery, dual-partition rollback, ElegantOTA, and version tracking for deployed…

Read Guide
Phase 1: Beginner 10 guides
Phase 1: Beginner Beginner 14 min read read

ESP32 vs ESP8266: Which Wi-Fi Microcontroller Should You Use?

Compare ESP32 and ESP8266 across dual-core speed, GPIO count, memory, Bluetooth, power modes, and price to pick the right chip…

Read Guide
Phase 1: Beginner Beginner 16 min read read

ESP32 Pinout Guide: Every Pin Explained with Functions and Limits

Complete ESP32 pinout reference covering GPIO functions, ADC channels, DAC outputs, PWM, I2C, SPI, UART, touch pins, power rails, and…

Read Guide
Phase 1: Beginner Beginner 15 min read read

ESP32 Variants Explained: S2, S3, C3, C6, H2, and CAM Compared

Understand every ESP32 family member — original ESP32, S2, S3, C3, C6, H2, and ESP32-CAM — with core count, connectivity,…

Read Guide
Phase 1: Beginner Beginner 12 min read read

Safe GPIO Pins on ESP32: Which Pins to Use and Which to Avoid

A practical guide to safe ESP32 GPIO selection. Learn which pins are safe for any use, which are restricted to…

Read Guide
Phase 1: Beginner Beginner 13 min read read

ESP32 Boot Strapping Pins Explained: GPIO 0, 2, 5, 12, and 15

Learn how ESP32 boot strapping pins work, what each pin controls at power-on, and how to avoid boot loops caused…

Read Guide
Phase 1: Beginner Beginner 14 min read read

ESP32 Memory Architecture: Flash, SRAM, PSRAM, and RTC Memory Explained

Understand every memory region on the ESP32 — internal SRAM, IRAM, DRAM, flash partitions, RTC memory, and PSRAM — and…

Read Guide
Phase 1: Beginner Beginner 15 min read read

ESP32 Power Consumption Guide: Sleep Modes, Battery Life, and Optimisation

Master ESP32 power management — active mode, modem sleep, light sleep, deep sleep, and ULP. Calculate battery runtime and optimise…

Read Guide
Phase 1: Beginner Beginner 13 min read read

Choosing the Right ESP32 Board: DevKitC, NodeMCU, WROOM, WROVER, and More

Compare ESP32 development boards and modules — DevKitC, NodeMCU-32S, WROOM-32, WROVER, Lolin32, and TinyPICO — to find the right form…

Read Guide
Phase 1: Beginner Beginner 15 min read read

Common ESP32 Beginner Mistakes: 9 Errors That Waste Hours and How to Fix Them

Avoid the most common ESP32 beginner pitfalls — from boot loops and brownouts to ADC2 Wi-Fi conflicts, wrong baud rates,…

Read Guide
Phase 1: Beginner Beginner 16 min read read

What Is ESP32? Complete Beginner's Guide

Learn what ESP32 is, how dual-core Wi-Fi microcontrollers work, and how to start IoT projects. Comparisons, examples, FAQs, and troubleshooting…

Read Guide