Introduction to Raspberry Pi Pico – a Microprocessor like Microcontroller
The name Raspberry Pi has been popular for quite some time in the industry, among hobbyists and enthusiasts, and has built up an image where this significantly small circuit board which has an SD card slot, a couple USB ports, maybe an ethernet port and an HDMI, display connectors which is able to run a linux-based operating system on it. In short, Raspberry Pi is known for its line of microprocessors, and not for microcontrollers.
But this time around, the company has developed their very own microcontroller for the makers, and has designed a development board to bring it to them – The raspberry Pi Pico!
Many developers prefer the heavy computationally expensive tasks to be done by a microprocessor, and timing related, time critical, simple I/O tasks to be put on to a microcontroller. Until now, Raspberry Pis have been providing the tech community with the processors, and now, they have completed their lineup by adding a controller to the mix as well.
Raspberry Pi Pico In a nutshell
The Pico is a microcontroller development board from Raspberry Pi, which is announced to have a mere $4 of price tag. The pico is going to have its own uses in the world of electronics since there are certain tasks that are better suited for a microcontroller instead of a microprocessor; such as critical timing and interrupt capabilities.(if you’re confused what microcontrollers and microprocessors are, be sure to read this microcontroller vs microprocessor comparison done by CircuitsDigest for more information)
The board comes in a small, breadboard-friendly package which almost has the same footprint as an Arduino Nano.
Raspberry Pi Pico technical specifications
Whenever a new microcontroller is released, everyone is looking for its tech specs such as the speed, GPIO count, special peripherals etc. So, here are the key features of the Raspberry Pi Pico (RP2040 microcontroller)
- Microcontroller – Raspberry Pi RP2040 Dual-core Arm Cortex-M0+ architecture, clocked at 133MHz
- Memory Features
- 264KB on-chip RAM
- Upto 16MB of external RAM connected via dedicated QSPI bus (2MB on-board)
- DMA controller for faster memory access
- I/O
- 26x GPIO pins
- 3x Analog Inputs
- Hardware Peripherals
- 2x UART modules
- 2x SPI controllers
- 2x i2C controllers
- 16x PWM channels
- 1x USB1.1 with PHY (host and device support)
- 8x Programmable IO state machines (can be used to implement custom, non-native protocols)
- Accelerated Integer and Floating point arithmetic libraries
- Power Requirements
- 1.8V-5.5VDC
- Low Power Modes (LPM) – sleep and dormant
- Built-in sensors
- On-chip RTC
- Temperature sensor
- Special hardware features
- USB Type-C connector (Data+Power)
- On-board LED
- Boot select pushbutton
- Castellated pinout for easy surface-mounting
- 0.1” pitched pins
How about programming the Raspberry Pi Pico?
Like every other microcontroller out there, Raspberry Pi has made a C/C++ toolchain for the RP2040 microcontroller as well. However, with the sheer power this little guy packs, this is also capable of running MicroPython framework as well. Micropython is a full fledged Python compiler and runtime that can run on bare-metal microcontrollers.
Especially, this device supports firmware update over the USB mounted as a mass-storage device. Therefore, by holding BOOTSEL button when plugging in the Pico, you can enter the mass-storage mode and simply copy the compiled binary to the mounted drive, and reboot the Pico to start running the code!
For a Getting Started guide, check out Raspberry Pi foundation’s Raspberry Pi Pico – Getting Started Guide
For example projects done with Raspberry Pi Pico, visit the projects section by Raspberry Pi.