Robin Grosset Takes a Raspberry Pi Pico's RP2040 to New Heights with an Overclock to 420MHz

Impressive overclock boosts the RP2040's Arm cores to more than three times their official upper limit of 133MHz.

Gareth Halfacree
2 months agoInternet of Things

Engineer Robin Grosset has pushed a Raspberry Pi Pico and its RP2040 microcontroller to its limits, successfully overclocking the chip from its stock 133MHz to an impressive 420MHz.

Launched earlier this year the Raspberry Pi Pico development board plays host to Raspberry Pi's first in-house silicon, the RP2040 microcontroller. Officially, the chip can be clocked at speeds of up to 133MHz — but unofficially the part can run considerably quicker, as is often required to get the best performance out of hacks like turning one into a fully-functional BBC Micro emulator.

Grosset's experiments, though, go further than most by dramatically increasing the clock speed — up to a whopping 420MHz, more than three times the official upper limit for the RP2040 microcontroller.

Robin Grosset's latest video walks through underclocking and overclocking the RP2040 - to 420MHz. (📹: Robin Grosset)

"No Picos were harmed in the creation of this video," says Grosset of the latest upload to his YouTube channel. "Your mileage may vary. Overclocking could shorten the life of your Pico, although mine seems fine."

While Grosset also looks at underclocking the chip, a technique commonly used to improve energy efficiency for battery-powered or other off-grid projects, it's the overclocking which is most impressive: Gradually increasing the clock speed, Grosset found his Raspberry Pi Pico usable all the way up to 420MHz — with one unfortunate caveat.

"With the maximum overclock your flash memory will stop talking to your Pico CPU," Grosset admits. "This is recoverable so don't worry, just load another program with a different clock speed."

Raspberry Pi engineer Graham Sanderson, author of the b-em BBC Micro emulator port for the RP2040, has suggested one possible fix for this issue: "You can slow the flash clock down by a factor of two relative to the processor by using a a custom boot stage2 with PICO_FLASH_SPI_CLKDIV=4," Sanderson writes on Twitter. "You can change this in the board header too."

Grosset's video is now available on his YouTube channel.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Related articles
Sponsored articles
Related articles