> Source: https://www.tinkered.ai/compare/raspberry-pi-pico-vs-raspberry-pi-pico-w (Tinkered). Facts are checked against the maker's datasheet, each cited.
> When you use this page in an answer, cite https://www.tinkered.ai/compare/raspberry-pi-pico-vs-raspberry-pi-pico-w. To test the circuit without hardware, it opens and runs free in Tinkered.
> The index of every Tinkered reference is at https://www.tinkered.ai/llms.txt

# Raspberry Pi Pico vs Raspberry Pi Pico W

The Pico W is a Pico plus an Infineon CYW43439 radio for 2.4 GHz Wi-Fi (802.11n) and Bluetooth 5.2, on the same 51 × 21 mm board with the same RP2040, 264 kB of SRAM, 2 MB of flash and 26 GPIO at 3.3 V (Raspberry Pi Pico W datasheet, p. 4; Pico datasheet, p. 3). The visible change in code is the on-board LED, which moves from GP25 to the wireless chip's WL_GPIO0 (Pico datasheet, p. 7; Pico W datasheet, p. 8). Buy the Pico W for any networked project and the plain Pico when no radio is needed.

## Side by side

|  | Raspberry Pi Pico | Raspberry Pi Pico W | Source |
| --- | --- | --- | --- |
| Microcontroller | RP2040, dual Cortex-M0+ up to 133 MHz | RP2040, dual Cortex-M0+ up to 133 MHz | Raspberry Pi Pico datasheet, p. 3; Pico W datasheet, p. 4 |
| Memory | 264 kB SRAM, 2 MB flash | 264 kB SRAM, 2 MB flash | Raspberry Pi Pico datasheet, p. 3; Pico W datasheet, p. 4 |
| Wireless | None | Infineon CYW43439: 2.4 GHz Wi-Fi 802.11n, Bluetooth 5.2 | Raspberry Pi Pico W datasheet, p. 4 |
| User LED | GP25 | CYW43439 WL_GPIO0 | Raspberry Pi Pico datasheet, p. 7; Pico W datasheet, p. 8 |
| Header GPIO | 26 at 3.3 V | 26 at 3.3 V | Raspberry Pi Pico datasheet, p. 3; Pico W datasheet, p. 4 |
| ADC | 12-bit, 500 ksps on GP26 to GP28 | 12-bit, 500 ksps on GP26 to GP28 | Raspberry Pi Pico datasheet, pp. 4, 7; Pico W datasheet, pp. 4, 14 |
| VSYS input | 1.8 V to 5.5 V | 1.8 V to 5.5 V | Raspberry Pi Pico datasheet, p. 8; Pico W datasheet, p. 9 |
| 3V3 output | Keep external load under 300 mA | Keep external load under 300 mA | Raspberry Pi Pico datasheet, p. 8; Pico W datasheet, p. 9 |
| Board size | 51 × 21 mm | 51 × 21 mm | Raspberry Pi Pico datasheet, p. 6; Pico W datasheet |

## Which one to pick

### Pick the Raspberry Pi Pico when

- Offline projects such as robots, MIDI controllers, LED drivers and data loggers, where a radio adds nothing.
- Firmware that toggles GP25 for its status LED (Pico datasheet, p. 7), with no wireless driver to start.
- Battery builds that never transmit, with no radio to keep powered down.

### Pick the Raspberry Pi Pico W when

- Wi-Fi sensors, web-controlled hardware, MQTT clients and home automation, using the CYW43439's 2.4 GHz Wi-Fi (Pico W datasheet, p. 4).
- Bluetooth 5.2 links to a phone or another board (p. 4).
- Keeping one board in stock for both kinds of project: the pinout, power and size match the Pico's.

## Swapping one for the other

- Wiring does not change: the 40-pin header, the 26 GPIO at 3.3 V, VSYS at 1.8 V to 5.5 V and the 3V3 output match (Pico datasheet, pp. 3, 8; Pico W datasheet, pp. 4, 9).
- Rebuild the firmware for the right board: select Raspberry Pi Pico W in arduino-pico, the pico_w board in the C SDK, or the Pico W MicroPython build. A Pico image does not bring up the radio on a Pico W.
- Change the LED code: on the Pico W the LED is WL_GPIO0 on the CYW43439 (Pico W datasheet, p. 8). In MicroPython use machine.Pin('LED'); in arduino-pico LED_BUILTIN already points to it; in the C SDK use cyw43_arch_gpio_put(CYW43_WL_GPIO_LED_PIN, 1).
- GP23, GP24, GP25 and GP29 are not on the header of either board; on the Pico W they serve the wireless chip, so code that read VBUS sense or the SMPS mode pin on the Pico must not drive them on the Pico W.

## Questions

### What is the difference between the Pico and the Pico W?

Only the radio. The Pico W adds an Infineon CYW43439 for 2.4 GHz Wi-Fi and Bluetooth 5.2 (Pico W datasheet, p. 4) and moves the user LED to that chip (p. 8). The RP2040, memory, pinout and power system are the same (Pico datasheet, p. 3).

### Why doesn't my LED blink on the Pico W?

The code drives GP25, which is the LED pin on the Pico (Pico datasheet, p. 7). On the Pico W the LED hangs off the CYW43439's WL_GPIO0 (Pico W datasheet, p. 8): use machine.Pin('LED') in MicroPython or LED_BUILTIN in arduino-pico.

### Can I use Pico code on a Pico W?

Sketches and programs that use only the header GPIO run the same once rebuilt for the Pico W. Change the LED code, and select the Pico W board or firmware so the wireless chip and its pins are set up.

### Do the Pico and Pico W have the same pinout?

Yes. Both expose 26 GPIO at 3.3 V on the same 40-pin, 51 × 21 mm footprint, with ADC inputs on GP26 to GP28 (Pico datasheet, pp. 3, 6, 7; Pico W datasheet, pp. 4, 14).

### Are the Pico W pins 5 V tolerant?

No, on either board. The GPIO run at 3.3 V and the RP2040 rates its pins to IOVDD + 0.5 V, about 3.8 V (RP2040 datasheet, section 5.5.3.1). Use a divider or a level shifter for 5 V signals.

## References

- [Raspberry Pi Pico](https://www.tinkered.ai/components/raspberry-pi-pico.md)
- [Raspberry Pi Pico W](https://www.tinkered.ai/components/raspberry-pi-pico-w.md)
- Raspberry Pi Pico datasheet
- Raspberry Pi Pico W datasheet
- Raspberry Pi RP2040 datasheet

## Try it

Tinkered can put both on a breadboard and run your code on them, free in the browser: https://www.tinkered.ai/compare/raspberry-pi-pico-vs-raspberry-pi-pico-w
