ESP32-IDF menuconfig, PlatofrmIO dragging their feet

I was glad to see this post here from PlatformIO. At least they havent forgot about the ESP32.
Yet at the same time, they are not addressing most posts about menuconfig.

Why in the world are they investing time adding new boards when the most needed feature for working with the ESP32 is lacking, and that is getting to “all” the options in menuconfig!!!
Even just the few they give access to like “board_build.f_cpu” does not work, which I have proven this in another post. (which was also never dealt with)

PlatformIO, Its time you took this issue serious. ESP-IDF users using your platform are seriously hindered by not having the ability to change settings in menuconfig.

Can you PLEASE take a more serious attidude towards this. Without being able to have this there really is no point to using PlatformIO

1 Like

Epsressif team works on a multi-platform solution for ESP-IDF. Recently, they added support for Cmake. We hope that they will provide better interface how to configure ESP-IDF options without a ton of dependencies and menuconfig.

Our goal is to make PlatformIO multi-platform and to work with zero-dependencies to 3rd party software.

Meanwhile, you can control ESP-IDF settings manually in sdkconfig.h. See #define CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ 160 option in

Thanks for responding!
I will try sdkconfig.h, and report back if it works. What kept me from changing anything there was it says this at the top of the file.


  • Automatically generated file; DO NOT EDIT.
  • Espressif IoT Development Framework Configuration


Just to confirm, making changes in that file work, so thanks for that.

Is it doable to have a popup or something of the like that to make changes in a GUI to this file?
VisualGDB does this and its super nice.

1 Like

Resolved in

We have a feature request for this

Any update on this topic ?
The problem with editing it manually is that I cannot find any documentation to what many of these settings options are. It was never meant to be edited manually so there seems to be no docs for that.

1 Like

I made a little headway…

I created a new ESP32-IDF project. I then copied the CMakeLists.txt file from the blink example folder : Here
into the projects main folder.

Then i clicked on View-> terminal to open a terminal window and typed menuconfig and it opened it. The only problem is the up and down keys don’t work, but tab does. So dam close…
I ran into this same problem on my custom Visual Studio code, and the fix for me was to open a terminal with “”: “C:\Program Files\Git\bin\bash.exe”,

We have added official support for menuconfig UI into the latest ESP32 dev-platform. You can try pio run -t menuconfig with the latest upstream version Espressif 32 — PlatformIO latest documentation

1 Like

That links says “PlatformIO v4.3.0 greater is required)”
Yet mine says.

Library Manager

Library Storage: C:\Users\Jim.platformio\lib
PS C:\Users\Jim\Documents\PlatformIO\Projects\test> platformio upgrade
You’re up-to-date!
PlatformIO 4.2.1 is currently the newest version available.
PS C:\Users\Jim\Documents\PlatformIO\Projects\test>

Latest dev version is 4.3.0b2

C:\Users\Maxi>pio upgrade --dev
Please wait while upgrading PlatformIO ...
PlatformIO has been successfully upgraded to 4.3.0b2
1 Like

No good.

C:\Users\Mike>pio upgrade --dev
‘pio’ is not recognized as an internal or external command,
operable program or batch file.

You need to execute this where it has access to the PIO program. I also generally recommend it to put it in your path to be able to use it from the CLI. If you open a PIO Terminal then the command should work, after that restart VSCode.

1 Like

Please open PlatformIO IDE Terminal and use it for CLI. VSCode > Left Activity Bar > PlatformIO > Open PlatformIO CLI.

Thanks @ivankravets. Now that i got that to upgrade. ran into another problem.
menuconfig opens. yet the arrow keys down work.

FWIW, in my setup show in this thread i had the same problem. The only way i was able to get arround it was to use a bash terminal.
"": "C:\\Program Files\\Git\\bin\\bash.exe",

Also, are you going to provide a icon for getting into menuconfig or are we going to need to remember to enter

every time ?

Thanks, I’ve just added to my TODO. We will create a new task in PlatformIO IDE.

1 Like

Thanks, Will you please update this thread when you get the arrow keys to work or any other features about menuconfig. Thank you for your efforts on this!

This will result in an error:

$ pio run -t menuconfig
Processing esp32dev (platform: espressif32; board: esp32dev; framework: espidf)
Verbose mode can be enabled via `-v, --verbose` option
PLATFORM: Espressif 32 1.11.2 > Espressif ESP32 Dev Module
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
DEBUG: Current (esp-prog) External (esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
 - framework-espidf 3.30300.190916 (3.3.0) 
 - tool-esptoolpy 1.20600.0 (2.6.0) 
 - toolchain-xtensa32 2.50200.80 (5.2.0)
LDF: Library Dependency Finder ->
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 1 compatible libraries
Scanning dependencies...
No dependencies
Building in release mode
scons: *** Do not know how to make File target `menuconfig'

Any ideas? Unfortunatly I don’t understand where the tool is located and how to call manually to dig deeper.

It has not been released yet. Please use upstream version of ESP32 dev-platform Espressif 32 — PlatformIO latest documentation

1 Like

So according to this link here
It says:

This configuration file can be modified via a special target called menuconfig (PlatformIO v4.3.0 greater is required):

platformio run -t menuconfig

My PIO Home page says Core 4.3.3 & Home 3.2.0.
So 3 questions.
#1) When the above is talking about “PlatformIO v4.3.0 greater is required” are they talking about “Core” or “Home” versions ?
#2) assuming they are talking about “Core” then my version qualifies. So how exactly am i entering in “platformio run -t menuconfig” ?
#3) When clicking the icon Run Task at the lower left it pull up a list of options we can click on like Build, Check, Clean and so on. Why not put menuconfig in that list as well, or an icon for it ?