How do I find out what version of everything I have installed?

I don’t know how to check the versions of all the platforms, frameworks, boards, tools, etc that come with Platformio IDE on VSCode.

I haven’t been able to find out a way of getting what Arduino version is PlatformIO using, except reading some other comments in this forum saying that it is using v1.0.6.

This brings me to my next question: does PlatformIO have support for Arduino core v2 ?

I do not use ESP-IDF.

I am asking this question because I am having this issue: ESP can't connect to network when switching from Arduino Core v1.0.6 to v.2.0.3: E (477) esp_eth: esp_eth_ioctl(348): ethernet driver handle can't be null · Issue #7029 · espressif/arduino-esp32 · GitHub

TL:DR: Using espressif32 breaks my Ethernet connection and using espressif32@3.4.0 fixes it.

Thank you.

PlatformIO will tell you right at the start of compilation, e.g.,

o>pio run
Processing esp32dev (platform: espressif32@3.5.0; board: esp32dev; framework: arduino)
Verbose mode can be enabled via `-v, --verbose` option
PLATFORM: Espressif 32 (3.5.0) > 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-arduinoespressif32 @ 3.10006.210326 (1.0.6)
 - tool-esptoolpy @ 1.30100.210531 (3.1.0)
 - toolchain-xtensa32 @ 2.50200.97 (5.2.0)
LDF: Library Dependency Finder ->
LDF Modes: Finder ~ deep+, Compatibility ~ soft
Found 44 compatible libraries
Scanning dependencies...
Dependency Graph
|-- RTClib @ 2.0.3
|   |-- Adafruit BusIO @ 1.12.0
|   |   |-- Wire @ 1.0.1
|   |   |-- SPI @ 1.0
|   |-- Wire @ 1.0.1
|-- ArduinoJson @ 6.19.4

It lists the platform version, and associated with that (if not changed manually with platform_packages), the package versions coming with it, such as the Arduino-ESP32 at version 1.0.6.

Then your sketch or a it uses library is not compatible with a higher Arduino-ESP32 core version.

Yes, as per Releases · platformio/platform-espressif32 · GitHub, the latest stable release gives you 2.0.3, with the latest upstream giving you 2.0.4, visible through the commit history.

More directly, given a platform version x.y.z, (e.g., 3.5.0), you can look into the platform’s platform.json file and see all the used packages and their versions, such as in

Through which you e.g. also see that the Arduino-ESP32 core package used for this platform version is ~3.10006.0, which in turn encodes 1.0.6.

Thank you for your reply and I am sorry for my ignorance.

From now on I will know where to look for these details.