This PicoSystem - PIM559 - is a tiny hackable dev handheld with RP2040 at its heart.
PicoSystem is a pocket sized handheld games console, built around Raspberry Pi's RP2040 chip (that's the little fella that's the core of a Raspberry Pi Pico). We've taken these lucky bits of silicon to the component spa and treated them to the full works: a big chunk of flash memory, a vibrant 240x240 screen and a nice D-pad and buttons picked out by our most particular arcade enthusiasts. There's also a piezo speaker for discreet retro bleeps and chirps and a rechargeable LiPo battery so you can take your homebrew games on the bus.
The finished product looks and feels great - so we couldn't resist going all out on the build quality by adding a custom matt black anodised aluminium case with a handy wrist strap. We think RP2040 has tons of potential as an experimental gaming platform, and we're really looking forward to seeing what folks create.
Want to try out some pre-built games while you wait for inspiration to strike? Give these a go!
To get into bootloader mode so you can flash a new .uf2, turn your PicoSystem on whilst holding down the X button - it should then show up as a drive called RPI-RP2 on your computer.
PicoSystem ships flashed with the mighty Super Square Bros. by Scorpion Games - if you like it as much as we do check out their itch.io page and show them some love.
As PicoSystem is RP2040-powered, you've got an array of options for making your own games. Here's a quick rundown! Our official PicoSystem API is available in C++ and MicroPython flavours. It's designed to be lightweight, easy to use and to stay out of the way while you're developing games.
Make simple games in CircuitPython using the Stage library (thanks to deshipu!).
It's also possible to use the fully featured 32blit SDK and C/C++ to make games for PicoSystem, thanks to the efforts of the 32blit community. Developing with the 32blit SDK means you can compile your games for multiple platforms (currently Linux, Windows, macOS, 32blit and PicoSystem) - great for if you want to share them on itch.io!
Raspberry Pi's RP2040 microcontroller is a dual core ARM Cortex M0+ running at up to 133Mhz. It bundles in 264kB of SRAM, 30 multifunction GPIO pins (including a four channel 12-bit ADC), a heap of standard peripherals (I2C, SPI, UART, PWM, clocks, etc), and USB support. One very exciting feature of RP2040 is the programmable IOs which allow you to execute custom programs that can manipulate GPIO pins and transfer data between peripherals - they can offload tasks that require high data transfer rates or precise timing that traditionally would have required a lot of heavy lifting from the CPU.