-
Notifications
You must be signed in to change notification settings - Fork 39
Add compatibility with non-esp platforms, focus on RP2040 #90
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
base: master
Are you sure you want to change the base?
Conversation
|
Hi @episource, than you for contribution!
It's exciting that it went so far, and I'm happy it's applicable beyond the original scope. Looking at the PR code, I see technically no changes comparing to the original. It's always good to do a smoke test. PS: Have you considered adding some details on hardware you use with this library to the discussion here: #61 or this issue: #1? Wiring and maybe some picture, it would be very welcome and appreciated 😃 |
|
I've posted in #1. I'm not able to test the lib using ESP32 or ESP8266 as I do not own any of these. If I didn't make a big mistake, the code path's for ESP should not have changed, though. |
|
@episource Would you please have a look at conflict in |
ce3237a to
4d1de67
Compare
|
Conflict solved. |
|
@baldram Please note that the MIDI PR uses a bunch of SPI.write commands in |
|
@Dr-Dawg Good point. Easy to solve, but conflicting. I need to dig out the equipment, set up and perform tests, let's do it this weekend. Then merge PR's one by one. |
generic arduino SPI API only knows about SPI.transfer*. SPI.write* is ESP3266 specific.
4d1de67 to
a36d64b
Compare
|
Conflicts resolved. Rebased to current master. |
The current implementation uses ESP-specific
SPI.write*-API. Universally available is onlySPI.transfer*(see documentation).This PR changes spi writes to use the universal API on non-ESP platforms. For ESP platforms the existing implementation is preserved.
Additionally the bit value
_BVmacro is defined if it is not available by default.Finally logging macros are extended to consider arduino-pico framework.
Functionallity has been tested using a Raspberry Pico Board (RP2040), but this PR is not limited to this platform. The changes included herein will likely make this library compatible with other platforms as well.