ESP32 IDF
Complete ESP32 tutorial series using Espressif's official ESP-IDF framework — from environment setup through Wi-Fi, Bluetooth, FreeRTOS, and production-ready OTA updates.
Install ESP-IDF toolchain, configure VS Code extension, flash your first blink project.
Dual-core Xtensa LX6, memory regions (DRAM, IRAM, flash), and peripheral address space.
Configure GPIO as input/output, set pull-ups, and handle edge-triggered interrupts safely.
Tasks, queues, semaphores, and inter-core communication on the dual-core ESP32.
Configure all three serial buses, use DMA-backed transfers, and interface common sensors.
12-bit ADC channels, attenuation settings, continuous mode, and the 8-bit DAC output.
Hardware timers, high-resolution timer API, and the LEDC peripheral for LED/motor PWM.
Connect to a router in STA mode, create a soft-AP, and handle reconnection events.
Publish and subscribe with the ESP-MQTT library, QoS levels, TLS, and last-will messages.
Classic SPP for serial links, BLE GATT server/client, and advertisement payloads.
Store configuration keys, counters, and blobs in flash using the NVS partition API.
HTTPS OTA with rollback support, partition table layout, and factory restore.
Light sleep, deep sleep, ULP co-processor wakeup, and measuring real current draw.
Enable secure boot V2, encrypt flash partitions, and manage eFuse key burning.
Connect to AWS IoT Core with MQTT/TLS, provision certificates, and use device shadows.