Failing hardware and pricey memory cartridges led one maker to use Raspberry Pi Pico to revive his old Sony PlayStation, as Rosie Hattersley discovers in the latest issue of The MagPi, out now.
Software engineer Daniele Giuliani missed playing some of the games on his original PlayStation, but quickly discovered that boxed and unused PS memory cards are hard to find and far more expensive than they used to retail for.
With no guarantee that used official cards – or counterfeit Chinese ones – will perform well, Daniele decided to put his coding skills to good use and create an alternative to Sony memory cards so he could continue playing his old PlayStation games. Having tinkered with Raspberry Pi devices since his high-school days, and subsequently studied computer science at university, Dan realised the platform would be ideal for his MemCard project.
Daniele chose a Raspberry Pi Pico because it’s much faster than his beloved Raspberry Pi 1B+, which he still has. A fast GPIO connection was essential for this project. He was also delighted to discover Pico’s ‘novel’ PIO (Programmable Input/Output) interface which he had never seen any board offer. “With PIO you can program, using specific assembly instructions, a set of ‘state machines’ to control the GPIO directly, leaving the main processor free to do other work,” he enthuses. “PIO allows the creation of very powerful bus sniffers. I used it to program the low-level interaction, the basic signals that must be toggled on and off with very specific timings in order to convince the PlayStation into believing an original memory card is present.”
Choosing Raspberry Pi for the build brought added benefits: the range of connectivity options improved on what could be done with original memory cards.” In particular, since Raspberry Pi can be connected to a PC, it allows [the player] to easily import/export the save files from/to the PlayStation. This is useful to back up old saves and continue playing on emulators,” explains Daniele. “PlayStation uses discs to load games. Old discs are full of scratches and can sometimes result in a game freezing in specific parts of the game, preventing the user from progressing.” With Daniele’s Pico MemCard setup, a player can transfer the save file to an emulator, progress through the problematic area (using an intact backup image of the game), then transfer back the new save file and continue playing on the console.
The goal of this project was to provide a solid alternative at a very low price, says Daniele. “Raspberry Pi Pico understands the protocol used to communicate with memory cards and convinces the PlayStation into believing an original memory card is plugged in. Development boards, such as these ones, were particularly interesting because they were quite powerful yet very cheap, and allowed me to set up my personal server to test all sorts of applications.”
Although Daniele enjoys the freedom of working on his own projects, lack of equipment was a challenge. A smartphone app called Scoppy proved invaluable: he was able to use a second Pico (plugged into a smartphone) as an oscilloscope to observe the electric signals being exchanged between the PlayStation and the memory card/Raspberry Pi Pico. Details that Daniele found online, of how a PlayStation works, helped him with some of the communication protocols. Prior to finding these details, he’d been trying to read the data between a PlayStation controller and console.
After a month or so of development for his MemCard for PlayStation, Daniele is already planning its next iteration: an enclosure for it, a microSD card version to expand the storage, and support for PS2. He’s delighted with the amount of interest that others have shown in his project, and is proud of having found a practical way of reviving a classic, but otherwise unused, games console, potentially keeping them out of landfill.
Memory card maker
The substitute memory card provides a physical interface between the Pico and the PlayStation. Access the electronic board by removing the two screws on the bottom, and take off the plastic shell. Cut a hole in the case for the wires to connect your Pico.
Use a Stanley/utility knife to cut a groove right under the pins and disconnect the original circuitry. Use jumper wires to connect your Pico, scraping off their plastic covering, and directly soldering to the copper pins for the PlayStation.
Carefully solder your Pico to the PCB, download the latest version of PicoMemcard, plug your device into the computer via USB, and upload the save file.
The MagPi #120 out NOW!
You can grab the brand-new issue right now from Tesco, Sainsbury’s, Asda, WHSmith, and other newsagents, including the Raspberry Pi Store in Cambridge. You can also get it via our app on Android or iOS. And there’s a free PDF you can download too.
You can also subscribe to the print version of The MagPi. Not only do we deliver it globally, but people who sign up to the twelve-month print subscription get a FREE Raspberry Pi Zero Pico W!