Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for producing UF2-format binaries. #12435

Merged
merged 2 commits into from
Apr 6, 2021
Merged

Add support for producing UF2-format binaries. #12435

merged 2 commits into from
Apr 6, 2021

Conversation

tzarc
Copy link
Member

@tzarc tzarc commented Mar 30, 2021

Description

This PR adds support for producing UF2-formatted binaries using the utility scripts provided by the microsoft/uf2 repository.

Raspberry Pi's RP2040 has in-silicon bootloader UF2 support for flashing binaries. There are other bootloaders available that do the same thing for other MCU families -- see https://github.com/microsoft/uf2#family-list -- so I'm adding this early so that it's locked in by the time ChibiOS picks up RP2040 support.

Flashing is not currently implemented -- the same conversion script can handle deployment -- this will follow later.

Types of Changes

  • Core
  • Bugfix
  • New feature
  • Enhancement/optimization
  • Keyboard (addition or update)
  • Keymap/layout/userspace (addition or update)
  • Documentation

Checklist

  • My code follows the code style of this project: C, Python
  • I have read the PR Checklist document and have made the appropriate changes.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • I have tested the changes and verified that they work and don't break anything (as well as I can manage).

@tzarc tzarc requested a review from a team March 30, 2021 21:44
@fauxpark
Copy link
Member

fauxpark commented Apr 3, 2021

Another submodule? 😢

@elfmimi
Copy link
Contributor

elfmimi commented Apr 4, 2021

Another submodule? 😢

It's a pretty simple single file script.
https://github.com/microsoft/uf2/blob/master/utils/uf2conv.py
so I suppose it is a reasonable choice to copy this one into the repo as util/uf2conv.py .
※ ideally it should be available as a python package, though.

@tzarc
Copy link
Member Author

tzarc commented Apr 6, 2021

※ ideally it should be available as a python package, though.

Ideally... but as far as I can see it isn't :(

Anyways, copied to util/uf2conv.py.

@tzarc tzarc requested a review from a team April 6, 2021 06:25
@tzarc tzarc merged commit 64a0f5a into qmk:develop Apr 6, 2021
@tzarc tzarc deleted the uf2 branch April 6, 2021 06:40
mechlovin pushed a commit to mechlovin/qmk_firmware that referenced this pull request Jul 30, 2021
* First stab at enabling builds of UF2-format binaries.

* Add description on producing a UF2 file.
mechlovin pushed a commit to mechlovin/qmk_firmware that referenced this pull request Jul 30, 2021
* First stab at enabling builds of UF2-format binaries.

* Add description on producing a UF2 file.
nhongooi pushed a commit to nhongooi/qmk_firmware that referenced this pull request Dec 5, 2021
* First stab at enabling builds of UF2-format binaries.

* Add description on producing a UF2 file.
BorisTestov pushed a commit to BorisTestov/qmk_firmware that referenced this pull request May 23, 2024
* First stab at enabling builds of UF2-format binaries.

* Add description on producing a UF2 file.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants