From e49272f13b88c7eac47df9b3c87ddbca62059e9e Mon Sep 17 00:00:00 2001 From: Ivan Kravets Date: Mon, 4 Apr 2022 12:06:00 +0300 Subject: [PATCH 1/7] Use the latest Github OS images --- .github/workflows/examples.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml index 9d03bd2..d17fe7a 100644 --- a/.github/workflows/examples.yml +++ b/.github/workflows/examples.yml @@ -7,7 +7,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-18.04, windows-latest, macos-latest] + os: [ubuntu-latest, windows-latest, macos-latest] python-version: [3.7] example: - "examples/arduino-blink" From e08da697f0a750d5ebdd17d299d262b729e67c42 Mon Sep 17 00:00:00 2001 From: Ivan Kravets Date: Fri, 8 Apr 2022 12:17:12 +0300 Subject: [PATCH 2/7] Symlink dev-platform --- .github/workflows/examples.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml index d17fe7a..ccda6ef 100644 --- a/.github/workflows/examples.yml +++ b/.github/workflows/examples.yml @@ -25,7 +25,7 @@ jobs: run: | python -m pip install --upgrade pip pip install -U https://github.com/platformio/platformio/archive/develop.zip - platformio platform install file://. + pio pkg install --global --platform symlink://. - name: Build examples run: | platformio run -d ${{ matrix.example }} From 7d82e083243afae142a035c3e728e2a499f0e2c7 Mon Sep 17 00:00:00 2001 From: Valerii Koval Date: Fri, 27 May 2022 19:48:26 +0300 Subject: [PATCH 3/7] Tidy up platform script --- platform.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/platform.py b/platform.py index bd68da0..35b16fa 100644 --- a/platform.py +++ b/platform.py @@ -12,7 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -import copy import platform from platformio.managers.platform import PlatformBase @@ -102,7 +101,7 @@ class RaspberrypiPlatform(PlatformBase): def configure_debug_session(self, debug_config): adapter_speed = debug_config.speed or "5000" - + server_options = debug_config.server or {} server_arguments = server_options.get("arguments", []) if "interface/cmsis-dap.cfg" in server_arguments: From 6de524e45d6af97bece90bb91a215f57b167d5ae Mon Sep 17 00:00:00 2001 From: Valerii Koval Date: Fri, 27 May 2022 19:48:58 +0300 Subject: [PATCH 4/7] Update Arduino-mbed core to v3.1.1 --- platform.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform.json b/platform.json index 4ab2f54..ecde199 100644 --- a/platform.json +++ b/platform.json @@ -35,7 +35,7 @@ "type": "framework", "optional": true, "owner": "platformio", - "version": "~3.0.1" + "version": "~3.1.1" }, "tool-rp2040tools": { "type": "uploader", From 6caac4d451c3adf4e1f6ed696c645ddb4ccd3cf4 Mon Sep 17 00:00:00 2001 From: Ivan Kravets Date: Sat, 28 May 2022 15:54:59 +0300 Subject: [PATCH 5/7] Improve support for hand-written asm source files --- builder/frameworks/_bare.py | 13 +++++++++---- builder/frameworks/arduino/mbed-core | 2 +- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/builder/frameworks/_bare.py b/builder/frameworks/_bare.py index 4fd489e..a083fa9 100644 --- a/builder/frameworks/_bare.py +++ b/builder/frameworks/_bare.py @@ -21,7 +21,12 @@ from SCons.Script import DefaultEnvironment env = DefaultEnvironment() env.Append( - ASFLAGS=["-x", "assembler-with-cpp"], + ASFLAGS=[ + "-mthumb", + ], + ASPPFLAGS=[ + "-x", "assembler-with-cpp", + ], CCFLAGS=[ "-Os", # optimize for size @@ -54,6 +59,9 @@ env.Append( if "BOARD" in env: env.Append( + ASFLAGS=[ + "-mcpu=%s" % env.BoardConfig().get("build.cpu") + ], CCFLAGS=[ "-mcpu=%s" % env.BoardConfig().get("build.cpu") ], @@ -61,6 +69,3 @@ if "BOARD" in env: "-mcpu=%s" % env.BoardConfig().get("build.cpu") ] ) - -# copy CCFLAGS to ASFLAGS (-x assembler-with-cpp mode) -env.Append(ASFLAGS=env.get("CCFLAGS", [])[:]) diff --git a/builder/frameworks/arduino/mbed-core b/builder/frameworks/arduino/mbed-core index 36ee4ff..ed9a345 160000 --- a/builder/frameworks/arduino/mbed-core +++ b/builder/frameworks/arduino/mbed-core @@ -1 +1 @@ -Subproject commit 36ee4ff8adb0d80d6ff15e03b34e7b10a147b4d0 +Subproject commit ed9a3458e336660fdf2b1d4a4c828a2ddfd214ad From c97b377c3e942673e936cb023ac82ab357e9d1db Mon Sep 17 00:00:00 2001 From: Ivan Kravets Date: Sat, 28 May 2022 15:55:17 +0300 Subject: [PATCH 6/7] Add compatibility with PIO Core 6.0 --- .github/workflows/examples.yml | 12 +++++------- README.md | 2 +- builder/main.py | 4 ++-- platform.json | 2 +- platform.py | 9 ++++----- 5 files changed, 13 insertions(+), 16 deletions(-) diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml index ccda6ef..b24ad69 100644 --- a/.github/workflows/examples.yml +++ b/.github/workflows/examples.yml @@ -8,24 +8,22 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, windows-latest, macos-latest] - python-version: [3.7] example: - "examples/arduino-blink" - "examples/arduino-external-libs" runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: "recursive" - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v1 + - name: Set up Python + uses: actions/setup-python@v3 with: - python-version: ${{ matrix.python-version }} + python-version: "3.9" - name: Install dependencies run: | - python -m pip install --upgrade pip pip install -U https://github.com/platformio/platformio/archive/develop.zip pio pkg install --global --platform symlink://. - name: Build examples run: | - platformio run -d ${{ matrix.example }} + pio run -d ${{ matrix.example }} diff --git a/README.md b/README.md index 47b4217..2f2ee78 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ RP2040 is a low-cost, high-performance microcontroller device with a large on-ch # Usage -1. [Install PlatformIO](http://platformio.org) +1. [Install PlatformIO](https://platformio.org) 2. Create PlatformIO project and configure a platform option in [platformio.ini](https://docs.platformio.org/page/projectconf.html) file: ## Stable version diff --git a/builder/main.py b/builder/main.py index 0854f09..e59f3f5 100644 --- a/builder/main.py +++ b/builder/main.py @@ -17,7 +17,7 @@ from platform import system from os import makedirs from os.path import isdir, join -from platformio.util import get_serial_ports +from platformio.public import list_serial_ports from SCons.Script import (ARGUMENTS, COMMAND_LINE_TARGETS, AlwaysBuild, Builder, Default, DefaultEnvironment) @@ -29,7 +29,7 @@ def BeforeUpload(target, source, env): # pylint: disable=W0613,W0621 upload_options = env.BoardConfig().get("upload", {}) env.AutodetectUploadPort() - before_ports = get_serial_ports() + before_ports = list_serial_ports() if upload_options.get("use_1200bps_touch", False): env.TouchSerialPort("$UPLOAD_PORT", 1200) diff --git a/platform.json b/platform.json index ecde199..6693990 100644 --- a/platform.json +++ b/platform.json @@ -12,7 +12,7 @@ "RP2040" ], "engines": { - "platformio": "^5" + "platformio": "^6" }, "repository": { "type": "git", diff --git a/platform.py b/platform.py index 35b16fa..26b2ffe 100644 --- a/platform.py +++ b/platform.py @@ -14,7 +14,7 @@ import platform -from platformio.managers.platform import PlatformBase +from platformio.public import PlatformBase class RaspberrypiPlatform(PlatformBase): @@ -38,16 +38,16 @@ class RaspberrypiPlatform(PlatformBase): if not any(jlink_conds) and jlink_pkgname in self.packages: del self.packages[jlink_pkgname] - return PlatformBase.configure_default_packages(self, variables, targets) + return super().configure_default_packages(variables, targets) def get_boards(self, id_=None): - result = PlatformBase.get_boards(self, id_) + result = super().get_boards(id_) if not result: return result if id_: return self._add_default_debug_tools(result) else: - for key, value in result.items(): + for key in result: result[key] = self._add_default_debug_tools(result[key]) return result @@ -101,7 +101,6 @@ class RaspberrypiPlatform(PlatformBase): def configure_debug_session(self, debug_config): adapter_speed = debug_config.speed or "5000" - server_options = debug_config.server or {} server_arguments = server_options.get("arguments", []) if "interface/cmsis-dap.cfg" in server_arguments: From c4349b16343b69f19bb89648e6d5110005131af5 Mon Sep 17 00:00:00 2001 From: Valerii Koval Date: Mon, 30 May 2022 18:51:00 +0300 Subject: [PATCH 7/7] Bump version to 1.7.0 --- platform.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform.json b/platform.json index 6693990..08e0339 100644 --- a/platform.json +++ b/platform.json @@ -18,7 +18,7 @@ "type": "git", "url": "https://github.com/platformio/platform-raspberrypi.git" }, - "version": "1.6.0", + "version": "1.7.0", "frameworks": { "arduino": { "package": "framework-arduino-mbed",