-
-
Notifications
You must be signed in to change notification settings - Fork 445
No ports reported on macos ventura 13.1 apple silicon arduino 2.0.3 unless rosetta is installed #1818
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
No ports reported on macos ventura 13.1 apple silicon arduino 2.0.3 unless rosetta is installed #1818
Comments
I've also played with System Settings (macos) > Privacy & Security > Allow Accessories to Connect. For "Ask Every Time" I do get a promt each time I plug in my device. If I accept then open Arduino IDE it makes no difference. The option "Always" doesn't seem to make a difference either. |
Ok, so we were able to resolve the forum thread (at least my issue). So it looks like if you run a binary compiled for x86_64-apple-darwin on apple silicon which expects aarch64-apple-darwin (err, maybe aarch64e, which is their own ABI for BTI/PAC IIRC), then you will not get a prompt to install rosetta. You need to manually install rosetta, which can be done from the command line via So I guess it's a matter of contacting expressif or whomever to provide cross compilers for aarch64e-apple-darwin hosts in their board manager files. Not sure how pervasive this is, but perhaps the arduino ide could trigger the rosetta install for the time being? That would have been nice. |
Sorry, it's |
Not sure where the source for arduino-ide/electron-app/package.json Line 24 in 197cea2
https://www.npmjs.com/search?q=arduino-ide-extension |
(The forum is blocking me from responding on thread: Perhaps if the Arduino IDE is looking at stderr of the subprocesses it invokes, it might be able to notice the
I've also "contacted my vendor" to ask about macos support. |
Looks like a dup of #1796. |
Very much looking forward to a resolution for this issue. |
@army11b1980 resolve the issue by installing Rosetta 2:
The error will no longer occur. |
@per1234 I have Rosetta 2 installed. I still have this error. |
@army11b1980 please post the full and exact output that contains the "Bad CPU Type" error. |
@per1234 |
OK, this is a completely different problem that happens to produce the same error message. The problem here is you are using a very old version of AVRDUDE from when Arduino only distributed 32-bit macOS builds of that tool. Support for 32-bit applications was dropped in macOS 10.15 Catalina: https://support.apple.com/en-us/HT208436 So when you attempt to run a 32-bit application you get this " Since your problem is unrelated to the subject of this bug report, and is also not related to the codebase hosted in this repository, it will not be appropriate to continue the discussion here. But if you make a post on the Arduino Forum, I'll be happy to provide you with assistance in solving the problem: https://forum.arduino.cc/c/using-arduino/installation-troubleshooting/18 |
Closing as resolved to the extent that is feasible through the addition of a dedicated article in the Arduino Help Center: https://support.arduino.cc/hc/en-us/articles/7765785712156-Error-bad-CPU-type-in-executable-on-macOS I have been closely monitoring GitHub and Arduino Forum for reports and fortunately it seems to not affect many users. So hopefully that will be sufficient. I also hope that Apple might eventually enhance the user experience under these conditions with something similar to the Rosetta installation offer dialog that shows when starting an x86 application. |
Describe the problem
Apple Silicon-based machines (M1, M2 CPUs) are able to run applications built for x86 host thanks to the Rosetta 2 binary translator.
Rosetta 2 is not installed by default, but when an x86 application is started on an Apple Silicon-based machine, macOS displays a dialog offering the installation to the user:
https://support.apple.com/en-us/HT211861
Since native Apple Silicon builds have better performance, Arduino produced the first Arduino IDE 2.x build for this target and published it in December. Unlike the x86 build of Arduino IDE 2.x, starting the Apple Silicon build does not result in the Rosetta 2 installation dialog. Even though Rosetta 2 is not needed by the Arduino IDE application itself, the IDE uses a wide array of additional tools. Many of these are not available in an Apple Silicon build:
🐛 These tools produce an error when Arduino IDE attempts to execute them:
This produces an array of symptoms. For example, no serial ports are discovered (due to not having a functional serial-discovery tool).
To reproduce
https://www.arduino.cc/en/software
🐛 No Rosetta 2 installation prompt is shown.
🐛 All x86 targeted tools fail to execute.
🐛 The IDE displays a variety of symptoms, including no ports listed, failed compilation ...
Expected behavior
The dependency on Rosetta 2 is communicated to the user.
Arduino IDE version
2.0.3
Operating system
macOS
Operating system version
Ventura
Additional context
Fix
Additional reports
Issue checklist
The text was updated successfully, but these errors were encountered: