-
Couldn't load subscription status.
- Fork 507
Support CYW43 boards on RP2350 #2616
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
Conversation
5204482 to
1780acd
Compare
|
FWIW, this should now build on the RP2350+CYW43 boards (Pimoroni PicoPlus 2W and SparkFun Thing Plus RP2350) while also not breaking PicoW. SparkFun was nice enough to send a sample, so once that arrives final tweaks can be done. On the bright side, it appears all boards are using the same CYW43 pin out. The SDK should allow for changing it per-board, but as of now there doesn't seem to be a need to exercise this. This also pulls in #2600 since it is trivial and part of the refactoring done to support multiple CYW43 boards. SDK builds in CI will fail until the next SDK release (and raspberrypi/pico-sdk#2045 gets merged). |
Also move "special GPIO" to 64 since the Pimoroni Pico 2W uses the RP2350B with 48 GPIOs.
c1a0993 to
c01c037
Compare
I haven't poked through the code changes, but does this statement imply there's no way to use a different radio pinout with this PR? I would request that to be a feature, because we have another product in the works that will use different pins (can't say anything more at this time). |
No worries, it'll be configurable at runtime. The default values, though, if the pins aren't redefined by calls to the pin_config process, are all the same as PicoW and the SparkFun and Pimoroni boards. So, as of now, there's no need to set anything and it "should" pick up the proper defaults everywhere. |
|
Ok, I had a play around with this PR and I got it working with different pins. Turns out where The only major problem is that |
It's set in the library build but should also be passed in as part of the |
Allows calling `cyw43_set_pins_wl(cyw43_pin_array);` to redefine the CYW43 hookup in the variant initialization.
|
I just received your sample board, @sfe-SparkFro , plugged it in 5 minutes ago, and everything "just works" now. Bluetooth, WiFi, PSRAM, and the LEDs (CYW43 attached and WS2812) all pass simple basic tests. Even RISC-V mode worked for WiFi and BT. How anti-climactic! 😆 |
|
Awesome work!! I've just updated the PlatformIO integration and I can run the WiFi scan example on my Pimoroni Pico 2 W perfectly fine! |
|
Awesome, thanks for the report! I just used the schematic and they seemed to have chosen the exact same pinout as all the others. Now to figure out what to do with a WiFi-enabled, 512K, dual core with FP board. 😄 |
Using pico-sdk develop branch with minor patch, add in support for the CYW43-based WiFi boards on the RP2350.
Fixes #2608