ESP-IDF platformIO package version discrepancy?

Hello all,

I have just setup yesterday VSCode with PlatformIO to code on a TinyPico (ESP32) using ESP-IDF framework. New project, chose my board and IDF framework not arduino. I had but cleared ever since confusion regarding esp-idf versioning by reading on the forum and understood that currently the platform espressif32 (latest version 2.0.0) uses as framework ESP-IDF 4.1.

The issue is, I have been having weird missing functions from includes of examples based on ESP-IDF 4.1.

Typically, examining “esp_vfs_dev.h” from the official release of ESP-IDF 4.1 shows 127 lines of code with two additional functions that i cannot find in my “esp_vfs_dev.h” which shows 89 lines (in my platformIO environment).
Further examination shows it’s actually"esp_vfs_dev.h" from ESP-IDF 3.3 that I have in my project. How is that possible ? Am I doing something wrong here ?

Thanks in advance

As can be seen in the bintray and version code, the latest framework-espidf-3.40100.200827.tar.gz was uploaded 2020, August 27th.

The esp_vfs_dev.h file has a change from 2020, August 24th. So yes, in this the package didn’t get that updated file. File information says it was created on August 21.


So this seems like an error; I’ve opened Some files not updated in ESP-IDF v4.1 package · Issue #426 · platformio/platform-espressif32 · GitHub for an update request, which is the right place for bugs in the Espressif32 platform and its packages.

Thanks for the input.
I understand, is there anyway automated way to verify if all files are updated or not ? In case this particular one isn’t the only one .

Hi @y.ahaggach! Could you please point me where I can find the official esp_vfs_dev.h with 128 lines of code? The ESP-IDF v4.1 points to the 5ef1b390026270503634ac3ec9f1ec2e364e23b2 commit and if we browse the framework files in that commit, the esp_vfs_dev.h file only contains 89 lines of code. I even downloaded from the assets on the github release page and the esp_vfs_dev.h file is the same.

Am I missing something?

  • The file on the v4.1 tag has 89 lines of code (see esp_vfs_dev.h).
  • The file on the realese/v4.1 branch has 127 lines of code (see esp_vfs_dev.h).

The v4.1 branch basically contains an intermediate state towards the next maintenance release (probably v4.1.1). So it has not been officially released. I would thus argue that the current PlatformIO package is correct and that the OP will have to wait for the next official release.

It should be possible to switch to the tag v4.1 in Espressif’s GitHub and the navigate to examples that are compatible with the official release.

1 Like

That’s interesting, we used as the base and the esp_vfs_dev.h file from that package also has only 89 lines.

Why is that interesting? That’s the expected result.

You took the official release, and the official release has the tag v4.1 and esp_vfs_dev.h has 89 lines.

The confusing part is that the moving branch is called release/v4.1, while the frozen release is called v4.1.

1 Like

Oh, looks like I misread your first comment, so we have the correct package, right?

Yes, I very much think so.

1 Like