
pyWiFi-ESP32 Development Board Kit is a development board based on the ESP32 microcontroller using XTENSA architecture.
This board features a maximum CPU frequency of 240 MHz and 4MB flash memory.
About pyWiFi-ESP32 Development Board Kit
The pyWiFi-ESP32 is a comprehensive development kit based on the ESP32 microcontroller, designed for MicroPython programming and IoT applications. It features integrated Wi-Fi 802.11 b/g/n and Bluetooth 4.2 + BLE for wireless connectivity. 📶
Powered by a dual-core Xtensa 32-bit LX6 processor at up to 240 MHz, with 4MB flash memory and 520KB SRAM, it's ideal for IoT projects, home automation, and educational purposes. ⚡
The kit includes a variety of sensors: Atmospheric Pressure Sensor, Water Level Sensor, Soil Humidity Sensor, Ultrasonic Sensor, Human Infrared Sensor, and Photosensitive Sensor. It also comes with a pyBase expansion board, 0.96" OLED display, and Micro USB cable. 🔌
Operating at 3.3V with power input from 3.6V to 6V (recommended USB 5V), and 3.3V output up to 600mA. Features an onboard LED connected to GPIO2 and a button on GPIO0. Supports I2C and PWM on any GPIO pin. 🔋
Where to Buy pyWiFi-ESP32 Development Board Kit
Prices are subject to change. We earn from qualifying purchases as an Amazon Associate.
Technical Specifications
Complete technical specification details for pyWiFi-ESP32 Development Board Kit
USB
Connectivity
Microcontroller
✨ Features & Pins
Quick Setup
Copy-paste configs for pyWiFi-ESP32 Development Board Kit - auto‑generated from this board's exact hardware specs.
In Arduino IDE 2 select Esp32 Dev from the esp32 by Espressif package. In PlatformIO use board = esp32dev. ESP32 · 240 MHz · 4MB · DIO.
In Arduino IDE 2, open Boards Manager, search "esp32" by Espressif and install it. Then go to Tools → Board and select "Esp32 Dev" for the pyWiFi-ESP32 Development Board Kit.
[env:pywifi-esp32]
platform = espressif32
board = esp32dev
framework = arduino
; Exact hardware config for pyWiFi-ESP32 Development Board Kit
board_build.mcu = esp32
board_build.f_cpu = 240000000L
board_build.flash_size = 4MB
board_build.flash_mode = dio
board_upload.flash_size = 4MBThe board value is a close generic match - check PlatformIO board registry for an exact fit.
esp32:
board: esp32dev
framework:
type: arduino # or "esp-idf"
# pyWiFi-ESP32 Development Board Kit - 240 MHz ESP32
# Flash: 4MB | USB: Micro-USBPaste into your device's .yaml. See ESPHome ESP32 docs for full options.
esptool.py \
--chip esp32 \
--baud 921600 \
write_flash \
--flash_mode dio \
--flash_size 4MB \
0x1000 bootloader.bin \
0x8000 partitions.bin \
0xe000 boot_app0.bin \
0x10000 firmware.binInstall: pip install esptool - replace firmware.bin with your binary - bootloader at 0x1000
pyWiFi-ESP32 Development Board Kit Pinout Diagram
Complete pin reference for pyWiFi-ESP32 Development Board Kit
The pyWiFi-ESP32 pinout follows standard ESP32 GPIO layout with 30+ pins for extensive functionality. Power pins include 3V3 for 3.3V supply and GND for ground. Communication pins like TXD0 and RXD0 handle UART, while GPIO pins (0-39) support digital I/O, ADC, DAC, PWM, I2C, SPI, and more.
ADC channels provide 12-bit analog input, DAC offers analog output, and touch sensors enable capacitive touch interfaces. The board's flexible pinout makes it perfect for sensor integration and IoT prototyping.
Safe Pins to Use
These pins are safe for general GPIO usage without boot or system conflicts
Why Are These Pins Safe?
Pins to Avoid or Use with Caution
Reserved for critical functions. Misuse may cause boot failures, programming issues, or system conflicts.
Boot behavior & flash voltage
Low-level debugging interface
USB Serial/JTAG communication
Memory & PSRAM connections
Debugging & firmware uploads
| PIN | Label | Why Avoid | Type |
|---|---|---|---|
| IO0 | GPIO0 | Must be HIGH during boot for normal startup; if held LOW on reset, forces flash programming mode. | 🛠️ Strapping |
| IO2 | GPIO2 | If driven HIGH on reset (while IO0 is LOW), selects an unsupported SDIO boot mode, causing boot failure. | 🛠️ Strapping |
| IO4 | GPIO4 | Sampled at reset for boot config; should not be driven at boot (affects boot mode timing). | 🛠️ Strapping |
| IO5 | GPIO5 | Must be HIGH during boot; if pulled LOW at reset, alters SDIO slave timing and may prevent normal boot. | 🛠️ Strapping |
| IO12 | MTDI (GPIO12) | Keep LOW during boot (internal PD); pulling HIGH at reset selects 1.8V flash mode, causing flash brownout if 3.3V flash is used. | 🛠️ Strapping |
| IO13 | MTCK (GPIO13) | Used for JTAG debugging (TCK); avoid using as GPIO if JTAG is needed. | 🪛 Other |
| IO14 | MTMS (GPIO14) | Used for JTAG debugging (TMS); driving it as GPIO may interfere with JTAG or produce spurious signals at boot. | 🪛 Other |
| IO15 | MTDO (GPIO15) | Keep HIGH during boot (internal PU); if LOW on reset, bootloader log is silenced and boot mode may change. | 🛠️ Strapping |
| IO16 | GPIO16 | Connected to internal PSRAM on PSRAM-enabled modules; not usable as GPIO on those modules. | ⚡ Flash |
| IO17 | GPIO17 | Connected to internal PSRAM on PSRAM-enabled modules; not usable as GPIO on those modules. | ⚡ Flash |
| IO34 | GPIO34 | Cannot be used as output (no drive capability); only suitable for analog/digital input. | 🪛 Other |
| IO35 | GPIO35 | Cannot be used as output; only suitable for input. | 🪛 Other |
pyWiFi-ESP32 Development Board Kit Additional Information
More details about pyWiFi-ESP32 Development Board Kit

