Hmm… deleted… installed itself, ended up with this:
Resolving esp32doit-devkit-v1 dependencies...
Already up-to-date.
Updating metadata for the vscode IDE...
UserSideException: Processing esp32doit-devkit-v1 (platform: https://github.com/pioarduino/platform-espressif32/releases/download/54.03.20/platform-espressif32.zip; board: esp32doit-devkit-v1; framework: arduino, espidf)
--------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32doit-devkit-v1.html
PLATFORM: Espressif 32 (54.3.20) > DOIT ESP32 DEVKIT V1
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, 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)
PACKAGES:
- framework-arduinoespressif32 @ 3.2.0
- framework-arduinoespressif32-libs @ 5.4.0+sha.2f7dcd862a
- framework-espidf @ 3.50401.0 (5.4.1)
- tool-cmake @ 3.30.2
- tool-esptoolpy @ 4.8.9
- tool-mklittlefs @ 3.2.0
- tool-ninja @ 1.7.1
- tool-riscv32-esp-elf-gdb @ 14.2.0+20240403
- tool-xtensa-esp-elf-gdb @ 14.2.0+20240403
- toolchain-esp32ulp @ 1.23800.240113 (2.38.0)
- toolchain-xtensa-esp-elf @ 14.2.0+20241119
Installing Arduino Python dependencies
Collecting wheel>=0.35.1
Using cached wheel-0.45.1-py3-none-any.whl.metadata (2.3 kB)
Collecting rich-click>=1.8.6
Using cached rich_click-1.8.9-py3-none-any.whl.metadata (7.9 kB)
Collecting PyYAML>=6.0.2
Using cached PyYAML-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (2.1 kB)
Collecting intelhex>=2.3.0
Using cached intelhex-2.3.0-py2.py3-none-any.whl.metadata (2.7 kB)
Requirement already satisfied: click>=7 in /home/maxg/.platformio/penv/lib/python3.10/site-packages (from rich-click>=1.8.6) (8.1.7)
Collecting rich>=10.7 (from rich-click>=1.8.6)
Using cached rich-14.0.0-py3-none-any.whl.metadata (18 kB)
Requirement already satisfied: typing_extensions>=4 in /home/maxg/.platformio/penv/lib/python3.10/site-packages (from rich-click>=1.8.6) (4.14.0)
Collecting markdown-it-py>=2.2.0 (from rich>=10.7->rich-click>=1.8.6)
Using cached markdown_it_py-3.0.0-py3-none-any.whl.metadata (6.9 kB)
Collecting pygments<3.0.0,>=2.13.0 (from rich>=10.7->rich-click>=1.8.6)
Using cached pygments-2.19.1-py3-none-any.whl.metadata (2.5 kB)
Collecting mdurl~=0.1 (from markdown-it-py>=2.2.0->rich>=10.7->rich-click>=1.8.6)
Using cached mdurl-0.1.2-py3-none-any.whl.metadata (1.6 kB)
Using cached wheel-0.45.1-py3-none-any.whl (72 kB)
Using cached rich_click-1.8.9-py3-none-any.whl (36 kB)
Using cached PyYAML-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (751 kB)
Using cached intelhex-2.3.0-py2.py3-none-any.whl (50 kB)
Using cached rich-14.0.0-py3-none-any.whl (243 kB)
Using cached pygments-2.19.1-py3-none-any.whl (1.2 MB)
Using cached markdown_it_py-3.0.0-py3-none-any.whl (87 kB)
Using cached mdurl-0.1.2-py3-none-any.whl (10.0 kB)
Installing collected packages: intelhex, wheel, PyYAML, pygments, mdurl, markdown-it-py, rich, rich-click
Successfully installed PyYAML-6.0.2 intelhex-2.3.0 markdown-it-py-3.0.0 mdurl-0.1.2 pygments-2.19.1 rich-14.0.0 rich-click-1.8.9 wheel-0.45.1
Creating a new virtual environment for IDF Python dependencies
Installing ESP-IDF's Python dependencies
Collecting wheel>=0.35.1
Using cached wheel-0.45.1-py3-none-any.whl (72 kB)
Collecting urllib3<2
Using cached urllib3-1.26.20-py2.py3-none-any.whl (144 kB)
Collecting cryptography~=41.0.1
Using cached cryptography-41.0.7-cp37-abi3-manylinux_2_28_x86_64.whl (4.4 MB)
Collecting future>=0.18.3
Using cached future-1.0.0-py3-none-any.whl (491 kB)
Collecting pyparsing<4,>=3.1.0
Using cached pyparsing-3.2.3-py3-none-any.whl (111 kB)
Collecting idf-component-manager~=2.0.1
Using cached idf_component_manager-2.0.4-py3-none-any.whl (151 kB)
Collecting esp-idf-kconfig>=2.5.0
Using cached esp_idf_kconfig-3.0.0-py3-none-any.whl (153 kB)
Collecting cffi>=1.12
Using cached cffi-1.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (446 kB)
Collecting requests-file
Using cached requests_file-2.1.0-py2.py3-none-any.whl (4.2 kB)
Collecting pydantic-settings
Using cached pydantic_settings-2.9.1-py3-none-any.whl (44 kB)
Collecting tqdm
Using cached tqdm-4.67.1-py3-none-any.whl (78 kB)
Collecting requests
Using cached requests-2.32.3-py3-none-any.whl (64 kB)
Collecting requests-toolbelt
Using cached requests_toolbelt-1.0.0-py2.py3-none-any.whl (54 kB)
Collecting pydantic
Using cached pydantic-2.11.5-py3-none-any.whl (444 kB)
Collecting pydantic-core
Using cached pydantic_core-2.34.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB)
Collecting colorama
Using cached colorama-0.4.6-py2.py3-none-any.whl (25 kB)
Collecting typing-extensions
Using cached typing_extensions-4.14.0-py3-none-any.whl (43 kB)
Collecting pyyaml
Using cached PyYAML-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (751 kB)
Collecting jsonref
Using cached jsonref-1.1.0-py3-none-any.whl (9.4 kB)
Collecting click
Using cached click-8.2.1-py3-none-any.whl (102 kB)
Collecting pycparser
Using cached pycparser-2.22-py3-none-any.whl (117 kB)
Collecting annotated-types>=0.6.0
Using cached annotated_types-0.7.0-py3-none-any.whl (13 kB)
Collecting pydantic-core
Using cached pydantic_core-2.33.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB)
Collecting typing-inspection>=0.4.0
Using cached typing_inspection-0.4.1-py3-none-any.whl (14 kB)
Collecting python-dotenv>=0.21.0
Using cached python_dotenv-1.1.0-py3-none-any.whl (20 kB)
Collecting idna<4,>=2.5
Using cached idna-3.10-py3-none-any.whl (70 kB)
Collecting certifi>=2017.4.17
Using cached certifi-2025.4.26-py3-none-any.whl (159 kB)
Collecting charset-normalizer<4,>=2
Using cached charset_normalizer-3.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (149 kB)
Installing collected packages: wheel, urllib3, typing-extensions, tqdm, pyyaml, python-dotenv, pyparsing, pycparser, jsonref, idna, future, esp-idf-kconfig, colorama, click, charset-normalizer, certifi, annotated-types, typing-inspection, requests, pydantic-core, cffi, requests-toolbelt, requests-file, pydantic, cryptography, pydantic-settings, idf-component-manager
Successfully installed annotated-types-0.7.0 certifi-2025.4.26 cffi-1.17.1 charset-normalizer-3.4.2 click-8.2.1 colorama-0.4.6 cryptography-41.0.7 esp-idf-kconfig-3.0.0 future-1.0.0 idf-component-manager-2.0.4 idna-3.10 jsonref-1.1.0 pycparser-2.22 pydantic-2.11.5 pydantic-core-2.33.2 pydantic-settings-2.9.1 pyparsing-3.2.3 python-dotenv-1.1.0 pyyaml-6.0.2 requests-2.32.3 requests-file-2.1.0 requests-toolbelt-1.0.0 tqdm-4.67.1 typing-extensions-4.14.0 typing-inspection-0.4.1 urllib3-1.26.20 wheel-0.45.1
Warning! Arduino framework as an ESP-IDF component doesn't handle the `variant` field! The default `esp32` variant will be used.
Reading CMake configuration...
-- git rev-parse returned 'fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).'
-- Building ESP-IDF components for target esp32
NOTICE: Skipping optional dependency: espressif/esp-sr
NOTICE: Skipping optional dependency: espressif/esp_hosted
NOTICE: Skipping optional dependency: espressif/esp_wifi_remote
NOTICE: Skipping optional dependency: espressif/esp-sr
NOTICE: Skipping optional dependency: espressif/esp_hosted
NOTICE: Skipping optional dependency: espressif/esp_wifi_remote
NOTICE: Skipping optional dependency: espressif/esp-sr
NOTICE: Skipping optional dependency: espressif/esp_hosted
NOTICE: Skipping optional dependency: espressif/esp_wifi_remote
NOTICE:
Following dependencies have new versions available:
Dependency "espressif/esp-dsp": "1.4.12" -> "1.6.4"
Dependency "espressif/esp_modem": "1.1.0" -> "1.4.0"
Dependency "joltwallet/littlefs": "1.14.5" -> "1.20.0"
Consider running "idf.py update-dependencies" to update your lock file.
Processing 25 dependencies:
[1/25] chmorgan/esp-libhelix-mp3 (1.0.3)
[2/25] espressif/cbor (0.6.0~1)
[3/25] espressif/esp-dsp (1.4.12)
[4/25] espressif/esp-modbus (1.0.18)
[5/25] espressif/esp-serial-flasher (0.0.11)
[6/25] espressif/esp-zboss-lib (1.6.3)
[7/25] espressif/esp-zigbee-lib (1.6.3)
[8/25] espressif/esp_diag_data_store (1.0.2)
[9/25] espressif/esp_diagnostics (1.2.1)
[10/25] espressif/esp_insights (1.2.2)
[11/25] espressif/esp_modem (1.1.0)
[12/25] espressif/esp_rainmaker (1.5.2)
[13/25] espressif/esp_rcp_update (1.2.0)
[14/25] espressif/esp_schedule (1.2.0)
[15/25] espressif/esp_secure_cert_mgr (2.5.0)
[16/25] espressif/jsmn (1.1.0)
[17/25] espressif/json_generator (1.1.2)
[18/25] espressif/json_parser (1.0.3)
[19/25] espressif/libsodium (1.0.20~2)
[20/25] espressif/mdns (1.8.2)
[21/25] espressif/network_provisioning (1.0.2)
[22/25] espressif/qrcode (0.1.0~2)
[23/25] espressif/rmaker_common (1.4.6)
[24/25] joltwallet/littlefs (1.14.5)
[25/25] idf (5.4.1)
-- DEBUG: Use esp-modbus component folder: /home/maxg/Workspaces/PlatformIO/Projects/EGO_Automation/managed_components/espressif__esp-modbus.
NOTICE: Skipping optional dependency: espressif/esp-sr
NOTICE: Skipping optional dependency: espressif/esp_hosted
NOTICE: Skipping optional dependency: espressif/esp_wifi_remote
-- Project sdkconfig file /home/maxg/Workspaces/PlatformIO/Projects/EGO_Automation/sdkconfig.esp32doit-devkit-v1
-- Configuring incomplete, errors occurred!
fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
Traceback (most recent call last):
File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
exec(code, run_globals)
File "/home/maxg/.platformio/penv/.espidf-5.4.1/lib/python3.10/site-packages/kconfgen/__main__.py", line 5, in <module>
from .core import main
File "/home/maxg/.platformio/penv/.espidf-5.4.1/lib/python3.10/site-packages/kconfgen/core.py", line 29, in <module>
import esp_idf_kconfig.gen_kconfig_doc as gen_kconfig_doc
File "/home/maxg/.platformio/penv/.espidf-5.4.1/lib/python3.10/site-packages/esp_idf_kconfig/gen_kconfig_doc.py", line 14, in <module>
import kconfiglib.core as kconfiglib
File "/home/maxg/.platformio/penv/.espidf-5.4.1/lib/python3.10/site-packages/kconfiglib/__init__.py", line 3, in <module>
from .core import Kconfig # noqa F401
File "/home/maxg/.platformio/penv/.espidf-5.4.1/lib/python3.10/site-packages/kconfiglib/core.py", line 27, in <module>
from kconfiglib.report import PRAGMA_PREFIX
File "/home/maxg/.platformio/penv/.espidf-5.4.1/lib/python3.10/site-packages/kconfiglib/report.py", line 29, in <module>
from rich import print as rprint
ModuleNotFoundError: No module named 'rich'
CMake Error at /home/maxg/.platformio/packages/framework-espidf/tools/cmake/kconfig.cmake:209 (message):
Failed to run kconfgen
(/home/maxg/.platformio/penv/.espidf-5.4.1/bin/python;-m;kconfgen;--list-separator=semicolon;--kconfig;/home/maxg/.platformio/packages/framework-espidf/Kconfig;--sdkconfig-rename;/home/maxg/.platformio/packages/framework-espidf/sdkconfig.rename;--config;/home/maxg/Workspaces/PlatformIO/Projects/EGO_Automation/sdkconfig.esp32doit-devkit-v1;--defaults;/home/maxg/Workspaces/PlatformIO/Projects/EGO_Automation/sdkconfig.defaults;--env-file;/home/maxg/Workspaces/PlatformIO/Projects/EGO_Automation/.pio/build/esp32doit-devkit-v1/config.env).
Error 1
Call Stack (most recent call first):
/home/maxg/.platformio/packages/framework-espidf/tools/cmake/build.cmake:681 (__kconfig_generate_config)
/home/maxg/.platformio/packages/framework-espidf/tools/cmake/project.cmake:717 (idf_build_process)
CMakeLists.txt:3 (project)
========================= [FAILED] Took 69.87 seconds =========================