ESP32 DevKit V1 Pinout: 30 vs 38 Pin Reference

ESP32 DevKit V1 Pinout: 30 vs 38 Pin Reference

Summary: ESP32 Pinout in 30 Seconds The ESP32 is Espressif’s dual-core Xtensa LX6 MCU running at up to 240 MHz with Wi-Fi and Bluetooth. The chip has 34 GPIOs; boards break out either 30 or 38 pins. The 30 vs 38 pin difference is not just pin count: six of the extra pins on the 38-pin board are wired to the internal flash and cannot be used. GPIO6 through GPIO11 belong to the flash chip. Connect anything there and the board will not boot. GPIO34, 35, 36 and 39 are input only. They cannot drive an output and have no internal pull-up or pull-down. GPIO0, 2, 5, 12 and 15 are strapping pins. Hold one at the wrong level during boot and the board either refuses to start or hangs in flashing mode. ADC2 does not work while Wi-Fi is on. Wire analog sensors to the ADC1 pins, GPIO32 to GPIO39. The board runs on 3.3 V logic and is not 5 V tolerant. Never wire a 5 V sensor output straight to a GPIO. The ESP32 is cheap, fast, and ships with Wi-Fi and Bluetooth built in. It also has one habit that drives beginners up the wall: the board says 38 pins, and you cannot use all of them. Wire a relay to one pin and the board stops booting. Wire a sensor to another and the reading turns to noise the moment Wi-Fi comes up. Wire an LED to a third and it flickers once on every reset. ...

August 16, 2026 ·  16 min ·  3274 words
What Is ESP32-S3? Pinout, Board Variants and Getting Started

What Is ESP32-S3? Pinout, Board Variants and Getting Started

Summary: ESP32-S3 in 30 Seconds ESP32-S3 is Espressif’s dual-core Xtensa LX7 MCU running at 240 MHz with Wi-Fi and Bluetooth 5 (LE). 45 GPIOs, 512 KB of SRAM. Three things set it apart from the classic ESP32: built-in USB OTG, 14 touch channels, and a vector instruction set for neural-network workloads. Codes like N8R8 and N16R8 on the board are not arbitrary: N = flash, R = PSRAM, numbers in megabytes. The board has two USB ports and they behave differently. This is where beginners get stuck. GPIO35, GPIO36 and GPIO37 are unusable on many variants, GPIO19 and GPIO20 belong to USB, and four pins do double duty as strapping pins. Depending on the board revision, the RGB LED sits on either GPIO48 or GPIO38. If your blink sketch does nothing, check that first. If you have built something with an ESP32 and then tried to add a camera, audio, or a color display, you have probably hit the wall: not enough pins, not enough RAM, no USB. ...

August 10, 2026 ·  10 min ·  2069 words
Adafruit GFX Library Guide: Every Function, Fonts and Bitmaps Explained

Adafruit GFX Library Guide: Every Function, Fonts and Bitmaps Explained

Adafruit GFX is the layer nearly every Arduino display library sits on top of. Adafruit_SSD1306, Adafruit_ILI9341, Adafruit_ST7735, the e-paper libraries and dozens of third party drivers all inherit from it, which is why the same drawLine call works on a 128x64 monochrome OLED and on a 320x240 colour TFT. The catch is that the drawing functions live in the base class while the colours, the constructor and the buffer behaviour come from the driver. That split is where most of the confusion comes from. This guide covers the whole API in one place. ...

August 7, 2026 ·  8 min ·  1550 words
Arduino OLED SSD1306 128x64 I2C Tutorial: Wiring, Code and Animation

Arduino OLED SSD1306 128x64 I2C Tutorial: Wiring, Code and Animation

The 0.96 inch blue OLED is a staple of Arduino projects. It is cheap, it needs two wires, and because it has no backlight its black is genuinely black. Yet half the people wiring one up for the first time end up staring at a blank panel. This guide runs end to end: picking the module, wiring, finding the I2C address, choosing a library, drawing text and shapes, showing bitmaps, building an animation, and fixing the six problems that come up most often. ...

August 7, 2026 ·  10 min ·  1974 words