Certificate Error Installing PlatformIO on macOS ARM64 (M3)

Hi!

I’m looking to install and use the PlatformIO IDE VSCode extension on my M3 MacBook.

Upon doing so, I get what appear to be SSL certificate errors, and I’m unable to open PlatformIO Home:

  ERR [Extension Host] RequestError: write EPROTO 1219782779200:error:100000f7:SSL routines:OPENSSL_internal:WRONG_VERSION_NUMBER:../../third_party/boringssl/src/ssl/tls_record.cc:231:

	at ClientRequest.<anonymous> (/Users/dj/.vscode/extensions/platformio.platformio-ide-3.3.3-darwin-arm64/node_modules/got/dist/source/core/index.js:970:111)
	at Object.onceWrapper (node:events:634:26)
	at ClientRequest.emit (node:events:531:35)
	at ClientRequest.emit (node:domain:488:12)
	at origin.emit (/Users/dj/.vscode/extensions/platformio.platformio-ide-3.3.3-darwin-arm64/node_modules/@szmarczak/http-timer/dist/source/index.js:43:20)
	at TLSSocket.socketErrorListener (node:_http_client:500:9)
	at TLSSocket.emit (node:events:519:28)
	at TLSSocket.emit (node:domain:488:12)
	at emitErrorNT (node:internal/streams/destroy:169:8)
	at emitErrorCloseNT (node:internal/streams/destroy:128:3)
	at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
	at WriteWrap.onWriteComplete [as oncomplete] (node:internal/stream_base_commons:95:16)

  ERR [Extension Host] RequestError: unable to get local issuer certificate
	at ClientRequest.<anonymous> (/Users/dj/.vscode/extensions/platformio.platformio-ide-3.3.3-darwin-arm64/node_modules/got/dist/source/core/index.js:970:111)
	at Object.onceWrapper (node:events:634:26)
	at ClientRequest.emit (node:events:531:35)
	at ClientRequest.emit (node:domain:488:12)
	at origin.emit (/Users/dj/.vscode/extensions/platformio.platformio-ide-3.3.3-darwin-arm64/node_modules/@szmarczak/http-timer/dist/source/index.js:43:20)
	at TLSSocket.socketErrorListener (node:_http_client:500:9)
	at TLSSocket.emit (node:events:519:28)
	at TLSSocket.emit (node:domain:488:12)
	at emitErrorNT (node:internal/streams/destroy:169:8)
	at emitErrorCloseNT (node:internal/streams/destroy:128:3)
	at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
	at TLSSocket.onConnectSecure (node:_tls_wrap:1674:34)
	at TLSSocket.emit (node:events:519:28)
	at TLSSocket.emit (node:domain:488:12)
	at TLSSocket._finishInit (node:_tls_wrap:1085:8)
	at ssl.onhandshakedone (node:_tls_wrap:871:12)

I tried adding the following lines to my vscode settings.json file, then uninstalling and reinstalling the extension, but that didn’t fix the issue (also seems like a horrible setting to require):

  "http.proxyStrictSSL": false,
  "http.proxyAuthorization": null,
  "http.systemCertificates": false,

I also tried removing my ~/.platformio folder (which only included a .cache folder) and reinstalling the extension, but to no avail.

Potentially relevant details:

  • OS: macOS 14.6.1
  • Architecture: arm64
  • Python: 3.12.5
  • pip: 24.2
  • vscode: 1.93.0

I don’t have any network proxies or VPNs enabled in my system settings as far as I can tell.

Note: I know next to nothing about SSL certificates, so if I have to update my certificate settings to fix the issue, you’ll have to talk to me like I’m 5 :persevere:

Mhm, initially I thought the latest VSCode 1.93.0 might be a problem, but I’ve just updated to that myself (from 1.92.0) on Windows 10 and my PlatformIO still works. Make the PlatformIO VSCode extension is the latest (3.3.3). If it is, file a bug report in https://github.com/platformio/platformio-vscode-ide/issues.