-
-
Notifications
You must be signed in to change notification settings - Fork 39.8k
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
[Core] Add Raspberry Pi RP2040 support #14877
[Core] Add Raspberry Pi RP2040 support #14877
Conversation
567eb4b
to
feb98ab
Compare
Hi, i was just wondering if work is still being done on this? |
Can't move until ChibiOS/ChibiOS-Contrib#307 is sorted. |
I have a fork of chibios contrib 21.6.x that succesfully builds. Though you will have to see how i did it, as i didnt actually update the other MCUs to 21.11.x, rather it uses the master branch of chibios just for building the rp2040 and the other stuff still builds using chibios 20.3.x. (This was the only way i could get it to build properly without making major changes) |
This is the fork for reference: https://github.com/zykrahgaming/ChibiOS-Contrib |
ChibiOS/ChibiOS-Contrib#310 |
@zykrahgaming Thanks for your interest and effort in pushing RP2040 support forward 💪 I hope that contrib resurrects from the winter sleep soonish. To support split keebs I started #15907 which brings split comms support for the RP2040. |
feb98ab
to
ef2a469
Compare
ef2a469
to
1dbf90d
Compare
Double tap reset to enter bootloader have to be called after platform_setup() function in main() function. |
@hanya thank you for the bootloader code and all the previous work on the contrib code. I'll have a more in depth look next week. Giovanni the maintainer of ChibiOS also voiced interest to move the rp2040 contrib drivers into mainline, but wants somebody to actively maintain them. This might be interesting for you? |
Good news! ChibiOS/ChibiOS-Contrib#310 (comment) |
Rebased and adjusted on top of current develop, so all dependent PRs are now merged. I replaced the KB2040 pin-out picture with Sparkfuns RP2040 because that should be considered the canonical pin out. |
984ce63
to
3df6518
Compare
3df6518
to
7e7ec4a
Compare
For people that wondered why their build failed with error messages when including an |
7e7ec4a
to
6564276
Compare
6564276
to
b41756d
Compare
d16761f
to
b9a404e
Compare
Supports regular and open-drain output configuration. RP2040 GPIOs are sadly not 5V tolerant, so this is a bit use-less or needs extra hardware or you take the risk to fry your hardware.
Co-authored-by: Nick Brassel <nick@tzarc.org>
2f2dfb0
to
44cced4
Compare
Building on the great work of @hanya, @xyzz and @tzarc this PR adds support for RP2040 to QMK.
Todo
QMK:
Chibi OS:
crt1.c
has to be done in assembly. (If using the memcpy/memset functions from rp2040 bootrom)*.preinit_array
sections toxtors
in order to call the VTABLE population for the functions in rp2040 bootromFuture work after this PR
Description
Types of Changes
Issues Fixed or Closed by This PR
Checklist