Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Raspberry Pi Pico: Examples, Pinouts, and Specs

Image of Raspberry Pi Pico
Cirkit Designer LogoDesign with Raspberry Pi Pico in Cirkit Designer

Introduction

The Raspberry Pi Pico is a compact, low-cost microcontroller board built around the Raspberry Pi RP2040 chip. It features dual-core ARM Cortex-M0+ processors, 264KB of SRAM, and 2MB of onboard flash memory. Designed for versatility, the Pico is ideal for a wide range of applications, including IoT projects, robotics, and embedded systems. Its GPIO pins allow seamless interfacing with sensors, actuators, and other devices, while support for programming languages like MicroPython and C/C++ makes it accessible to both beginners and experienced developers.

Explore Projects Built with Raspberry Pi Pico

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Wi-Fi Controlled RGB Lighting with Raspberry Pi Pico W
Image of Smart Home Automation 1: A project utilizing Raspberry Pi Pico in a practical application
This circuit features a Raspberry Pi Pico W microcontroller connected to an RGB LED through GPIO pins GP17, GP18, and GP19 for controlling the blue, green, and red channels, respectively. A resistor is connected between the 3V3 OUT pin of the Pico and the common cathode of the RGB LED to limit the current. The embedded code suggests the Pico W is configured for Wi-Fi connectivity and MQTT communication to control the LED and possibly other peripherals not shown in the circuit, with additional functionality for sensor monitoring and display output.
Cirkit Designer LogoOpen Project in Cirkit Designer
Raspberry Pi Pico-Based Navigation System with Bluetooth and GPS
Image of sat_dish: pwm application: A project utilizing Raspberry Pi Pico in a practical application
This circuit features a Raspberry Pi Pico microcontroller interfaced with multiple peripherals for navigation and control. It includes an HC-05 Bluetooth module for wireless communication, an HMC5883L compass for magnetic heading detection, a GPS NEO 6M module for location tracking, and an SG90 servomotor for actuation. The Pico manages data exchange with the GPS and compass via serial connections, controls the servomotor, and communicates wirelessly through the HC-05 module.
Cirkit Designer LogoOpen Project in Cirkit Designer
Raspberry Pi Pico-Based Navigation Assistant with Bluetooth and GPS
Image of sat_dish: compass example: A project utilizing Raspberry Pi Pico in a practical application
This circuit features a Raspberry Pi Pico microcontroller interfaced with an HC-05 Bluetooth module for wireless communication, an HMC5883L compass module for magnetic field measurement, and a GPS NEO 6M module for location tracking. The Pico is configured to communicate with the HC-05 via serial connection (TX/RX), with the compass module via I2C (SCL/SDA), and with the GPS module via serial (TX/RX). Common power (VCC) and ground (GND) lines are shared among all modules, indicating a unified power system.
Cirkit Designer LogoOpen Project in Cirkit Designer
Raspberry Pi Pico W-Based Smart Home Automation System with Motion Detection and Environmental Monitoring
Image of Smart Home Automation 1: A project utilizing Raspberry Pi Pico in a practical application
This circuit features a Raspberry Pi Pico W microcontroller connected to various sensors and actuators, including a DHT11 temperature and humidity sensor, an RCWL-0516 microwave radar motion sensor, a photocell (LDR) with a resistor for light detection, and a two-channel relay controlling a bulb and a fan. The microcontroller runs code to monitor environmental conditions and motion, displaying information on an LCD and allowing remote control via MQTT messages over Wi-Fi. It supports both automatic sensor-based operation and remote app control, with pushbuttons to switch between modes.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Raspberry Pi Pico

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Smart Home Automation 1: A project utilizing Raspberry Pi Pico in a practical application
Wi-Fi Controlled RGB Lighting with Raspberry Pi Pico W
This circuit features a Raspberry Pi Pico W microcontroller connected to an RGB LED through GPIO pins GP17, GP18, and GP19 for controlling the blue, green, and red channels, respectively. A resistor is connected between the 3V3 OUT pin of the Pico and the common cathode of the RGB LED to limit the current. The embedded code suggests the Pico W is configured for Wi-Fi connectivity and MQTT communication to control the LED and possibly other peripherals not shown in the circuit, with additional functionality for sensor monitoring and display output.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of sat_dish: pwm application: A project utilizing Raspberry Pi Pico in a practical application
Raspberry Pi Pico-Based Navigation System with Bluetooth and GPS
This circuit features a Raspberry Pi Pico microcontroller interfaced with multiple peripherals for navigation and control. It includes an HC-05 Bluetooth module for wireless communication, an HMC5883L compass for magnetic heading detection, a GPS NEO 6M module for location tracking, and an SG90 servomotor for actuation. The Pico manages data exchange with the GPS and compass via serial connections, controls the servomotor, and communicates wirelessly through the HC-05 module.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of sat_dish: compass example: A project utilizing Raspberry Pi Pico in a practical application
Raspberry Pi Pico-Based Navigation Assistant with Bluetooth and GPS
This circuit features a Raspberry Pi Pico microcontroller interfaced with an HC-05 Bluetooth module for wireless communication, an HMC5883L compass module for magnetic field measurement, and a GPS NEO 6M module for location tracking. The Pico is configured to communicate with the HC-05 via serial connection (TX/RX), with the compass module via I2C (SCL/SDA), and with the GPS module via serial (TX/RX). Common power (VCC) and ground (GND) lines are shared among all modules, indicating a unified power system.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Smart Home Automation 1: A project utilizing Raspberry Pi Pico in a practical application
Raspberry Pi Pico W-Based Smart Home Automation System with Motion Detection and Environmental Monitoring
This circuit features a Raspberry Pi Pico W microcontroller connected to various sensors and actuators, including a DHT11 temperature and humidity sensor, an RCWL-0516 microwave radar motion sensor, a photocell (LDR) with a resistor for light detection, and a two-channel relay controlling a bulb and a fan. The microcontroller runs code to monitor environmental conditions and motion, displaying information on an LCD and allowing remote control via MQTT messages over Wi-Fi. It supports both automatic sensor-based operation and remote app control, with pushbuttons to switch between modes.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • IoT devices and home automation systems
  • Robotics and motor control
  • Data logging and environmental monitoring
  • Prototyping and educational projects
  • Signal processing and real-time applications

