Skip to content
Latchkey

PlatformIO "doesn't support framework" build error in CI

PlatformIO matched the board you selected against its supported frameworks and the one in your framework line is not on that list. Each board declares which frameworks it can build, and this pairing is invalid.

What this error means

A pio run step stops immediately with "This board doesn't support <framework> framework!" before any compilation begins.

PlatformIO
Error: This board doesn't support espidf framework!

Common causes

Board and framework are mismatched

The board only supports certain frameworks (for example arduino), and you set one it does not declare (for example espidf), so the pairing is rejected.

A board variant chosen for the wrong toolchain

You picked a board ID whose definition targets a different framework family than the code expects.

How to fix it

Set a framework the board supports

  1. Run pio boards <id> and read the supported frameworks column.
  2. Set framework to one the board declares.
  3. Re-run pio run to confirm the pairing is accepted.
platformio.ini
[env:esp32dev]
board = esp32dev
framework = arduino

Pick a board that supports the framework you need

If you must use a specific framework, choose a board ID whose definition lists it as supported.

Terminal
pio boards espressif32 | head

How to prevent it

  • Verify board and framework compatibility with pio boards before pinning.
  • Keep one framework per environment to avoid invalid pairings.
  • Document which board each environment targets in platformio.ini comments.

Frequently asked questions

What causes ""doesn't support ... framework""?
The board only supports certain frameworks (for example arduino), and you set one it does not declare (for example espidf), so the pairing is rejected.
How do I fix "doesn't support ... framework"?
Set a framework the board supports

Related guides

References

Latchkey auto-heals failures like this one - detected, fixed, and retried without you. Start free → 30-day trial · No credit card