Raspberry Pi Pico WH: The Wireless Workhorse for Your Next Project
Explore the capabilities of the Raspberry Pi Pico WH, a powerful and versatile microcontroller board with integrated Wi-Fi and Bluetooth connectivity.

The Raspberry Pi Pico WH is a low-cost, high-performance microcontroller board built around the Raspberry Pi RP2040 chip. Building upon the success of the original Pico, the WH variant adds crucial wireless capabilities, making it ideal for IoT projects and connected applications. It retains the familiar form factor and extensive I/O of its predecessor while introducing 2.4GHz Wi-Fi and Bluetooth 5.2.
At the heart of the Pico WH is the RP2040, a custom-designed chip by Raspberry Pi. This dual-core ARM Cortex-M0+ processor offers impressive performance for its class, running at up to 133MHz. The chip also features a unique Programmable I/O (PIO) subsystem, allowing for the creation of custom hardware interfaces and protocols. This flexibility, combined with ample RAM and flash storage, makes the RP2040 a compelling choice for embedded development.
Positioned as an accessible yet powerful entry into the world of microcontrollers, the Pico WH is a significant addition to the Raspberry Pi family, which is traditionally known for its single-board computers. While the Raspberry Pi 4 and others are designed for desktop-like computing, the Pico series focuses on real-time control, sensor interfacing, and embedded applications. The WH model specifically targets makers, students, and engineers who need wireless connectivity without the complexity or power consumption of a full Linux-based system.
This board is well-suited for a wide range of projects, from simple sensor data loggers and home automation controllers to more complex robotics and wearable devices. Its combination of processing power, extensive I/O, and wireless communication makes it a versatile platform for learning embedded programming and building connected hardware prototypes. The readily available documentation and community support further enhance its appeal for beginners and experienced developers alike.
Watch
Related video, embedded from YouTube.
Specifications
| Microcontroller / SoC | Raspberry Pi RP2040 |
| Architecture | Dual-core ARM Cortex-M0+ |
| Clock speed | Up to 133MHz |
| Flash / Storage | 2MB QSPI Flash (on-board) |
| RAM / SRAM | 264KB on-chip SRAM |
| Operating voltage | 3.3V |
| Digital I/O pins | 26 (multifunction) |
| Analog / ADC | 3x 12-bit ADC inputs (shared with GPIO) |
| PWM | All 26 GPIO pins support hardware PWM |
| Connectivity | 2.4GHz Wi-Fi (802.11n), Bluetooth 5.2 |
| USB | Micro USB (for power and data/programming) |
| Power input | 5V via Micro USB, 1.8V-5.5V via VSYS pin |
| Dimensions | 51mm x 21mm |
Pinout & pin functions
| Pin | Function |
|---|---|
| 3V3 | 3.3V Power Output |
| GND | Ground |
| GP0 | GPIO, ADC0, UART0 TX, SPI0 TX, PWM |
| GP1 | GPIO, ADC1, UART0 RX, SPI0 RX, PWM |
| GP2 | GPIO, ADC2, UART0 RTS, SPI0 SCK, PWM |
| GP3 | GPIO, ADC3, UART0 CTS, SPI0 CSn, PWM |
| GP4 | GPIO, I2C1 SDA, SPI1 TX, PWM |
| GP5 | GPIO, I2C1 SCL, SPI1 RX, PWM |
| GP6 | GPIO, I2C0 SDA, SPI1 SCK, PWM |
| GP7 | GPIO, I2C0 SCL, SPI1 CSn, PWM |
| GP8 | GPIO, SPI1 TX, PWM |
| GP9 | GPIO, SPI1 RX, PWM |
| GP10 | GPIO, SPI1 SCK, PWM |
| GP11 | GPIO, SPI1 CSn, PWM |
| GP12 | GPIO, PWM |
| GP13 | GPIO, PWM |
| GP14 | GPIO, PWM |
| GP15 | GPIO, PWM |
| GP16 | GPIO, PWM |
| GP17 | GPIO, PWM |
| GP18 | GPIO, PWM |
| GP19 | GPIO, PWM |
| GP20 | GPIO, PWM |
| GP21 | GPIO, PWM |
| GP22 | GPIO, PWM |
| GP23 | GPIO, PWM |
| GP24 | GPIO, PWM |
| GP25 | GPIO, PWM |
| GP26 | GPIO, ADC0, PWM |
| GP27 | GPIO, ADC1, PWM |
| GP28 | GPIO, ADC2, PWM |
| GP29 | GPIO, ADC3, 3.3V Power Input (for internal regulator) |
| RUN | Reset pin (active low) |
| ADC_VREF | Analog-to-digital converter reference voltage |
| 3V3_EN | 3.3V Regulator Enable (active low) |
| VSYS | System power supply input (1.8V to 5.5V) |
| USB | Micro USB connector for power and data |
Wiring & circuit basics
The Raspberry Pi Pico WH operates at a logic level of 3.3V. This means that any sensors or components you connect should also be rated for 3.3V or have appropriate level shifting circuitry. Connecting 5V devices directly to GPIO pins can damage the RP2040 microcontroller. Power can be supplied via the Micro USB port, which typically provides 5V. Alternatively, the VSYS pin can accept a voltage range of 1.8V to 5.5V, allowing for battery power or other external sources. The on-board 3.3V regulator can supply up to 500mA, but for higher current draws, it's advisable to power the board directly via VSYS and have your external power supply handle the load.
When wiring an LED, connect the longer leg (anode) to a digital GPIO pin (e.g., GP15). Connect the shorter leg (cathode) to a current-limiting resistor (typically 220-330 ohms for a standard LED with 3.3V). Then, connect the other end of the resistor to a Ground (GND) pin. This configuration ensures that when the GPIO pin is set HIGH (3.3V), current flows through the resistor and LED to ground, illuminating it. The resistor prevents excessive current from flowing through the LED and damaging it or the Pico.
For an I2C sensor, you will need to connect its power (VCC) to a 3V3 pin on the Pico WH, its ground (GND) to a GND pin, its SDA (Serial Data) line to one of the I2C SDA pins (e.g., GP6 for I2C0), and its SCL (Serial Clock) line to the corresponding I2C SCL pin (e.g., GP7 for I2C0). Most I2C sensors also require pull-up resistors on the SDA and SCL lines, which are often included on breakout boards but may need to be added externally if using a bare sensor. The Pico WH has internal pull-ups that can be enabled in software, but external ones are sometimes recommended for reliability.
Programming & getting started
The Raspberry Pi Pico WH is highly versatile in its programming options. For beginners and rapid prototyping, MicroPython and CircuitPython offer an accessible Python-based environment. You can install the UF2 bootloader by holding the BOOTSEL button while plugging in the Pico WH, then drag and drop the appropriate firmware file onto the mounted drive. For more performance-critical applications or C/C++ development, the official C/C++ SDK and the Pico-SDK are available, often used with tools like CMake. The Arduino IDE also offers excellent support for the Pico and Pico W through board manager installations, allowing you to leverage familiar Arduino libraries and sketches.
To get started with MicroPython, download the latest MicroPython firmware for the Pico WH from the official MicroPython website. Connect the Pico WH to your computer via USB while holding down the BOOTSEL button. It will appear as a mass storage device. Drag and drop the downloaded `.uf2` firmware file onto this drive. Once the Pico WH reboots, you can connect to it using a serial terminal program (like Thonny IDE, PuTTY, or screen) and start writing and running Python code.