Technical Specifications

Key Technical Details

  • Microcontroller: Raspberry Pi RP2040
  • Processor: Dual-core ARM Cortex-M0+ @ 133 MHz
  • Memory: 264KB SRAM, 2MB onboard QSPI flash
  • GPIO Pins: 26 multi-function pins (3.3V logic level)
  • Communication Protocols: I2C, SPI, UART, PWM, ADC
  • Power Supply: 1.8V to 5.5V (via micro-USB or VSYS pin)
  • USB: Micro-USB 1.1 (device and host support)
  • Operating Temperature: -20°C to +85°C
  • Dimensions: 51mm x 21mm

Pin Configuration and Descriptions

The Raspberry Pi Pico has 40 pins, including power, ground, and GPIO pins. Below is a summary of the pin configuration:

Pin Number Pin Name Description
1 GP0 GPIO Pin 0, supports I2C0 SDA, UART0 TX, PWM
2 GP1 GPIO Pin 1, supports I2C0 SCL, UART0 RX, PWM
3 GND Ground
4 GP2 GPIO Pin 2, supports SPI0 SCK, PWM
5 GP3 GPIO Pin 3, supports SPI0 TX, PWM
36 3V3 3.3V Power Output
39 VSYS Power Input (1.8V to 5.5V)
40 GND Ground

For a complete pinout diagram, refer to the official Raspberry Pi Pico documentation.

Usage Instructions

How to Use the Raspberry Pi Pico in a Circuit

  1. Powering the Pico:

    • Connect the Pico to a computer or power source via the micro-USB port.
    • Alternatively, supply power through the VSYS pin (1.8V to 5.5V).
  2. Programming the Pico:

    • Install MicroPython or C/C++ SDK on your computer.
    • Hold the BOOTSEL button while connecting the Pico to your computer to enter USB mass storage mode.
    • Drag and drop the firmware file (e.g., MicroPython .uf2 file) onto the Pico's storage drive.
  3. Connecting Components:

    • Use the GPIO pins to interface with sensors, actuators, or other devices.
    • Ensure that all connected components operate at 3.3V logic levels to avoid damage.

Example: Blinking an LED with MicroPython

The following example demonstrates how to blink an LED connected to GPIO pin 15:


Import the machine and time modules

import machine import time

Configure GPIO pin 15 as an output pin

led = machine.Pin(15, machine.Pin.OUT)

Blink the LED in an infinite loop

while True: led.value(1) # Turn the LED on time.sleep(1) # Wait for 1 second led.value(0) # Turn the LED off time.sleep(1) # Wait for 1 second


Important Considerations and Best Practices

  • Always check the voltage and current ratings of connected components to avoid damage.
  • Use level shifters if interfacing with 5V logic devices.
  • Avoid drawing excessive current from the 3.3V pin (maximum 300mA).
  • Use decoupling capacitors for stable operation in noisy environments.

Troubleshooting and FAQs

Common Issues and Solutions

  1. Pico Not Detected by Computer:

    • Ensure the BOOTSEL button is held down while connecting the Pico to the computer.
    • Check the USB cable (some cables only support charging, not data transfer).
  2. Program Not Running After Power Cycle:

    • Ensure the correct firmware file (e.g., .uf2) is loaded onto the Pico.
    • Verify that the program is saved to the Pico's flash memory.
  3. GPIO Pin Not Responding:

    • Check the pin configuration in your code.
    • Ensure the connected device is functioning and properly wired.
  4. Overheating or Power Issues:

    • Verify that the power supply voltage is within the acceptable range (1.8V to 5.5V).
    • Avoid short circuits or excessive current draw from GPIO pins.

FAQs

  • Can I use the Raspberry Pi Pico with Arduino IDE?
    Yes, the Pico is compatible with the Arduino IDE. Install the RP2040 board package to get started.

  • What programming languages are supported?
    The Pico supports MicroPython, C/C++, and other languages like CircuitPython.

  • How do I reset the Pico to factory settings?
    Reflash the original firmware by entering USB mass storage mode and loading the appropriate .uf2 file.

By following this documentation, you can effectively use the Raspberry Pi Pico for a variety of projects and applications.