pyWiFi-ESP32 Kit Contents
📦 Included Components
- pyWiFi-ESP32 Board: Main ESP32 development board
- pyBase: Expansion base board with additional interfaces
- 0.96" OLED Display: I2C OLED screen for output
- Micro USB Cable: For power and programming
- Sensors: Atmospheric Pressure, Water Level, Soil Humidity, Ultrasonic, Human Infrared, Photosensitive
🎯 Perfect For
This kit is ideal for learning MicroPython, IoT development, and building sensor-based projects. The included sensors enable quick prototyping of environmental monitoring, automation, and interactive applications.
💡 Getting Started
Connect via Micro USB, install MicroPython firmware using esptool, and start coding with Thonny IDE or similar. The kit provides everything needed for immediate IoT experimentation.
Useful Links
Datasheets and resources for pyWiFi-ESP32 Development Board Kit
pyWiFi-ESP32 Development Board Kit Custom Pin Mapping
Pin configuration and GPIO mapping for pyWiFi-ESP32 Development Board Kit
| Pin | Function | ESP Pin | I/O Type | Description |
|---|---|---|---|---|
| 4 | IO0 | GPIO0 | BIDIRECTIONAL | GPIO0, Boot Mode Selection, Button |
| 5 | IO2 | GPIO2 | BIDIRECTIONAL | GPIO2, General Purpose I/O, LED |
| 6 | IO4 | GPIO4 | BIDIRECTIONAL | GPIO4, General Purpose I/O |
| 7 | IO5 | GPIO5 | BIDIRECTIONAL | GPIO5, General Purpose I/O |
| 8 | IO12 | GPIO12 | BIDIRECTIONAL | GPIO12, ADC or GPIO |
| 9 | IO13 | GPIO13 | BIDIRECTIONAL | GPIO13, ADC or GPIO |
| 10 | IO14 | GPIO14 | BIDIRECTIONAL | GPIO14, ADC or GPIO |
| 11 | IO15 | GPIO15 | BIDIRECTIONAL | GPIO15, ADC or GPIO |
| 12 | IO16 | GPIO16 | BIDIRECTIONAL | GPIO16, General Purpose I/O |
| 13 | RX | GPIO3 | INPUT | UART0 Receive |
| 14 | TX | GPIO1 | OUTPUT | UART0 Transmit |
| 15 | IO17 | GPIO17 | BIDIRECTIONAL | GPIO17, General Purpose I/O |
| 16 | IO18 | GPIO18 | BIDIRECTIONAL | GPIO18, General Purpose I/O |
| 17 | IO19 | GPIO19 | BIDIRECTIONAL | GPIO19, General Purpose I/O |
| 18 | IO21 | GPIO21 | BIDIRECTIONAL | GPIO21, I2C SDA |
| 19 | IO22 | GPIO22 | BIDIRECTIONAL | GPIO22, I2C SCL |
| 20 | IO23 | GPIO23 | BIDIRECTIONAL | GPIO23, SPI MOSI |
| 21 | IO25 | GPIO25 | BIDIRECTIONAL | GPIO25, DAC1 |
| 22 | IO26 | GPIO26 | BIDIRECTIONAL | GPIO26, DAC2 |
| 23 | IO27 | GPIO27 | BIDIRECTIONAL | GPIO27, ADC |
| 24 | IO32 | GPIO32 | BIDIRECTIONAL | GPIO32, ADC |
| 25 | IO33 | GPIO33 | BIDIRECTIONAL | GPIO33, ADC |
| 26 | IO34 | GPIO34 | INPUT | GPIO34, ADC Input Only |
| 27 | IO35 | GPIO35 | INPUT | GPIO35, ADC Input Only |
Pin Mappings
Complete pinout and GPIO mapping for pyWiFi-ESP32 Development Board Kit
| Pin | Analog | Touch | PWM | Other |
|---|---|---|---|---|
| 0 | T1 | |||
| 1 | PWM | TX | ||
| 2 | A12 | T2 | PWM | |
| 3 | PWM | RX | ||
| 4 | A10 | T0 | PWM | |
| 5 | PWM | |||
| 12 | A15 | T5 | PWM | |
| 13 | A14 | T4 | PWM | |
| 14 | A16 | T6 | PWM | |
| 15 | A13 | T3 | PWM | |
| 16 | PWM | |||
| 17 | PWM | |||
| 18 | PWM | |||
| 19 | PWM | |||
| 21 | PWM | SDA | ||
| 22 | PWM | SCL | ||
| 23 | PWM | MOSI | ||
| 25 | A18 | DAC1 | ||
| 26 | A19 | DAC2 | ||
| 27 | A17 | T8 | PWM | |
| 32 | A4 | T9 | PWM | |
| 33 | A5 | T10 | PWM | |
| 34 | A6 | INPUT | ||
| 35 | A7 | INPUT |
Default Tools & Configuration
Build and upload settings for pyWiFi-ESP32 Development Board Kit
| Setting | Value |
|---|---|
| Bootloader tool | esptool_py |
| Uploader tool | esptool_py |
| Network uploader tool | esp_ota |
| Bootloader address | 0x1000 |
| Flash mode | dio |
| Boot mode | dio |
| Maximum upload size | 1280 KB (1310720 bytes) |
| Maximum data size | 320 KB (327680 bytes) |
The pyWiFi-ESP32 Development Board Kit uses esptool_py for uploads , esp_ota for OTA updates, and esptool_py bootloader at 0x1000.
Flash mode: dio | Boot mode: dio
Max sketch size: 1280 KB | Max data size: 320 KB
Similar Boards
Other development boards with ESP32 microcontroller

TTGO T-Watch
TTGO T-Watch development board is based on esp32 microcontroller and uses xtensa architecture.

M5Stack-Core2
M5Stack-Core2 development board is based on esp32 microcontroller and uses xtensa architecture.

Nano32
Nano32 development board is based on esp32 microcontroller and uses xtensa architecture.

