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

[WIP] Further K64F modifications, attempting to get USB working #306

Merged
merged 4 commits into from
May 16, 2022
Merged

[WIP] Further K64F modifications, attempting to get USB working #306

merged 4 commits into from
May 16, 2022

Conversation

fauxpark
Copy link
Contributor

@fauxpark fauxpark commented Nov 13, 2021

Since my last PR #297 I now have a Teensy 3.5. Unsurprisingly the first set of changes didn't work, so it seems there are more tweaks required to get USB functioning.

For the most part I've been referencing the PJRC Teensyduino code as well as the existing Kinetis implementations already in the repo (particularly the K66), as they're all very similar.
A simple QMK firmware is able to run and respond to key presses (qmk/qmk_firmware#14420) - I can reset it back to bootloader mode - however the K64F's USB peripheral refuses to cooperate. Looking at the data lines in a logic analyser, both of them appear to be pulled up for some reason, with no other activity.

@stapelberg @walkerstop since you've done some work getting the 3.6 running, would either of you have any insight into this? I must be missing something obvious...

@fauxpark fauxpark marked this pull request as draft November 13, 2021 06:01
@stapelberg
Copy link
Contributor

@stapelberg @walkerstop since you've done some work getting the 3.6 running, would either of you have any insight into this? I must be missing something obvious...

Hm, no idea off the top of my head 🤔

Have you compared behavior with a known-working USB implementation on the Teensy 3.5? I don’t have a much better strategy than to compare behavior and any differences step by step…

@fauxpark
Copy link
Contributor Author

My expectation was that Teensyduino would be a good reference - it doesn't seem to have a whole lot of chip-dependent code except for the obvious things like register definitions, which I've already checked. So I figured the existing USB LLD would also be more or less correct given that it looks like it's adapted from the Teensyduino stuff, and is used not just for the K66, but the K20xx chips as well.

@fpoussin fpoussin changed the base branch from chibios-21.6.x to chibios-21.11.x February 6, 2022 20:54
@fpoussin fpoussin self-assigned this May 1, 2022
@fauxpark fauxpark marked this pull request as ready for review May 2, 2022 01:17
@fpoussin
Copy link
Member

Is this ready to be merged?
can you rebase it? tests were broken.

@fauxpark
Copy link
Contributor Author

Thanks, rebased.

@fpoussin fpoussin merged commit 2c374c7 into ChibiOS:chibios-21.11.x May 16, 2022
@fpoussin
Copy link
Member

Thanks!

@fauxpark fauxpark deleted the wip-k64f-usb branch May 16, 2022 23:04
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.

3 participants