(Image credit: Raspberry Pi)
I’ve been a bit obsessed with the RP2040 chip. I want to build around the chip. So, I put together a list of projects I like using the RP2040 as inspiration to us all.
Instead of working with a raw chip, you can get one on the easy to use Raspberry Pi Pico board at this link. That's where I'd start.
Raspberry Pi’s RP2040 microcontroller was introduced in January of 2021 and has quickly become one of the most used microcontrollers for diverse projects that range from IoT devices to wrist-mounted wearables. Powered by dual ARM Cortex-M0+ processors and outfitted with a programmable set of I/Os, the microcontroller makes an excellent platform for any number of applications. In this roundup, we will look at some of the more interesting RP2040 projects created over the last year by hobbyists, engineers and educators.
RP2040 Module
The module offers decreased spacing over the Raspberry Pi Pico, making it slimmer for projects with limited space. (Image credit: Sindre Hovland via Hackster.io)
The RP2040 is a capable chip that can be used in any number of projects; however it requires a PCB to take advantage of its many features. While the chip is featured in Raspberry Pi’s Pico development board, others have designed custom PCBs to better suit their needs, which is what Sindre Hovland did with his RP2040 Module.
The Pico board was a bit big for what he needed, so he designed a module that was slimmer than Raspberry Pi’s offering while still maintaining all of the chip’s functions. Sindre designed the module using Fusion 360, which measures just 11.5mm wide by 18mm long while still retaining access to the hand-solderable pins on the edges of the module.
IoTPi
The IoTPi board is outfitted with an RP2040 chip and ESP8266 microcontroller and features multiple relays for any number of applications. (Image credit: Ashish via Kickstarter)
The IoTPi industrial IoT development board was launched by Ashish on Kickstarter last year and is an ideal platform for projects that require relays. As the name implies, the board is designed for industrial IoT applications and comes equipped with an RP2040, which controls 4 to 6 relays, and an ESP8266 MCU that provides wireless communication via Wi-Fi.
The board is outfitted with an isolated RS485 Port, isolated power supply, photocoupler and AC/DC converter. It also packs a 2 Pin screw terminal for a 5V power supply, USB Micro port, programmable 5-pin header, and boot/reset buttons.
Arduino RP2040 Standalone IoT Computer
The IoT Standalone Computer features a color display, keyboard, printer and more. (Image credit: sl001 via Hackster.io)
The IoT Standalone Computer is designed by German engineer sl001 and takes advantage of the BASIC programming language, a throwback to 80s nostalgia when programming was a bit easier than today. The computer is designed around the Arduino RP2040 Connect and features an SD card filesystem, 480x320 color display with 30x20 text characters, and a 16x16 default font. It also packs a real-time clock and a PS2 keyboard for input.
The IoT computer also features a thermal printer, which can be connected serially. Moreover, any 7 or 12V power supply can be used as the board packs an onboard 5V voltage regulator. It also offers 64kB of BASIC memory and 2GB of disk storage. Sl001 Designed the IoT Standalone Computer on a large breadboard with nearly no soldering involved, and he recommends using a 10 x 15cm board to maintain a stable hardware setup.
RP2040 Oscilloscope Shield
The Shield is an analog front-end that hosts an RP2040, which drives the Scoppy Oscilloscope app. (Image credit: Maker and IoT Ideas via Hackster.io)
Maker and IoT Ideas created his RP2040 Oscilloscope Analog Front-End shield based on designs provided by Scoppy. “The PCB is a dual-layer shield that is designed to be used with the MakerIOT2020 Raspberry Pi Pico Carrier board,” states Maker. “The Shield is directly powered by the carrier board. The original Analog Front-End #3 circuit featured a single channel input capable of accepting a -18.0v to 18.0v signal input. My changes were limited to doubling up on that circuit to provide two channels.”
Maker built the Shield from scratch using a stencil, making it easy for the solder-paste application. The components were then hot-air soldered to the board, complete with 2.54mm header pins needed for operation. The Shield was designed to be compatible with Maker’s custom Pico carrier board that’s designed to approximate an Arduino Uno layout. While the shield and board combo work as expected, resolution and frequency are limited.
XIAO RP2040
Saudin Dizdarevic used the XIAO RP2040 board as the foundation for his programmable logic controller. (Image credit: Saudin Dizdarevic via Hackster.io)
The XIAO RP2040 board is an exceptional microcontroller for any number of projects. Electronics engineer Saudin Dizdarevic won his at a Hangout & Nerdout webinar and decided to turn the board into a PLC (Programmable Logic Controller) using several software packages. These included the Beremiz4Pico Manager, Beremiz PLCopen editor and Arduino IDE.
The Beremiz4Pico Manager is an offshoot of the PLCopen editor, an Open Source IEC61131-3 Programmable Logic Controller package that supports programming in Ladder Diagram, Function Block Diagram, Structured Text, Instruction List and Sequential Function Block. While the software is designed to work with the Raspberry Pi Pico, the XIAO RP2040 uses identical architecture, so porting the software is an easy endeavor. With a bit of finessing and editing, Saudin got his RP2040-based PLC up and running without issue.
DS-Pi RP2040 Audio DSP Board
The DS-Pi is an open-source audio digital signal processing board designed around the RP2040 chip. (Image credit: YJ via Hackaday.io)
Creator YJ designed the DS-Pi Audio DSP Board around the RP2040 microcontroller. The board is an audio digital signal processing platform that can be used to perform filtering and other DSP processes on audio inputs and outputs. It also features Texas Instruments’ TLV320AIC3254 Stereo Audio CODEC with programmable miniDSP and MAX97220BETE+T headphone amplifier.
The custom board also packs 8x programmable IO (PIO) state machines for custom peripheral support and various I/Os, including 2× SPI, 2× I2C, 2× UART, 3× 12-bit ADC and 16× controllable PWM channels. Additional features include a Micro USB port, microphone input, headphone in/out, Line and PWM outputs, and a pair of headers with identical Raspberry Pi Pico board pinouts.
Picoth 2FA Auth with Pi Pico
The Picoth 2FA Authenticator was designed around the RPi Pico and features a Pimoroni RGB Keypad and Display Pack. (Image credit: Angainor Development via Hackaday.io)
Angainor Development took the RP2040 in Pico form and designed a handy 2FA authenticator that can handle many keys for various online services. Besides the Pico board, the Picoth authenticator features a DS3231 Arduino module, a Pimoroni RGB keypad with 16 keys, and a Display Pack for a handy readout. On the software end, Micropython doesn’t officially support the Pimoroni libraries needed for the Picoth to function correctly, and support for user C modules is broken, and the fork does not have SHA256, so Angainor needed to do a bit of finessing to get them to work. “I ended up handling yet another fork, based upon the official MicroPython with user C modules re-enabled, SHA256 and Pimoroni libs,” states Angainor on his Hackaday project site.
After tweaking a few parameters, Angainor configured the keypad and display using some of the RP2040 reference documents. It can also display the correct two-factor authentication TOTP code using the DS3231 RTC as a clock source.
PlainDAQ
The PlainDAQ is an add-on module that turns the Raspberry Pi Pico into a 4-channel oscilloscope. (Image credit: Alperen via Hackaday.io)
Developer Alperen Akkuncu designed a custom PCB for the Raspberry Pi Pico into a DAQ (Data Acquisition) 4-channel oscilloscope and single-channel function generator. The PlainDAQ offers tools and features to monitor and troubleshoot electronic projects. While this version of the board requires an add-on chip for wireless communication capabilities, adding a Pico W board will provide Wi-Fi natively.
The PlainDAQ features a 12-bit analog-to-digital converter (ADC), which produces less noise than other ADCs and can also generate waveforms. This allows users to visualize the recorded data in real time. Alperen also designed a pair of PCBs that act as low-pass and high-pass filters, which draw power from the PlainDAQ, eliminating the need for separate power sources.
ComputeDeck-B3 Cyberdeck
The ComputeDeck-B3 features a chorded keyboard with three mechanical switches for each finger and a handy forearm-mounted display. (Image credit: Nate Damen via Hackaday.io)
Nate Damen’s ComputeDeck-B3 is an arm-mounted cyberdeck that also makes use of the Raspberry Pi Pico board. The cyberdeck is equipped with a chorded keyboard, which is a computer input device that allows users to input commands using several keys at once. Pressing a combination of keys outputs specific characters according to a programmed map. Think of it like a stenographer’s keyboard that allows the user to speed-type sentences using a shortened number of keys.
The wrist-mounted rig uses a combination of metal ball tactile buttons, Kailh Choc key switches, and a 5-way navigation switch for moving and clicking a mouse cursor. The wrist portion of the system features a Pimoroni HyperPixel 4-inch TFT LCD touchscreen with a resolution of 800x480, which connects to the Zero 2 W. Power for the system is supplied by a pair of 18650 lithium-ion battery cells, which reside in the 3D printed case along with the rest of the hardware.
Conclusion
These are just a few of the projects that have been created using Raspberry Pi’s versatile RP2040 chip. The RP2040 provides enough processing power with its onboard Arm Cortex-M0+ and programmable I/O capabilities to drive both large and small projects. The chip’s peripheral set, programmability, and community support make it a favored choice for projects requiring efficient processing, interfacing capabilities, and ease of adaptability.
Have a story tip? Message me at: http://twitter.com/Cabe_Atwell