-
Notifications
You must be signed in to change notification settings - Fork 61
Description
PROBLEM DESCRIPTION
Installation issues on macOS persist.
TO REPRODUCE
Am trying to remove completely use of the PlatformIO extension, in favour of solely using pioarduino.
Before starting, performed all the steps in my comment here: #235 (comment)
Then installed the pioarduino extension from within VSCode.
Then opened the sketch below, and selected as the environment: [env:piostable]
EXPECTED BEHAVIOUR
Expected the extension to install the ESP32 toolchain. Instead the pioarduino extension threw the following errors:
%23 Description of problem
Leave a comment...
BEFORE SUBMITTING, PLEASE SEARCH FOR DUPLICATES IN
- https://github.com/pioarduino/pioarduino-vscode-ide/issues%3Fq=is%3Aissue
%23 Configuration
VSCode: 1.104.3
PIO IDE: v1.1.0
System: Darwin, 24.6.0, x64
%23 Exception
Error: PlatformioException: Invalid path to PIO Home Contrib
at /Users/xylo/.vscode/extensions/pioarduino.pioarduino-ide-1.1.0/node_modules/pioarduino-node-helpers/dist/index.js:1:10765
at ChildProcess.f (/Users/xylo/.vscode/extensions/pioarduino.pioarduino-ide-1.1.0/node_modules/pioarduino-node-helpers/dist/index.js:1:4399)
at ChildProcess.emit (node:events:518:28)
at ChildProcess.emit (node:domain:489:12)
at maybeClose (node:internal/child_process:1101:16)
at Socket.<anonymous> (node:internal/child_process:456:11)
at Socket.emit (node:events:518:28)
at Socket.emit (node:domain:489:12)
at Pipe.<anonymous> (node:net:346:12)
Message returned after selecting the environment in VSCode:
Verbose mode can be enabled via `-v, --verbose` option
Error: 'tool-esptoolpy' package directory not found: ''
========================== [FAILED] Took 2.04 seconds ==========================
Environment Status Duration
------------- -------- ------------
piostable FAILED 00:00:02.045
==================== 1 failed, 0 succeeded in 00:00:02.045 ====================
Error returned after selecting the pio321
environment:
Resolving pio321 dependencies...
Platform Manager: Installing https://github.com/pioarduino/platform-espressif32/releases/download/54.03.21-2/platform-espressif32.zip
Downloading 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Unpacking 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Platform Manager: [email protected] has been installed!
AttributeError: Traceback (most recent call last):
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/platformio/__main__.py", line 103, in main
cli() # pylint: disable=no-value-for-parameter
~~~^^
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/click/core.py", line 1157, in __call__
return self.main(*args, **kwargs)
~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/click/core.py", line 1078, in main
rv = self.invoke(ctx)
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/platformio/cli.py", line 85, in invoke
return super().invoke(ctx)
~~~~~~~~~~~~~~^^^^^
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/click/core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/click/core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/click/core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/click/core.py", line 783, in invoke
return __callback(*args, **kwargs)
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/platformio/project/commands/init.py", line 106, in project_init_cmd
install_project_dependencies(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
options=dict(
^^^^^^^^^^^^^
...<3 lines>...
)
^
)
^
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/platformio/package/commands/install.py", line 107, in install_project_dependencies
already_up_to_date = not install_project_env_dependencies(env, options)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/platformio/package/commands/install.py", line 132, in install_project_env_dependencies
_install_project_env_platform(project_env, options),
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/platformio/package/commands/install.py", line 149, in _install_project_env_platform
PlatformPackageManager().install(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
spec,
^^^^^
...<3 lines>...
force=options.get("force"),
^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/platformio/package/manager/platform.py", line 52, in install
p = PlatformFactory.new(pkg)
File "/Users/xylo/.platformio/penv/lib/python3.13/site-packages/platformio/platform/factory.py", line 79, in new
platform_cls = getattr(
cls.load_platform_module(
...<2 lines>...
cls.get_clsname(platform_name),
)
AttributeError: module 'platformio.platform.platform' has no attribute 'PlatformPlatform'
============================================================
An unexpected error occurred. Further steps:
* Verify that you have the latest version of PlatformIO using
`python -m pip install -U platformio` command
* Try to find answer in FAQ Troubleshooting section
https://docs.platformio.org/page/faq/index.html
* Report this problem to the developers
https://github.com/platformio/platformio-core/issues
============================================================
SCREENSHOTS
If applicable, add screenshots to help explain your problem.
ADDITIONAL CONTEXT
System info:
Device: iMac, Retina 5K, 27-inch, 2020
Processor: 3.8 GHz 8-Core Intel Core i7
Memory: 128 GB 2400 MHz DDR4
macOS: 15.7.1 (24G231)
VSCode:
Version: 1.104.3
Commit: 385651c938df8a906869babee516bffd0ddb9829
Date: 2025-10-02T12:30:51.747Z
Electron: 37.3.1
ElectronBuildId: 12404162
Chromium: 138.0.7204.235
Node.js: 22.18.0
V8: 13.8.258.31-electron.0
OS: Darwin x64 24.6.0
main.cpp
file:
// Testing fresh install of pioarduino with a mix of Arduino and esp32 boards.
#include <Arduino.h>
// put function declarations here:
int myFunction( int, int );
void setup() {
// put your setup code here, to run once:
Serial.println( " Here we go..." );
delay ( 2000 );
}
void loop() {
// put your main code here, to run repeatedly:
for ( int i = 0; i < 100; i++ ) {
for ( int j = 0; j < 100; j++ ) {
Serial.println( myFunction( i, j ) );
delay( 750 );
}
Serial.println( "End of the \"j\" loop. Incrementing \"i\" and repeating..." );
}
Serial.println( "End of the loops - restarting..." );
}
// put function definitions here:
int myFunction( int x, int y ) {
return ( x + y );
}
platformio.ini
file:
; PlatformIO Project Configuration File
[env:arduinoNano]
platform = atmelavr
board = nanoatmega328new
framework = arduino
monitor_speed = 9600
[env:esp32base]
board = esp32dev
framework = arduino
monitor_speed = 115200
[env:piostable]
extends = esp32base
platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip
[env:pio307]
extends = esp32base
platform = https://github.com/pioarduino/platform-espressif32/releases/download/51.03.07/platform-espressif32.zip
[env:pio321]
extends = esp32base
platform = https://github.com/pioarduino/platform-espressif32/releases/download/54.03.21-2/platform-espressif32.zip
Python installation:
~ % which python
python: aliased to python3
~ % which python3
/usr/local/bin/python3
~ % python --version
Python 3.13.7
FWIW, selecting env:arduinoNano
works fine.
Be glad to provide any other info.