Three and a half years after the launch of the original Pico, Raspberry Pi has announced a successor to their line of affordable microcontroller boards – the Raspberry Pi Pico 2. It sports the new RP2350 chip which houses a wealth of new features (including RISC-V Processors) and a potential step increase in performance - all for roughly only a US dollar more than the first Pico. In this guide, we are going to jump into all the juicy details from the announcement and see what it means for us makers.
The Pico 2 shares the same pinout and footprint as the original Pico, and likely shares the same workflows, meaning it will most likely be a seamless swap-out in your projects. Our understanding right now is that everything you can do on the first pico, you will be able to do on this one.
If you are interested in learning how to use a Pico, our beginner workshop is the best place to start.
Decoding the New RP2350
The new RP2350 chip is the main player in this upgrade. This chip is the microcontroller itself and the rest of the PCB that makes up the Pico is hardware that allows us to power and interface with that chip. The RP2350 continues on from its RP2040 predecessor seen on the original Pico series and is an in-house design from Raspberry Pi themselves who have been venturing into the chip design and manufacturing game with these microcontroller chips and the RP1 IO controller as seen on the Raspberry Pi 5.
There is quite a lot in this chip so let's take a look under the hood.
The RP2350 follows the same naming scheme as the RP2040. The first 2 digits refer to the processor which is a dual-core ARM Cortex-M33 clocked at 150MHz, a step up from the dual-core Cortex-M0+ in the RP2040, and we will talk about this new processor and its performance in just a bit.
The third number refers to the amount of volatile memory it has (aka. RAM) and uses that formula that creates a nice round number. This means that the Pico 2 has 520KB of RAM which is double that of the first Pico. You may have rarely dealt with the RAM limitations of the first Pico, but this extra headroom opens up more possibilities for applications such as hosting images and assets on web pages and driving displays – both of which are RAM-intensive activities for a microcontroller.
And the final number is the amount of internal flash memory, which is the non-volatile memory we use to store our code and data on. This is 0 just like the RP2040 meaning that it doesn’t have any internal flash memory, but just like the original Pico, the Pico 2 opts to have the flash memory located externally on the PCB; which it rocks 4MB of and has double that of it predecessor.
The reason we bring this up is because this chip is marketed as a part of the RP235X family meaning that we may see variants with internal flash memory, which would allow developers to produce more compact boards, but at this time only the RP2350 has been announced.
All in all, some very nice upgrades in this chip, and Raspberry Pi’s naming scheme is mightily helpful – we hope they keep it up.
ARM and RISC-V Processors?
The new dual-core Cortex-M33 comes in clocked at 150MHz. When compared to the old M0+ clocked at 133MHz, it may be tempting to see only a 13% increase in clock speed and conclude that it is only 13% faster. But the M33 is a more advanced and more capable processor with a bit more going on under the hood.
The M33 has dedicated computational hardware like a divide unit. This is a specialised circuit that performs division operations when the processor needs it. The RP2040 could obviously perform division, but it would need to do it in software which is much slower than performing it on dedicated hardware. For example, if you were to perform a 32-bit division on the M33 it may take a dozen cycles (or Hz), but on the M0+ it may take hundreds of cycles. These types of dedicated hardware units combined with a richer instruction set mean that the M33 can do more work in less Hz, and we can expect to see more than a 13% increase in performance. CoreMark benchmarks place the M33 at about twice as powerful as the M0+, but there is a lot of variability in these chips so expect less than that. Stay tuned for our comparative video where we will put it through its paces to find out just how much faster it is.
And possibly the most exciting and unexpected feature is the addition of an extra RISC-V-based processor. RISC-V is a processor architecture like ARM and x86, but it is an open standard - meaning it is provided under royalty-free and open-source licenses. RISC-V processors have been popping up all over the tech world in microcontrollers and even computers, and we may potentially be at the beginning of a RISC-V revolution.
The Pico 2 comes with an extra dual-core RISC-V Hazard 3 processor also clocked at 150MHz, and from what we can tell at this stage, you can mix and match processor cores as you need, but only up to 2 cores at once. These RISC-V cores have piqued our curiosity, and we can only speculate what their uses may be. Maybe they are incredibly power efficient, and you can choose to use 2 of them for your IOT weather station. Maybe they are better suited to certain tasks, and you can have a RISC-V core for processing or machine learning and an M33 for IO interaction.
Regardless of their potential uses, it’s a welcomed addition and likely makes the Pico 2 a little more versatile. We also wonder if the community can find a way to utilise all four cores to some extent.
For the super-users out there, the Pico 2 also has an increased 12 PIO state machines. PIO is an ability that leverages dedicated "processors" within the Pico for I/O operations and allows for a great deal of freedom in this area, even allowing for the creation of custom communication protocols. PIO has found its way into a lot of niche and funky applications like efficiently driving Neopixels, and these additional state machines will likely expand its abilities in these.
Improved Power Efficiency
Raspberry Pi is also touting that the Pico 2 will have greatly improved power efficiency over its predecessor. They may be referring to the power consumption during normal operations, but we hope this includes improved lower power modes as well. The first Pico was a great microcontroller that got a lot of things right, but one of its biggest weakpoints was its low-power modes which couldn't hold a candle to what other microcontroller boards were capable of. Any projects with limited access to power, like a remote weather station running off a battery, would be better fit to use an ESP32, the Pico just could not go into a power-efficient dormant state. As a result of this external power-saving hardware has to be relied upon for these tasks.
On top of this, a community-led investigation on our forums suggested that these low-power modes in MicroPython were borderline placebo at times. Any improvement here will be welcomed, both in MicroPython and overall - and we will also be putting it through some extensive testing with the Otiiarc to get some accurate numbers for all of these.
A Wealth of Security Features
The Pico 2 is shipping with a wealth of new security features and it seems to be one of the biggest selling points of the RP2350 - maybe more so for industry and professional applications, but we makers may see some helpful use cases.
The new Cortex-M33 enables TrustZone, an ability that allows for sections of code and information to be isolated away from the rest of the application. This effectively allows you to hide away things from prying eyes or people trying to poke around. This has great potential for industry applications like locking down firmware to prevent reverse engineering and IP theft. But at a maker level, it may offer an extra level of protection for what we would usually keep in a secrets file; things like wifi credentials, keys, and authentication tokens. If I were placing a Pico-based IOT device out in the wild, being able to use TrustZone would give me just a little bit of extra peace of mind.
Another addition to the RP2350 is 8kb of anti-fuse one-time-programmable memory. This is dedicated non-volatile memory that once written to, cannot be erased or modified and is often used for storing critical data that should not be altered; things like serial numbers, firmware versions and encryption keys. Again, this feels like something that industry applications may benefit from more, but having a cool feature like this just provides potential tools for the maker community to utilise.
There are also a few other unique additions like; SHA256 acceleration - hardware used for performing cryptographic hash functions, fast glitch detectors - a safeguard against voltage glitch attacks, and a hardware-based true random number. But with all these features, the questions arise again. How (or if) can we use these? Do we need to utilise a custom toolchain? Is the process going to be streamlined enough to be accessible for makers?
A Promising Successor
All in all, the Pico 2 looks like another capable microcontroller board from Raspberry Pi with a few interesting bells and whistles. It is a bit of a shame that it still doesn't come with a USB-C - it's 2024 - nor does it have a reset button and I'm sure makers are happy to pay the extra few cents for these features. This may be a "wanting to keep the same form factor" issue as a USB-C connector would make the board a little bit thicker, but we hope the next iteration comes with these.
The other question you may be asking is, where’s the WiFi? No announcements there, but fingers crossed we can enjoy these new features, plus WiFi, in the future.
But for a doubling of RAM and flash, a boost in processor performance, a wealth of new security features, and some RISC-V cores, all for only about a US dollar more? It's a bit of a no-brainer upgrade for many maker projects. And we are excited to see what projects lie ahead for this little board.
If you want to get your hands on a Pico 2, check out our store page.