Platform IDE for VSCode on Mac ARM/M1?

Yes I have an M1 based computer.

pio system info output:

> pio system info
--------------------------  ------------------------------------------------------
PlatformIO Core             5.1.0
Python                      3.8.4-final.0
System Type                 darwin_x86_64
Platform                    macOS-10.16
File System Encoding        utf-8
Locale Encoding             UTF-8
PlatformIO Core Directory   ~/.platformio
PlatformIO Core Executable  ~/.platformio/penv/bin/platformio
Python Executable           ~/.platformio/penv/bin/python
Global Libraries            0
Development Platforms       2
Tools & Toolchains          11
--------------------------  ------------------------------------------------------

PlatformIO.ini:

; PlatformIO Project Configuration File
;
;   Build options: build flags, source filter
;   Upload options: custom upload port, speed and extra flags
;   Library options: dependencies, extra library storages
;   Advanced options: extra scripting
;
; Please visit documentation for the other options and examples
; https://docs.platformio.org/page/projectconf.html

[env:teensy31]
platform = teensy
board = teensy31
framework = arduino

lib_deps = adafruit/Adafruit MQTT Library @ ^2.1.0,

Output when compiling:

Executing task in folder ESP32_TEST: pio run <

Processing teensy31 (platform: teensy; board: teensy31; framework: arduino)
------------------------------------------------------------------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/teensy/teensy31.html
PLATFORM: Teensy (4.12.0) > Teensy 3.1 / 3.2
HARDWARE: MK20DX256 72MHz, 64KB RAM, 256KB Flash
DEBUG: Current (jlink) External (jlink)
PACKAGES: 
 - framework-arduinoteensy 1.153.0 (1.53) 
 - toolchain-gccarmnoneeabi 1.50401.190816 (5.4.1)
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
ValueError: Invalid simple block '':
  File "~/.platformio/penv/lib/python3.8/site-packages/platformio/builder/main.py", line 177:
    env.SConscript("$BUILD_SCRIPT")
  File "~/.platformio/packages/tool-scons/scons-local-4.1.0/SCons/Script/SConscript.py", line 591:
    return _SConscript(self.fs, *files, **subst_kw)
  File "~/.platformio/packages/tool-scons/scons-local-4.1.0/SCons/Script/SConscript.py", line 280:
    exec(compile(scriptdata, scriptname, 'exec'), call_stack[-1].globals)
  File "~/.platformio/platforms/teensy/builder/main.py", line 144:
    target_elf = env.BuildProgram()
  File "~/.platformio/packages/tool-scons/scons-local-4.1.0/SCons/Util.py", line 658:
    return self.method(*nargs, **kwargs)
  File "~/.platformio/penv/lib/python3.8/site-packages/platformio/builder/tools/platformio.py", line 62:
    env.ProcessProjectDeps()
  File "~/.platformio/packages/tool-scons/scons-local-4.1.0/SCons/Util.py", line 658:
    return self.method(*nargs, **kwargs)
  File "~/.platformio/penv/lib/python3.8/site-packages/platformio/builder/tools/platformio.py", line 140:
    project_lib_builder = env.ConfigureProjectLibBuilder()
  File "~/.platformio/packages/tool-scons/scons-local-4.1.0/SCons/Util.py", line 658:
    return self.method(*nargs, **kwargs)
  File "~/.platformio/penv/lib/python3.8/site-packages/platformio/builder/tools/piolib.py", line 1062:
    project.install_dependencies()
  File "~/.platformio/penv/lib/python3.8/site-packages/platformio/builder/tools/piolib.py", line 886:
    if lm.get_package(spec):
  File "~/.platformio/penv/lib/python3.8/site-packages/platformio/package/manager/base.py", line 234:
    spec = self.ensure_spec(spec)
  File "~/.platformio/penv/lib/python3.8/site-packages/platformio/package/manager/base.py", line 102:
    return spec if isinstance(spec, PackageSpec) else PackageSpec(spec)
  File "~/.platformio/penv/lib/python3.8/site-packages/platformio/package/meta.py", line 124:
    self._parse(self.raw)
  File "~/.platformio/penv/lib/python3.8/site-packages/platformio/package/meta.py", line 227:
    raw = parser(raw)
  File "~/.platformio/penv/lib/python3.8/site-packages/platformio/package/meta.py", line 250:
    self.requirements = tokens[1].strip()
  File "~/.platformio/penv/lib/python3.8/site-packages/platformio/package/meta.py", line 167:
    else semantic_version.SimpleSpec(str(value))
  File "~/.platformio/penv/lib/python3.8/site-packages/semantic_version/base.py", line 618:
    self.clause = self._parse_to_clause(expression)
  File "~/.platformio/penv/lib/python3.8/site-packages/semantic_version/base.py", line 1014:
    return cls.Parser.parse(expression)
  File "~/.platformio/penv/lib/python3.8/site-packages/semantic_version/base.py", line 1034:
    raise ValueError("Invalid simple block %r" % block)

Remove the comma at the end of the line.

My bad… I should have tried another project. It’s working now. Is it running natively or under Rosseta 2?

Assuming that PlatformIO thinks you’re on darwin x84_x64 anyways…

and

I would assume it’s using emulation. Ivan can correct me if I’m wrong.

1 Like

Yes, macOS does this job automatically on-the-fly. All our packages are compatible with M1.