Raspberry Pi Pico Pinout Guide: A Comprehensive Overview

 

Raspberry Pi Pico is a powerful yet affordable microcontroller board based on the RP2040 chip, offering a range of GPIO (General Purpose Input/Output) pins for versatile applications. Whether you’re a hobbyist, student, or developer, understanding the Raspberry Pi Pico pinout is essential for your projects. In this guide, we’ll explore the pinout diagram, functionalities, and how to use them effectively.


Raspberry Pi Pico Pinout Diagram

The Raspberry Pi Pico comes with a total of 40 pins, including 26 multi-function GPIO pins that support various interfaces. Below is a brief classification:

  • Power Pins: 3.3V, 5V (VSYS), and GND
  • GPIO Pins: 26 multi-functional pins
  • Analog Input Pins: 3 dedicated ADC pins
  • Communication Interfaces: SPI, I2C, UART
  • Debugging Interface: SWD (Serial Wire Debug)

Pin Layout:

Complete Raspberry Pi Pico Pinout Table:

Pin Number Pin Name Function
1 GP0 UART0 TX, I2C0 SDA, SPI0 RX
2 GP1 UART0 RX, I2C0 SCL, SPI0 CSn
3 GND Ground
4 GP2 UART1 TX, I2C1 SDA, SPI0 SCK
5 GP3 UART1 RX, I2C1 SCL, SPI0 TX
6 GP4 UART1 CTS, I2C0 SDA, SPI0 RX
7 GP5 UART1 RTS, I2C0 SCL, SPI0 CSn
8 GND Ground
9 GP6 UART1 TX, I2C1 SDA, SPI0 SCK
10 GP7 UART1 RX, I2C1 SCL, SPI0 TX
11 GP8 UART1 CTS, I2C0 SDA, SPI1 RX
12 GP9 UART1 RTS, I2C0 SCL, SPI1 CSn
13 GND Ground
14 GP10 UART1 TX, I2C1 SDA, SPI1 SCK
15 GP11 UART1 RX, I2C1 SCL, SPI1 TX
16 GP12 UART0 TX, I2C0 SDA, SPI1 RX
17 GP13 UART0 RX, I2C0 SCL, SPI1 CSn
18 GND Ground
19 GP14 UART0 TX, I2C1 SDA, SPI1 SCK
20 GP15 UART0 RX, I2C1 SCL, SPI1 TX
21 GP16 PWM0A, I2C0 SDA, SPI0 RX
22 GP17 PWM0B, I2C0 SCL, SPI0 CSn
23 GND Ground
24 GP18 PWM1A, I2C1 SDA, SPI0 SCK
25 GP19 PWM1B, I2C1 SCL, SPI0 TX
26 GP20 PWM2A, I2C0 SDA, SPI1 RX
27 GP21 PWM2B, I2C0 SCL, SPI1 CSn
28 GND Ground
29 GP22 PWM3A, I2C1 SDA, SPI1 SCK
30 RUN Enable (pull high to run)
31 GP26 ADC0
32 GP27 ADC1
33 GP28 ADC2
34 GND Ground
35 3V3_EN 3.3V Regulator Enable
36 3V3_OUT 3.3V Output
37 GND Ground
38 VSYS Main Input Voltage
39 VBUS USB Power Input
40 GND Ground

This table provides a complete reference to the Raspberry Pi Pico pinout, allowing you to effectively utilize its capabilities for various projects.

32 GP27 ADC1
33 GP28 ADC2
34 GND Ground
35 3V3_EN 3.3V Regulator Enable
36 3V3_OUT 3.3V Output
37 GND Ground
38 VSYS Main Input Voltage
39 VBUS USB Power Input
40 GND Ground

This table provides a complete reference to the Raspberry Pi Pico pinout, allowing you to effectively utilize its capabilities for various projects.


Understanding Raspberry Pi Pico Pin Functions

1. Power Pins

  • VSYS (Pin 39): Main input voltage (1.8V to 5.5V)
  • 3V3 (Pin 36): Regulated 3.3V output
  • GND: Common ground

2. GPIO (General Purpose Input/Output) Pins

Raspberry Pi Pico features 26 GPIO pins, which can function as digital input/output or be configured for other communication protocols.

3. Analog Input Pins (ADC)

The Pico has three analog-capable pins (GP26, GP27, GP28) with a 12-bit resolution.

4. Communication Protocols

  • UART (Universal Asynchronous Receiver-Transmitter): GP0, GP1, GP4, GP5, GP8, GP9, GP12, GP13
  • I2C (Inter-Integrated Circuit): GP0, GP1, GP2, GP3, GP4, GP5
  • SPI (Serial Peripheral Interface): GP2, GP3, GP4, GP5, GP6, GP7

How to Use Raspberry Pi Pico GPIO Pins

1. Blinking an LED with Raspberry Pi Pico

To test GPIO functionality, let’s write a simple MicroPython program to blink an LED on GP15.

from machine import Pin
import time

led = Pin(15, Pin.OUT)

while True:
led.value(1)
time.sleep(1)
led.value(0)
time.sleep(1)

Save this script as main.py on your Raspberry Pi Pico and run it via Thonny IDE.


Conclusion

The Raspberry Pi Pico pinout provides extensive possibilities for various applications. Whether you’re working on IoT projects, robotics, or sensor-based applications, understanding pin functionalities will help you maximize the potential of this microcontroller.

Let us know in the comments how you’re using Raspberry Pi Pico in your projects!

Share This Post:

Leave a Comment