Difference between revisions of "ER-0035"
Latest revision as of 18:38, 30 September 2022
Raspberry Pi Pico W
Raspberry Pi Pico W adds on-board single-band 2.4GHz wireless interfaces (802.11n) using the Infineon CYW4343 while retaining the Pico form factor.
- Wireless (802.11n), single-band (2.4 GHz)
- Soft access point supporting up to four clients
- The antenna is an onboard antenna licensed from ABRACON (formerly ProAnt).
- The wireless interface is connected via SPI to the RP2040 microcontroller.
Due to pin limitations, some of the wireless interface pins are shared. The CLK is shared with VSYS monitor, so only when there isn’t an SPI transaction in progress can VSYS be read via the ADC. The Infineon CYW43439 DIN/DOUT and IRQ all share one pin on the RP2040. Only when an SPI transaction isn’t in progress is it suitable to check for IRQs. The interface typically runs at 33MHz.
For best wireless performance, the antenna should be in free space. For instance, putting metal under or close by the antenna can reduce its performance both in terms of gain and bandwidth. Adding grounded metal to the sides of the antenna can improve the antenna’s bandwidth.
NOTE The CYW43439 wireless chip is connected via SPI to the RP2040. While the CYW43439 supports both 802.11 wireless and Bluetooth, initially Pico W does not have Bluetooth support. Support may be added later, and will use the same SPI interface. If support is added existing hardware may require a firmware update to support Bluetooth, but there will be no hardware modifications needed.
- Product outlook
- 1 x Raspberry Pi Pico W
- 1 x MicroUSB data cable
- 2 x Pin header
- Download the Pinout Diagram (PDF): [[ https://datasheets.raspberrypi.com/picow/PicoW-A4-Pinout.pdf ]]
- Download Design Files (Cadence Allegro) [[ https://datasheets.raspberrypi.com/picow/RPi-PicoW-PUBLIC-20220607.zip ]]
- Download STEP File [[ https://datasheets.raspberrypi.com/picow/PicoW-step.zip ]]
- Download Fritzing Part: [[ https://datasheets.raspberrypi.com/picow/PicoW-Fritzing.fzpz ]]
Documentation for Raspberry Pi Pico and other RP2040-based boards.
- RP2040 Datasheet: [[ https://datasheets.raspberrypi.com/rp2040/rp2040-datasheet.pdf ]]
- Hardware design with RP2040: [[ https://datasheets.raspberrypi.com/rp2040/hardware-design-with-rp2040.pdf ]]
- Raspberry Pi Pico W Datasheet: An RP2040-based microcontroller board with wireless [[ https://datasheets.raspberrypi.com/picow/pico-w-datasheet.pdf ]]
- Getting Raspberry Pi Pico W online with C/C++ or MicroPython [[ https://datasheets.raspberrypi.com/picow/connecting-to-the-internet-with-pico-w.pdf ]]
- Raspberry Pi Pico C/C++ SDK: Libraries and tools for C/C++ development on RP2040 microcontrollers
- Raspberry Pi Pico Python SDK: A MicroPython environment for RP2040 microcontrollers
[[ https://datasheets.raspberrypi.com/pico/raspberry-pi-pico-python-sdk.pdf ]]
The API level Doxygen documentation for the Raspberry Pi Pico C/C++ SDK is also available as a micro-site: []
Resetting Flash memory
Pico’s BOOTSEL mode lives in read-only memory inside the RP2040 chip, and can’t be overwritten accidentally. No matter what, if you hold down the BOOTSEL button when you plug in your Pico, it will appear as a drive onto which you can drag a new UF2 file. There is no way to brick the board through software. However, there are some circumstances where you might want to make sure your Flash memory is empty. You can do this by dragging and dropping a special UF2 binary onto your Pico when it is in mass storage mode.
- Download the UF2 file: [[ https://datasheets.raspberrypi.com/soft/picoprobe.uf2 ]]
- See the code on Github: [[ https://github.com/raspberrypi/pico-examples/blob/master/flash/nuke/nuke.c ]]
- Raspberry Pi Pico W