How to use ESPIDF 4.1 or greater?

I try to get an project working, which needs at least ESP-IDF 4.1. When searching for information, I find an announcement from Espressif, that PIO supports it (PlatformIO Support for ESP-IDF v4.1 | Espressif Systems), I see several informations in the online documentation (e.g. Espressif IoT Development Framework — PlatformIO latest documentation), but I get only offered Espressif 32 v3.2.0

I work with PIO 5.1.1 under VSCode (Win10). When trying to install a newer version under “embedded” I only see ESP-IDF Versions up to 3.2.

When I put the following line in my projects platform.ini:

platform = espressif32@>4.1.0

and enter: ‘pio run -t menuconfig’ I receive the error message:

Could not find the package with ‘espressif32 @ >4.1.0’ requirements for your system ‘windows_amd64’

Any hints, what needs to be done to get at least a version 4.1 from ESPIDF working under PIO?

The Platform Espressif32 versions are distinct from the ESP-IDF version. In PlatformIO terms, the platform (e.g. platform-espressif32) is the general base hosting all board definitions and builder code), the actual framework code is a package, e.g. framework-espidf or framework-arduinoespressif32.

Available platform versions are listed at Releases · platformio/platform-espressif32 · GitHub and are default-tied to a ESP-IDF version. E.g., the latest 3.2.0 version uses ESP-IDF v4.2, which already satisfies your requirements.

So, if you declare platform = espressif32@>=3.2.0 you will always get at least ESP-IDF v4.2. You can also use just platform = espressif32 and make sure that your locally installed platform is up-to-date, either via the PIO Home → Platforms → Updates GUI or via the CLI and pio platform update.

Lastly, PlatformIO has the feature of platform_packages, letting you select a source or a version for each package. In conjunction with listed versions of e.g. framework-espidf, you can then say

; use ESP-IDF 4.2.0
platform_packages = 
    framework-espidf@~3.40200.0

in the platformio.ini to control it very fine-grained. But, in this case, just selecting the platform version will suite you just fine.

Thanks for the answer, it helped me a little bit further. I have not realized, that espidf-v4.2 works under the hood of the v3.2 pio-extension.
Perhaps it would be helpful, if pio platform list could also list the version numbers of the tool-chains.

One reason, that I have not understood, which espidf-toolchain works under the hood is, that the configuration dialog is missing several entries. I will open another thread with questions regarding this.