-
-
Notifications
You must be signed in to change notification settings - Fork 87
Description
Hi Kevin,
First off, great library! Thank you for all of your efforts :)
We were trying to use CAN on pins 38, 39 and assign to PIO 2, but the program enters a deadlock condition after we launch CAN. After reviewing the source code, I think there might be an issue related to the register manipulate for the SIO or the pad.
There are a lot of specific implementation details I would have to work through to determine what is going on with the register assembly, so I figured I would open up a ticket while I try and debug what is going on.
What steps did I do to rule out hardware?
- Same code, same circuit, just using GPIO's under 32 and PIO 0.
- Code + hardware worked as expected
- Tried different pins at or above GPIO 32 with consistent results
What haven't I tested?
- I have not extensively ruled out PIO 2 as a part of the problem, I think PIO 2 is probably fine, but I am including it in the problem statement.
@KevinOConnor is there a reason that you aren't using the PICO-SDK's functions for SM initialization and GPIO configuration? I understand why you might want to handle them directly, if you can lay out your design goals for the library I can submit a PR to hopefully help patch some of this :)
Thank you again for publishing this library, you are what makes Open Source awesome!