adafruit / circuitpython

CircuitPython - a Python implementation for teaching coding with microcontrollers
https://circuitpython.org
Other
4.11k stars 1.22k forks source link

Add board port for Pimoroni Pico Plus 2 W #9808

Open eightycc opened 3 days ago

eightycc commented 3 days ago

CP supports the Pimoroni Pico Plus 2 board but lacks support for the new W variant. The Pico Plus 2 W includes a Raspberry Pi RM2 adding WiFi and Bluetooth capabilities that should be compatible with the Infineon CYW43439 on the Raspberry Pi Pico W boards.

I'll claim this issue and will submit a pull request as soon as my test board arrives.

anecdata commented 3 days ago

Related: https://github.com/adafruit/circuitpython/issues/9777

bablokb commented 3 days ago

I already have (two) of these boards. If I can help in any way, just let me know.

eightycc commented 2 days ago

Thanks to @anecdata for pointing to https://github.com/micropython/micropython/pull/16057 where a similar Micropython port is underway. Making a first pass through the PR and the changes it makes I can see that RP2350/RM2 changes depend on SDK changes to its develop branch. Likewise, cyw43-driver module will also need an update.

The cyw43-driver change is to TSSI calibration, so CP doesn't necessarily need it.

The PR issue that affects CP is achieving proper adjustment of the PIO clock speed. The CYW43439 communicates with its host using a SPI variant named gSPI. The cyw43-driver uses a PIO to emulate gSPI.

It's probably wise to wait for this PR to shake out.