Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>ESP8266 / ESP8285 ToolsNew to Visual Studio Code? Get it now.
ESP8266 / ESP8285 Tools

ESP8266 / ESP8285 Tools

Dzantemir

|
21 installs
| (0) | Free
Build, flash, monitor and configure ESP8266/ESP8285 projects using ESP8266_RTOS_SDK (idf.py). Supports Windows, Linux and macOS.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

ESP8266 / ESP8285 Tools

A convenient VS Code extension for developing with ESP8266 and ESP8285 chips.
Supports ESP8266_RTOS_SDK via idf.py.


Features

⚙️ Build

  • Build — full project build
  • Build App — application only
  • Build Bootloader — bootloader only
  • Build Partition Table — partition table only
  • Auto-saves all unsaved files before build
  • Configurable pre-build action (none / clean / full clean)
  • Configurable post-build action (none / flash / flash + monitor)
  • Optional post-build analysis (size / size-components / size-files)

⚡ Flash

  • Flash — flash firmware to device
  • Flash App / Bootloader / Partition Table — flash individual components
  • Flash Encrypted / Flash Encrypted App — encrypted flash variants
  • Erase Flash — full flash erase
  • Configurable action before flash (none / erase flash)
  • Configurable action after flash (none / open monitor)
  • Port availability check before flashing — prompts to select another port if device not connected

🖥️ Monitor

  • Monitor — open serial monitor
  • Stop Monitor — close serial monitor
  • Configurable baud rate

🔧 SDK Configure

  • Menuconfig — visual configuration (idf.py menuconfig)
  • Reconfigure — re-run CMake configuration
  • Reset Config — delete sdkconfig and restore defaults

📁 Project Folder

  • Shows active project name
  • 📦 Components — automatically lists components/ subfolders
    • [+] button — launch Add Component wizard
    • [✏️] button — edit component (rename, sources, headers, dependencies)
    • [🗑] button — delete component with confirmation

➕ Add Component Wizard

Creates a new ESP-IDF component in components/ with 4 steps:

  1. Component name
  2. Source .c files
  3. Header location: include/ folder, same folder ./, or none
  4. REQUIRES dependencies

Generates:

  • components/<n>/CMakeLists.txt with correct idf_component_register()
  • .c source stub
  • .h header stub (if selected)

No changes to root CMakeLists.txt needed — ESP-IDF SDK auto-detects components/

✏️ Edit Component Wizard

Edits an existing component — opens pre-filled wizard with 4 steps:

  1. Rename — rename the component folder (leave unchanged to skip)
  2. Source files — pre-filled from existing CMakeLists.txt
  3. Header location — pre-selected from existing config
  4. REQUIRES dependencies — pre-filled from existing config

Updates CMakeLists.txt in place. Creates any new source files that don't exist yet.

🛠️ Utilities

  • Make SPIFFS — pack data/ folder into SPIFFS image using mkspiffs
  • Custom Partitions — open partition table editor

🗂️ Partition Table Editor

Visual editor for ESP8266 flash partition tables. Drag-and-drop reordering, flash map visualization, presets, validation and CSV support.

  • Drag-and-drop partition reordering
  • Flash map visualization
  • OTA preset — auto-selects 1MB or 2MB+ layout based on flash size
  • SPIFFS preset — classic layout: nvs + phy_init + factory (512KB) + spiffs (rest)
  • Default preset — standard single factory app (960KB max due to ESP8266 1MB boundary)
  • Auto Offsets — automatic offset calculation
  • Validation with ESP8266-specific checks (1MB app boundary, alignment, overlaps)
  • CSV save/open

📊 Analysis

  • Size — firmware size report (idf.py size)
  • Size Components — per-component size breakdown
  • Size Files — per-file size breakdown

⚗️ Advanced (Experimental)

  • eFuse Common / Custom Table generation
  • OTA data erase / read
  • Show eFuse Table

🔧 VSCode Utilities

  • Generate IntelliSense — creates .vscode/c_cpp_properties.json with correct ESP8266 includes
  • Generate tasks.json — adds ESP build tasks for Ctrl+Shift+B

Requirements

  • Python 3.7.x — must be 3.7.x, newer versions are not compatible with ESP8266 RTOS SDK
  • ESP8266_RTOS_SDK — download and set path via extension settings

Setup (Fresh Install)

  1. Install the extension — sidebar shows the full command tree immediately
  2. Install Python 3.7 — click warning in sidebar → Download Python 3.7
  3. Set SDK path — in sidebar, click RTOS IDF: not set and point to your ESP8266_RTOS_SDK folder
  4. Install build tools — extension detects missing tools and offers to install automatically via idf_tools.py
  5. Select your COM port via Serial Source Settings → Port
  6. Run Build → Flash → Monitor

Command Check Order

Every command verifies prerequisites in this order before executing:

  1. Python 3.7 — if not found, shows download prompt
  2. IDF path — if not set, shows settings prompt
  3. Build tools — if missing, offers automatic installation
  4. Project folder — if not selected, shows folder picker
  5. COM port — if not connected, shows port selector

Extension Settings

Setting Description Default
esp-idf-tools.idfPath Path to ESP8266_RTOS_SDK
esp-idf-tools.pythonPath Manual path to Python 3.7 folder
esp-idf-tools.comPort COM port (e.g. COM3 or /dev/ttyUSB0)
esp-idf-tools.flashBaud Flash baud rate 115200
esp-idf-tools.flashSize Flash size 2MB
esp-idf-tools.flashMode SPI flash mode (dio, qio, …) dio
esp-idf-tools.flashFreq SPI flash frequency 40m
esp-idf-tools.monitorBaud Serial monitor baud rate 74880
esp-idf-tools.eraseBeforeFlash Erase flash before flashing false
esp-idf-tools.postFlashAction Action after flash (none, monitor) none
esp-idf-tools.postBuildAction Action after build (none, flash, flash_monitor) none
esp-idf-tools.useCompressedUpload Use compressed upload (-z) true
esp-idf-tools.overrideFlashConfig Use manual flash settings instead of menuconfig false
esp-idf-tools.reuseTerminal Reuse existing terminal instead of creating new true
esp-idf-tools.saveSettingsToWorkspace Save settings per-project instead of globally true

Supported Platforms

  • ✅ Windows 10/11 (PowerShell)
  • ✅ Linux (bash)
  • ✅ macOS (bash/zsh)

Links

  • GitHub Repository
  • ESP8266_RTOS_SDK
  • Report Issues

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft