Yes. The procedure I used was:
Create a “boards” directory under .platformio.
In this dir, create OpenRB-150.json with this contents:
{
"build": {
"arduino": {
"ldscript": "flash_with_bootloader.ld"
},
"core": "arduino",
"cpu": "cortex-m0plus",
"extra_flags": "-DARDUINO_OpenRB -D__SAMD21G18A__ -DUSE_ARDUINO_MKR_PIN_LAYOUT",
"f_cpu": "48000000L",
"hwids": [
[
"0x2F5D",
"0x2202"
]
],
"mcu": "samd21g18a",
"usb_product": "Robotis OpenRB-150",
"variant": "OpenRB-150"
},
"frameworks": [
"arduino"
],
"platforms": [
"atmelsam"
],
"debug": {
"jlink_device": "ATSAMD21G18",
"openocd_chipname": "at91samd21g18",
"openocd_target": "at91samdXX",
"svd_path": "ATSAMD21G18A.svd"
},
"name": "Robotis OpenRB-150",
"upload": {
"disable_flushing": true,
"maximum_ram_size": 32768,
"maximum_size": 262144,
"native_usb": true,
"offset_address": "0x2000",
"protocol": "sam-ba",
"protocols": [
"sam-ba",
"blackmagic",
"jlink",
"atmel-ice"
],
"require_upload_port": true,
"use_1200bps_touch": true,
"wait_for_upload_port": true
},
"url": "https://en.robotis.com/shop_en/item.php?it_id=902-0183-000",
"vendor": "Robotis"
}
This is based on the mkrwifi1010 board file
From the Arduino OpenRB-150 Board manager package, locate the variants/OpenRB-150 directory (OpenRB-150/variants/OpenRB-150 at master · ROBOTIS-GIT/OpenRB-150 · GitHub) and copy this directory under .platformio\packages\framework-arduino-samd\variants
I think that was it. I can now find the OpenRB-150 under boards in PlatformIO in VSCode and select it for new projects. You will need the Dynamixel2Arduino library as well.
My platformio.ini for a small test project looks like this:
[env:OpenRB-150]
platform = atmelsam
board = OpenRB-150
framework = arduino
lib_deps = robotis-git/Dynamixel2Arduino@^0.7.0
Hope this helps.