PlatformIO copies the Arduino cores as its own seperate package, since it does its own package management. So e.g., we have the PlatformIO package framework-arduinoadafruitnrf52
of the latest version 1.2100.201028
which means it maps to version 0.21.0 release of Adafruit’s nRF52 core release.
Every Arduino core that PlatformIO can build for is managed in its own framework-arduinox
package and the platform (nordicnrf52) has to have explicit code support for being able to build a specific Arduino core.
Currently for nRF52, the supported cores are
- Adafruit’s nRF52 core: GitHub - adafruit/Adafruit_nRF52_Arduino: Adafruit code for the Nordic nRF52 BLE SoC on Arduino (aka
framework-arduinoadafruitnrf52
) - sandeepmistry’s nRF5 core: GitHub - sandeepmistry/arduino-nRF5: Arduino Core for Nordic Semiconductor nRF5 based boards (aka
framework-arduinonordicnrf5
) - Arduino’s nRF52 mbed-os based core: GitHub - arduino/ArduinoCore-nRF528x-mbedos: [Archived] Arduino core supporting mbed-enabled boards (aka
framework-arduino-nrf52-mbedos
), specially handled here)
Each core supports its own set of boards and its own set of APIs and are not necessarily compatible between each other – a firmware written against one core may not work on another core if different libraries are APIs are used which don’t exist equivalently in the other core.
From that you can also see that PlatformIO does not currently implement this “ArduinoCore-primo” core with that Arduino Primo (nRF52832 based) baord. Since both that core and that board are deprecated, I don’t think official support will come either. A custom user-made implementation was referenced in this issue if you still want to try it out.
If the main goal is just using the Arduino Primo board I’d just recommend to use any other board with a nRF52832, like e.g. board = adafruit_feather_nrf52832
, and with it Adafruit’s core, and try and program it with that; Just be aware that the pin labels “D1” etc do not map correctly to that board then, but you can still reference “absolute” pinnames like P1.12.