From 2e10cbb3d7ecb3f3c0681ca1706c7bfa79b81b0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Guimar=C3=A3es?= Date: Fri, 4 Feb 2022 15:39:32 +0100 Subject: [PATCH] Include OpenCR boards --- boards/opencr.json | 28 ++++++++++++++++++++++++++++ builder/frameworks/arduino.py | 4 ++++ platform.json | 6 ++++++ platform.py | 5 +++++ 4 files changed, 43 insertions(+) create mode 100644 boards/opencr.json diff --git a/boards/opencr.json b/boards/opencr.json new file mode 100644 index 00000000..1fb3d562 --- /dev/null +++ b/boards/opencr.json @@ -0,0 +1,28 @@ +{ + "build": { + "extra_flags": "-mthumb -DSTM32F746xx -D__OPENCR__", + "core": "opencr", + "cpu": "cortex-m7", + "f_cpu": "216000000L", + "mcu": "stm32f746zgt6", + "product_line": "STM32F746xx", + "variant": "OpenCR" + }, + "connectivity": [ + "can", + "ethernet" + ], + "frameworks": ["arduino"], + "platforms": ["ststm32"], + "name": "OpenCR 1.0", + "url": "https://emanual.robotis.com/docs/en/parts/controller/opencr10/", + "vendor": "ROBOTIS", + "upload": { + "maximum_ram_size": 256788, + "maximum_size": 786432, + "protocol": "custom", + "protocols": [ + "custom" + ] + } +} diff --git a/builder/frameworks/arduino.py b/builder/frameworks/arduino.py index de798e71..d91cf05b 100644 --- a/builder/frameworks/arduino.py +++ b/builder/frameworks/arduino.py @@ -39,6 +39,10 @@ build_script = join( env.PioPlatform().get_package_dir("framework-arduinoststm32l0"), "tools", "platformio-build.py") +elif core == "opencr": + build_script = join( + env.PioPlatform().get_package_dir("framework-arduinoststm32-opencr"), + "tools", "platformio", "platformio-build.py") else: build_script = join(env.PioPlatform().get_package_dir( "framework-arduinoststm32"), "tools", "platformio", "platformio-build.py") diff --git a/platform.json b/platform.json index 1e58b39b..b30d217a 100644 --- a/platform.json +++ b/platform.json @@ -194,6 +194,12 @@ "owner": "platformio", "version": "~4.20200.0" }, + "framework-arduinoststm32-opencr": { + "type": "framework", + "optional": true, + "owner": "platformio", + "version": "~1.4.18" + }, "framework-arduinoststm32-maple": { "type": "framework", "optional": true, diff --git a/platform.py b/platform.py index c1ae24bc..dc14af49 100644 --- a/platform.py +++ b/platform.py @@ -38,6 +38,11 @@ def configure_default_packages(self, variables, targets): "script" ] = "builder/frameworks/arduino/mbed-core/arduino-core-mbed.py" self.packages["framework-arduinoststm32"]["optional"] = True + elif build_core == "opencr": + self.frameworks["arduino"]["package"] = "framework-arduinoststm32-opencr" + self.packages["framework-arduinoststm32-opencr"]["optional"] = False + self.packages["framework-arduinoststm32"]["optional"] = True + self.packages["framework-cmsis"]["optional"] = False elif build_core == "maple": self.frameworks["arduino"]["package"] = "framework-arduinoststm32-maple" self.packages["framework-arduinoststm32-maple"]["optional"] = False