← Wiki · Component

Raspberry Pi Pico and RP2040 boards

The Pico is a cheap RP2040 board with 26 usable GPIOs, 3.3 V logic and a simple power scheme; the RP2040-Zero packs the same chip into 23.5 × 18 mm.

What it does#

The Pico carries the RP2040 (two Cortex-M0+ cores), 2 MB flash, the 12 MHz crystal and a buck-boost regulator. It is programmed by drag-and-drop over USB (hold BOOTSEL while plugging in) with MicroPython, CircuitPython, C/C++ or QMK/KMK.

Example circuit: LED on GP15, button to GND on GP14, RESET button from RUN to GND. Unused pins carry no-connect marks; 3V3 (pin 36) feeds the LED's decoupling.
LED on GP15, button to GND on GP14, RESET button from RUN to GND. Unused pins carry no-connect marks; 3V3 (pin 36) feeds the LED's decoupling. Open the pico_led_button example from this page in PCB Canvas: “Insert into my schematic”.

Power pins#

  • VBUS (40): USB 5 V when plugged in.
  • VSYS (39): main input, 1.8–5.5 V; feed a battery or 5 V here (through a Schottky diode if USB may also be connected).
  • 3V3 (36): regulator output for your parts; keep the load moderate (Raspberry Pi recommends under 300 mA).
  • 3V3_EN (37): pull low to switch the regulator off.
  • RUN (30): pull low to reset: put a RESET button here.

Pitfalls#

  • GP23, GP24, GP25 and GP29 are used on the Pico itself (regulator mode, VBUS sense, LED, VSYS sense) and are not on the edge pins.
  • No 5 V tolerance on any GPIO.
  • ADC_VREF and AGND: leave them unconnected unless you need a better ADC.

Footprint#

Through-hole (on headers) or castellated SMD (soldered flat). The RP2040-Zero is castellated, 20 GPIOs on the edge. Hand-soldered.