Earlier this year, Raspberry Pi Pico announced a new board integrated with its first in-house silicon tapeout RP2040 microcontroller. With the release of Raspberry Pi Pico and its improved capabilities through not only the RP2040 MCU but also the low-cost and low-power mode. Over the past couple of months, there have been a series of boards coming to the market with integrated RP2040 MCU for various kinds of applications like embedded machine learning, robotic and also implementing remote IoT applications through IoT development platforms. In this article, we will be looking at the top 5 projects on Raspberry Pi Pico. But before diving right into the projects, we will first analyze the technical specifications of the board.
(Image Credit: Raspberry Pi News)
Specifications of the Raspberry Pi Pico
- MCU: RP2040 microcontroller chip featuring Dual-core Arm Cortex-M0+ processor, flexible clock running up to 133 MHz
- Memory: 264KB on-chip SRAM
- Storage: 2MB onboard QSPI Flash
- Interfaces: 26 GPIO pins
- Peripherals 2x UART, 2x SPI controllers, 2x I2C controllers, 16x PWM channels, 1x USB 1.1 controller, and PHY, with host and device support, 8x PIO state machines
- Input power: 1.8–5.5V DC
- Operating temperature: -20°C to +85°C
The diminutive $4 Raspberry Pi Pico can demonstrate many more capabilities with add-on boards that can make it suitable for wireless remote applications using LoRaWAN communication protocol. With the bright future of embedded machine learning and IoT development platforms, it is helpful to look at some of the basic applications using them. Firstly, we will look at two embedded machine learning applications featured on Hackster.
Getting started with Embedded Machine Learning through Edge Impulse
To start implementing projects on embedded machine learning, the Edge Impulse platform has been one of the easiest platforms in the market. After the launch of the cheap $4 Raspberry Pi Pico, it would have been interesting to see the integration of Edge Impulse with the development board. To start, Dmitry Maslov has published a blog on setting up machine learning inference on the Raspberry Pi Pico through Edge Impulse which can be helpful for many projects. Dmitry Maslov has experience implementing several projects on embedded machine learning. The developer has provided the rock-paper-scissors classifier with a light sensor model which has been used for the project. Head to the project blog post for more details on getting started with an embedded machine learning project on Raspberry Pi Pico through the Edge Impulse platform.
(Image Credit: Dmitry Maslov)
Motion Recognition on Raspberry Pi Pico using Edge Impulse
Now you have been introduced to embedded machine learning, we will now move on to a more advanced motion recognition project. This project also uses the Edge Impulse platform which will make it easier to understand the capabilities of the platform.
Wouldn’t it be fascinating to actually run a motion recognition model on the Raspberry Pi Pico’s tiny RP2040 microcontroller? There have been many projects published on the web related to the machine learning inference on Raspberry Pi Pico. Marcelo Rovai has taught us to build a gesture recognition system that uses a trained TinyML model on Edge Impulse Studio. The gestures that are classified by the model are human-made gestures as up-down, left-right, and circle. Complete details on the hardware components required and the steps to train the model are provided by the developer on the project blog post.
(Image Credit: Marcelo Rovai)
Controlling Raspberry Pi Pico through Blynk IoT Development Platform
In this project, Slywester Bala and Piotr Lewandowski connect the Raspberry Pi Pico to the Wi-Fi while keeping the low-power mode on the MCU. After the board connects to the Wi-Fi, it sends an alert notification using the Blynk IoT development platform. This project fits the list of top projects because it gives a perfect introduction to implement an easy project using an IoT development platform. The project uses the Cricket Wi-Fi module for a reason which is a power-efficient way for remote applications. This can also allow the project to work on single batteries for months or even years.
(Image Credit: Slywester Bala and Piotr Lewandowski)
Blynk IoT development platform features support for a wide range of hardware from Arduino, Raspberry Pi to ESP32 boards. Also, through no-code web and app development, Blynk can make it very easy for developers to build applications. However, there are many other IoT development platforms like Toit and Particle which can also be a better choice depending on the hardware. In terms of SaaS development for IoT applications, Tuya Smart offers some simple APIs for a wide range of projects.
Robotic Application on Raspberry Pi Pico
Tomshardware has released a project on building a simple robot on the Raspberry Pi Pico that uses Kitronik’s Pico Motor Driver to interface the Pico and DC motors. Raspberry Pi Pico can be a good option for building simple robots because of the low-cost and low-power requirements. When building such robots, there are three phases in the build process, assembly of chassis, connecting electronic components, and interpreting the code.
(Image Credit: Tomshardware)
One of the added benefits of using Kitronik’s Pico Motor Driver is that it comes with its own MicroPython library that abstracts the control of the motors. The maker has provided the complete code along with the components utilized on the project build blog post.
Addition of LoRaWAN to Raspberry Pi Pico
Isn’t it interesting to build an application using wireless connectivity on a $4 board? In this project, Alasdair Allan has demonstrated how LoRaWAN can be added to the Raspberry Pi Pico. With the increasing traction towards LoRaWAN wireless connectivity, Raspberry Pi Foundation knew the importance of featuring this piece on the official website. Due to its low-power, long-range communication, the addition of LoRaWAN connectivity to Raspberry Pi Pico opens the door for several remote IoT applications at a low cost.
(Image Credit: Raspberry Pi News)
However, it is important to note that, Raspberry Pi Pico is not the best option for data-intensive IoT remote applications due to its all-around performance. You can find many more dedicated hardware that supports LoRaWAN and is designed for wireless applications. If you are interested in finding more details on the project, head to the project blog post.