Building for nodemcu32 failt

Hi,
I’m facing a problem building esp32 firmware. Building to esp8266 is working fine.
It looks like unpacking starts until 6% and stops in the error below.

Warning! Ignore unknown configuration option `version` in section [env]
Processing nodemcu_32 (platform: https://github.com/pioarduino/platform-espressif32/releases/download/53.03.10-rc3/platform-espressif32.zip; board: nodemcu-32s; framework: arduino)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------Tool Manager: Installing https://github.com/espressif/esp32-arduino-lib-builder/releases/download/idf-release_v5.3/esp32-arduino-libs-idf-release_v5.3-a0f798cf.zipUnpacking  [##----------------------------------]    6%  00:01:18
Unpacking...
FileNotFoundError: Traceback (most recent call last):
  File "C:\Users\joop\.platformio\penv\Lib\site-packages\platformio\package\manager\_install.py", line 37, in unpack
    return fu.unpack(dst, with_progress=with_progress)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Thanks for your help.

Can you clear the cache and build again? Maybe it’s just a corrupted download.

Delete C:\Users\<user>\.platformio\.cache.

Result is still the same.

What is the exact platformio.ini here?


[platformio]
;extra_configs = secrets.ini
extra_configs = secrets.default.ini
core_dir = .pio

[env]
version = 1.5.0
framework = arduino
lib_deps = 
	bblanchon/ArduinoJson@^7.1.0
	;ihormelnyk/OpenTherm Library@^1.1.5
	https://github.com/ihormelnyk/opentherm_library#master
	;arduino-libraries/ArduinoMqttClient@^0.1.8
	https://github.com/Laxilef/ArduinoMqttClient.git#esp32_core_310
	lennarthennigs/ESP Telnet@^2.2
	gyverlibs/FileData@^1.0.2
	gyverlibs/GyverPID@^3.3.2
	gyverlibs/GyverBlinker@^1.1.1
	https://github.com/pstolarz/Arduino-Temperature-Control-Library.git#OneWireNg
	laxilef/TinyLogger@^1.1.1
build_type = ${secrets.build_type}
build_flags = 
	-mtext-section-literals
	-D MQTT_CLIENT_STD_FUNCTION_CALLBACK=1
	;-D DEBUG_ESP_CORE -D DEBUG_ESP_WIFI -D DEBUG_ESP_HTTP_SERVER -D DEBUG_ESP_PORT=Serial
	-D BUILD_VERSION='"${this.version}"'
	-D BUILD_ENV='"$PIOENV"'
	-D DEFAULT_SERIAL_ENABLED=${secrets.serial_enabled}
	-D DEFAULT_SERIAL_BAUD=${secrets.serial_baud}
	-D DEFAULT_TELNET_ENABLED=${secrets.telnet_enabled}
	-D DEFAULT_TELNET_PORT=${secrets.telnet_port}
	-D DEFAULT_LOG_LEVEL=${secrets.log_level}
	-D DEFAULT_HOSTNAME='"${secrets.hostname}"'
	-D DEFAULT_AP_SSID='"${secrets.ap_ssid}"'
	-D DEFAULT_AP_PASSWORD='"${secrets.ap_password}"'
	-D DEFAULT_STA_SSID='"${secrets.sta_ssid}"'
	-D DEFAULT_STA_PASSWORD='"${secrets.sta_password}"'
	-D DEFAULT_PORTAL_LOGIN='"${secrets.portal_login}"'
	-D DEFAULT_PORTAL_PASSWORD='"${secrets.portal_password}"'
	-D DEFAULT_MQTT_ENABLED=${secrets.mqtt_enabled}
	-D DEFAULT_MQTT_SERVER='"${secrets.mqtt_server}"'
	-D DEFAULT_MQTT_PORT=${secrets.mqtt_port}
	-D DEFAULT_MQTT_USER='"${secrets.mqtt_user}"'
	-D DEFAULT_MQTT_PASSWORD='"${secrets.mqtt_password}"'
	-D DEFAULT_MQTT_PREFIX='"${secrets.mqtt_prefix}"'
upload_speed = 921600
monitor_speed = 115200
;monitor_filters = direct
monitor_filters = 
	esp32_exception_decoder
	esp8266_exception_decoder
board_build.flash_mode = dio
board_build.filesystem = littlefs

; Defaults
[esp8266_defaults]
platform = espressif8266@^4.2.1
lib_deps = 
	${env.lib_deps}
	nrwiersma/ESP8266Scheduler@^1.2
lib_ignore = 
extra_scripts = 
	post:tools/build.py
build_type = ${env.build_type}
build_flags = 
	${env.build_flags}
	-D PIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY
	;-D PIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH
	-D PIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK305
board_build.ldscript = eagle.flash.4m1m.ld

[esp32_defaults]
;platform = espressif32@^6.7
;platform = https://github.com/platformio/platform-espressif32.git
;platform_packages = 
;  framework-arduinoespressif32 @ https://github.com/espressif/arduino-esp32.git#3.0.5
;  framework-arduinoespressif32-libs @ https://github.com/espressif/esp32-arduino-lib-builder/releases/download/idf-release_v5.1/esp32-arduino-libs-idf-release_v5.1-33fbade6.zip
platform = https://github.com/pioarduino/platform-espressif32/releases/download/53.03.10-rc3/platform-espressif32.zip
platform_packages =
board_build.partitions = esp32_partitions.csv
lib_deps =
	${env.lib_deps}
	laxilef/ESP32Scheduler@^1.0.1
nimble_lib = h2zero/NimBLE-Arduino@^1.4.2
lib_ignore = 
extra_scripts = 
	post:tools/esp32.py
	post:tools/build.py
build_type = ${env.build_type}
build_flags = 
	${env.build_flags}
	-D CORE_DEBUG_LEVEL=0
	-Wl,--wrap=esp_panic_handler


; Boards
[env:d1_mini]
platform = ${esp8266_defaults.platform}
board = d1_mini
lib_deps = ${esp8266_defaults.lib_deps}
lib_ignore = ${esp8266_defaults.lib_ignore}
extra_scripts = ${esp8266_defaults.extra_scripts}
board_build.ldscript = ${esp8266_defaults.board_build.ldscript}
build_type = ${esp8266_defaults.build_type}
build_flags = 
	${esp8266_defaults.build_flags}
	-D DEFAULT_OT_IN_GPIO=4
	-D DEFAULT_OT_OUT_GPIO=5
	-D DEFAULT_SENSOR_OUTDOOR_GPIO=12
	-D DEFAULT_SENSOR_INDOOR_GPIO=14
	-D DEFAULT_STATUS_LED_GPIO=13
	-D DEFAULT_OT_RX_LED_GPIO=15

[env:d1_mini_lite]
platform = ${esp8266_defaults.platform}
board = d1_mini_lite
lib_deps = ${esp8266_defaults.lib_deps}
lib_ignore = ${esp8266_defaults.lib_ignore}
extra_scripts = ${esp8266_defaults.extra_scripts}
board_build.ldscript = ${esp8266_defaults.board_build.ldscript}
build_type = ${esp8266_defaults.build_type}
build_flags = 
	${esp8266_defaults.build_flags}
	-D DEFAULT_OT_IN_GPIO=4
	-D DEFAULT_OT_OUT_GPIO=5
	-D DEFAULT_SENSOR_OUTDOOR_GPIO=12
	-D DEFAULT_SENSOR_INDOOR_GPIO=14
	-D DEFAULT_STATUS_LED_GPIO=13
	-D DEFAULT_OT_RX_LED_GPIO=15

[env:d1_mini_pro]
platform = ${esp8266_defaults.platform}
board = d1_mini_pro
lib_deps = ${esp8266_defaults.lib_deps}
lib_ignore = ${esp8266_defaults.lib_ignore}
extra_scripts = ${esp8266_defaults.extra_scripts}
board_build.ldscript = ${esp8266_defaults.board_build.ldscript}
build_type = ${esp8266_defaults.build_type}
build_flags = 
	${esp8266_defaults.build_flags}
	-D DEFAULT_OT_IN_GPIO=4
	-D DEFAULT_OT_OUT_GPIO=5
	-D DEFAULT_SENSOR_OUTDOOR_GPIO=12
	-D DEFAULT_SENSOR_INDOOR_GPIO=14
	-D DEFAULT_STATUS_LED_GPIO=13
	-D DEFAULT_OT_RX_LED_GPIO=15

[env:nodemcu_8266]
platform = ${esp8266_defaults.platform}
board = nodemcuv2
lib_deps = ${esp8266_defaults.lib_deps}
lib_ignore = ${esp8266_defaults.lib_ignore}
extra_scripts = ${esp8266_defaults.extra_scripts}
board_build.ldscript = ${esp8266_defaults.board_build.ldscript}
build_type = ${esp8266_defaults.build_type}
build_flags = 
	${esp8266_defaults.build_flags}
	-D DEFAULT_OT_IN_GPIO=13
	-D DEFAULT_OT_OUT_GPIO=15
	-D DEFAULT_SENSOR_OUTDOOR_GPIO=12
	-D DEFAULT_SENSOR_INDOOR_GPIO=4
	-D DEFAULT_STATUS_LED_GPIO=2
	-D DEFAULT_OT_RX_LED_GPIO=16

[env:s2_mini]
platform = ${esp32_defaults.platform}
platform_packages = ${esp32_defaults.platform_packages}
board = lolin_s2_mini
board_build.partitions = ${esp32_defaults.board_build.partitions}
lib_deps = ${esp32_defaults.lib_deps}
lib_ignore = ${esp32_defaults.lib_ignore}
extra_scripts = ${esp32_defaults.extra_scripts}
build_unflags =
	-DARDUINO_USB_MODE=1
build_type = ${esp32_defaults.build_type}
build_flags = 
	${esp32_defaults.build_flags}
	-D ARDUINO_USB_MODE=0
	-D ARDUINO_USB_CDC_ON_BOOT=1
	-D DEFAULT_OT_IN_GPIO=33
	-D DEFAULT_OT_OUT_GPIO=35
	-D DEFAULT_SENSOR_OUTDOOR_GPIO=9
	-D DEFAULT_SENSOR_INDOOR_GPIO=7
	-D DEFAULT_STATUS_LED_GPIO=11
	-D DEFAULT_OT_RX_LED_GPIO=12

[env:s3_mini] 
platform = ${esp32_defaults.platform}
platform_packages = ${esp32_defaults.platform_packages}
board = lolin_s3_mini
board_build.partitions = ${esp32_defaults.board_build.partitions}
lib_deps = 
	${esp32_defaults.lib_deps}
	${esp32_defaults.nimble_lib}
lib_ignore = ${esp32_defaults.lib_ignore}
extra_scripts = ${esp32_defaults.extra_scripts}
build_unflags =
	-DARDUINO_USB_MODE=1
build_type = ${esp32_defaults.build_type}
build_flags = 
	${esp32_defaults.build_flags}
	-D ARDUINO_USB_MODE=0
	-D ARDUINO_USB_CDC_ON_BOOT=1
	-D USE_BLE=1
	-D DEFAULT_OT_IN_GPIO=35
	-D DEFAULT_OT_OUT_GPIO=36
	-D DEFAULT_SENSOR_OUTDOOR_GPIO=13
	-D DEFAULT_SENSOR_INDOOR_GPIO=12
	-D DEFAULT_STATUS_LED_GPIO=11
	-D DEFAULT_OT_RX_LED_GPIO=10

[env:c3_mini] 
platform = ${esp32_defaults.platform}
platform_packages = ${esp32_defaults.platform_packages}
board = lolin_c3_mini
board_build.partitions = ${esp32_defaults.board_build.partitions}
lib_deps = 
	${esp32_defaults.lib_deps}
	${esp32_defaults.nimble_lib}
lib_ignore = ${esp32_defaults.lib_ignore}
extra_scripts = ${esp32_defaults.extra_scripts}
build_unflags = 
	-mtext-section-literals
build_type = ${esp32_defaults.build_type}
build_flags = 
	${esp32_defaults.build_flags}
	-D USE_BLE=1
	-D DEFAULT_OT_IN_GPIO=8
	-D DEFAULT_OT_OUT_GPIO=10
	-D DEFAULT_SENSOR_OUTDOOR_GPIO=0
	-D DEFAULT_SENSOR_INDOOR_GPIO=1
	-D DEFAULT_STATUS_LED_GPIO=4
	-D DEFAULT_OT_RX_LED_GPIO=5

[env:nodemcu_32]
platform = ${esp32_defaults.platform}
platform_packages = ${esp32_defaults.platform_packages}
board = nodemcu-32s
board_build.partitions = ${esp32_defaults.board_build.partitions}
lib_deps = 
	${esp32_defaults.lib_deps}
	${esp32_defaults.nimble_lib}
lib_ignore = ${esp32_defaults.lib_ignore}
extra_scripts = ${esp32_defaults.extra_scripts}
build_type = ${esp32_defaults.build_type}
build_flags = 
	${esp32_defaults.build_flags}
	-D USE_BLE=1
	-D DEFAULT_OT_IN_GPIO=16
	-D DEFAULT_OT_OUT_GPIO=4
	-D DEFAULT_SENSOR_OUTDOOR_GPIO=15
	-D DEFAULT_SENSOR_INDOOR_GPIO=26
	-D DEFAULT_STATUS_LED_GPIO=2
	-D DEFAULT_OT_RX_LED_GPIO=19

[env:d1_mini32]
platform = ${esp32_defaults.platform}
platform_packages = ${esp32_defaults.platform_packages}
board = wemos_d1_mini32
board_build.partitions = ${esp32_defaults.board_build.partitions}
lib_deps = 
	${esp32_defaults.lib_deps}
	${esp32_defaults.nimble_lib}
lib_ignore = ${esp32_defaults.lib_ignore}
extra_scripts = ${esp32_defaults.extra_scripts}
build_type = ${esp32_defaults.build_type}
build_flags = 
	${esp32_defaults.build_flags}
	-D USE_BLE=1
	-D DEFAULT_OT_IN_GPIO=21
	-D DEFAULT_OT_OUT_GPIO=22
	-D DEFAULT_SENSOR_OUTDOOR_GPIO=12
	-D DEFAULT_SENSOR_INDOOR_GPIO=18
	-D DEFAULT_STATUS_LED_GPIO=2
	-D DEFAULT_OT_RX_LED_GPIO=19

[env:esp32_c6]
platform = ${esp32_defaults.platform}
platform_packages = ${esp32_defaults.platform_packages}
board = esp32-c6-devkitm-1
board_build.partitions = ${esp32_defaults.board_build.partitions}
lib_deps = 
	${esp32_defaults.lib_deps}
	;${esp32_defaults.nimble_lib}
lib_ignore = ${esp32_defaults.lib_ignore}
extra_scripts = ${esp32_defaults.extra_scripts}
build_unflags = 
	-mtext-section-literals
build_type = ${esp32_defaults.build_type}
build_flags = 
	${esp32_defaults.build_flags}
	; Currently the NimBLE library is incompatible with ESP32 C6
	;-D USE_BLE=1

o_O What? You’re redirecting the entire PlatformIO core directory to .pio? That’s gonna blow up pretty badly. It’s usually in C:\Users\<user>\.platformio. You should not change that in a project unless you have an extremely good reason. Settig it to .pio will especially conflict with the regular settings for the build directory (.pio\build) and lib deps directory .pio\libdeps.

Can you delete that line and retry?

MissingPackageManifestError: Could not find one of 'package.json' manifest files in the package

I cannot reproduce that error with your platformio.ini. https://github.com/maxgerhardt/pio-repro-weird-repo builds fine for me. The package.json in the project does not seem to be a problem.

Maybe the problem lies in one of the extra_scripts which you didn’t show.

I found this project on github but I think I do not have the experience to solve this.

Deleted everything and started compleetly new…
removed this line from platfomio.ini
core_dir = .pio
After that building is OK.
After upload I have to upload littlefs
after_buildfs([“buildfs”], [“.pio\build\nodemcu_32\littlefs.bin”])
Copying ‘C:\Users\joop\Documents\PlatformIO\Projects\OTGateway.pio\build\nodemcu_32\littlefs.bin’ to ‘C:\Users\joop\Documents\PlatformIO\Projects\OTGateway\build\filesystem_nodemcu_32_1.5.0.bin’
How can I do that?

There’s a project task for that