DSPico Nintendo DS Flashcart Review and Setup Guide

Here are two useful finds for original Nintendo hardware.

For Nintendo DS: DSPico flash cartridge with USB-C.

For Game Boy Advance SP: an IPS-ready eXtremeRate replacement shell.

DSPico is an open-source Nintendo DS flashcart built around the Raspberry Pi RP2040 microcontroller. It arrives in a market still dominated by inexpensive R4-style cartridges, but takes a very different approach: the hardware and software are actively developed, the microcontroller can be reflashed over USB, and the project supports features that older flashcarts were never designed for.

I approached it cautiously after the disappointing experience of EZ-Flash Parallel, but DSPico turned out to be much more interesting than a simple modern replacement for an R4.

DSPico flashcart by LNH-team

This review covers the hardware bundles, microSD setup, RP2040 firmware, DS/DSi/3DS compatibility, game loading, DSiWare support, and DSPico’s unusual USB-based extras.

Where to Buy DSPico

You can buy the cart on AliExpress.

Note: there’s a version with USB Type-C. It costs more, but instead of the outdated Micro-USB it uses a modern Type-C connector.

By the way, about the cable. When my first DSPico arrived, it only worked with one out of three Micro-USB cables.

What’s in the Box

DSPico by LNH-team is fully open source. Which means whatever the Chinese sellers ship is basically their own interpretation of what the “bundle” should look like.

For example, one seller ships a bare cart in a black shell — no label, no box, nothing at all.

DSPico without a bundle: just the cartridge

Another one makes a proper set: a nice box, stickers, and even a cable included.

DSPico bundle: cartridge, box, cable, and stickers

Preparation

Setting up DSPico has become much easier since the original version of this article was published. You no longer need a questionable archive from an AliExpress seller or have to build every component manually.

The complete setup has three stages: first we will prepare the microSD card, then install the WRFUxxed firmware, and finally dump the BIOS and NAND files required for DSiWare.

At the time of this update, the current versions are Pico Launcher 1.3.0 and Pico Loader 1.7.1. LNH-team distributes them as two separate archives. There is no single official “Pico Package for DSPico.”

If you are setting up DSPico from scratch

  1. Format the microSD card as FAT32.
  2. Download the official Pico Launcher 1.3.0 archive from LNH-team.
  3. Extract the archive. Rename LAUNCHER.nds to _picoboot.nds, then copy that file and the _pico folder to the root of the microSD card.
  4. Download the official Pico Loader 1.7.1 archive for DSPico.
  5. Extract the archive and copy all five files from it into the _pico folder on the microSD card.

    The card should now contain:

    • /_picoboot.nds;
    • /_pico/aplist.bin;
    • /_pico/patchlist.bin;
    • /_pico/picoLoader7.bin;
    • /_pico/picoLoader9.bin;
    • /_pico/savelist.bin;
    • the /_pico/themes folder.
  6. Put your .nds games in any convenient folder. For example, you can create a Games folder in the root of the card.

If you are updating an already configured DSPico

You do not need to format the card. First make a backup of everything on it, then download the latest official Pico Launcher and Pico Loader archives.

From the Pico Launcher archive, replace _picoboot.nds after renaming LAUNCHER.nds accordingly. You may also copy the bundled themes from its _pico folder and allow existing files to be replaced.

From the Pico Loader archive, copy all five files into the existing _pico folder and replace the old versions. Do not delete the existing _pico folder: it may also contain your usrcheat.dat, biosnds7.rom, themes, covers, and other additional files.

Games and save files are normally stored outside _pico and will not be affected, but a backup is still essential—especially if you have already configured DSiWare.

Important! Updating only _picoboot.nds is not enough. You must also replace all five Pico Loader files in the _pico folder, including patchlist.bin.

The first stage is complete. Continue with the microcontroller firmware.

Microcontroller Firmware

DSPico uses a Raspberry Pi RP2040 microcontroller. Its firmware does not provide the menu; it determines how the console identifies the cartridge and whether it can launch on each Nintendo DS model.

Which firmware versions are available?

Hybrid works on Nintendo DS and DS Lite, as well as Nintendo DSi and Nintendo 3DS consoles with custom firmware installed.

WRFUxxed works on all of those consoles, including unmodified Nintendo DSi and Nintendo 3DS systems.

Which firmware will we install?

We will install WRFUxxed because it gives DSPico the widest compatibility and does not tie the cartridge to a modified console. Whether you are setting up a new DSPico or updating an existing one, the new .uf2 file will completely replace the firmware installed by the seller.

How do I obtain WRFUxxed?

WRFUxxed must contain the proprietary WRFU Tester v0.60 image, so a finished .uf2 file cannot be distributed with the open-source DSPico project.

Obtain WRFU Tester v0.60 dated August 21, 2008 yourself. It is a Nintendo DSi ROM image with the .srl extension; you do not need to rename it to .nds. The correct file has this SHA-1 checksum:

2d65fb7a0c62a4f08954b98c95f42b804fccfd26

Open the browser-based DSPico firmware patcher, click Browse, and select WRFU Tester. After verifying the file, the patcher will offer a finished DSpico_wrfuxxed.uf2 for download.

The browser patcher is a third-party tool. It processes WRFU Tester in browser memory and inserts it into a prebuilt base. The official method is considerably more involved: build the firmware yourself by following the LNH-team guide.

How do I install WRFUxxed?

With current firmware, you normally do not need to open the cartridge:

  1. Remove DSPico from the console.
  2. Make sure to remove the microSD card from DSPico.
  3. Connect the cartridge to your computer with a USB cable.

DSPico should automatically appear as a removable drive named RPI-RP2.

If the drive does not appear, use the old method: open the cartridge, hold the button on the circuit board, and connect the USB cable to the computer without releasing it. You can release the button once RPI-RP2 appears.

DSPico with a connected USB cable
  1. Copy the .uf2 file to the RPI-RP2 drive. The drive will disconnect automatically after the copy finishes, which means the firmware has been installed.
  2. Disconnect the USB cable and return the microSD card to the cartridge.
  3. Insert DSPico into the console and turn it on. On Nintendo 3DS, WRFUxxed appears as Nintendo DS Demonstration; select that cartridge from the HOME Menu. On Nintendo DSi, the WRFU Tester screen will appear automatically first. Pico Launcher should then open.
Important! Without the microSD card and the Pico Launcher and Pico Loader files, the console may not detect the cartridge or it may stop with a Pico Loader error. This alone does not mean the firmware was installed incorrectly.

BIOS and NAND Files

This stage is required for DSiWare and encrypted Nintendo DS ROM images. Regular DS games work without it.

You do not need to dump the BIOS and extract NAND manually. The pico_file_dump.nds utility copies everything DSPico needs from your Nintendo DSi or Nintendo 3DS directly to its microSD card. The console does not need custom firmware. I tested the utility on an unmodified New Nintendo 2DS XL.

  1. Download pico_file_dump.nds v1.0.0 and copy it to the root of the DSPico microSD card.

The utility was created by Deletecat. It is not part of the official LNH-team projects.

  1. Create a DSiWare folder in the root of the card and copy your .nds games into it.
  2. Return the microSD card to DSPico, insert the cartridge into a Nintendo DSi or Nintendo 3DS, and launch Pico Launcher.
  3. Select pico_file_dump.nds. The utility will copy the BIOS and NAND files to the microSD card. Wait for Setup complete!, then press START.
Pressing START returns you to Pico Launcher, but the new files will not be loaded during the current session. Exit DSPico to the console menu, fully close the running DS software, and open the cartridge again. You do not need to turn off a Nintendo 3DS. Without restarting DSPico, DSiWare may hang on a white screen.
  1. As soon as the utility finishes, the following items will appear on the microSD card:
    • /_pico/biosnds7.rom;
    • the /photo/ folder;
    • the /shared1/ folder;
    • /shared2/0000;
    • /sys/TWLFontTable.dat.

Using DSPico

After booting, you arrive in Pico Launcher. Several updates have made the menu much more convenient: it now supports touch controls, cheats, covers, themes, and several game-list layouts.

Pico Loader compatibility has improved at the same time. Fixes were added for Pokémon HeartGold and SoulSilver, Diddy Kong Racing DS, Tetris DS, WarioWare D.I.Y., Jam with the Band, Castlevania: Portrait of Ruin, GTA: Chinatown Wars, Kirby Mass Attack, New Super Mario Bros., and many other games. Support for ROM hacks and translations has also improved.

DSPico main menu

Select a game with the D-pad or touch screen and press A to launch it. The L and R buttons let you move quickly through long lists.

You still cannot return to Pico Launcher from a regular commercial game. Returning to the menu only works from homebrew applications that support the appropriate bootstub. Save states are not available either.

The settings let you change the list layout, sorting, and menu appearance.

DSPico settings

Even a complaint from the original version of this article has been addressed: technical folders can now be hidden. Pico Launcher does not show files and folders with the Hidden attribute. It also hides any item whose name begins with a period.

Folder list on the microSD card in DSPico

You can add a period to the names of your own folders, but do not rename DSPico’s service files and folders: it will no longer be able to find them. Set the Hidden attribute instead.

  1. Open the microSD card in Windows File Explorer.
  2. Select the _pico folder and _picoboot.nds. If you configured DSiWare, also select the photo, shared1, shared2, and sys folders.
  3. Right-click the selected items, open Properties, check Hidden, and click OK.
  4. If Windows asks how to apply the changes, choose “Apply changes to this folder, subfolders and files.”

The service items will remain on the microSD card and continue to work, but Pico Launcher will no longer display them in the list.

Cheats

Cheat support was added in Pico Loader 1.6.0 and Pico Launcher 1.2.0. It requires a usrcheat.dat file placed in the _pico folder. Setup is described in the official Pico Launcher documentation.

Pico Launcher Enhanced

If the standard menu feels too basic, there is an unofficial Pico Launcher Enhanced. It adds favorites, recently played games, statistics, approximate play-time tracking, random launch, completion markers, and DS Lite brightness control.

It is installed simply by replacing _picoboot.nds. The project is still very new, so I would treat it as an optional alternative rather than the basis of this guide.

You can find the full list of changes to the standard menu in the Pico Launcher changelog, and game-compatibility fixes in the Pico Loader releases.

Extra Features

In addition to launching games, DSPico has another unusual feature: applications can access the cartridge’s USB port.

DSPico app examples (USB examples)

The developers prepared a set of applications for DSPico. As I understand it, they are primarily demonstrations of what the cartridge can do.

You can download them on GitHub:

https://github.com/LNH-team/dspico-usb-examples/releases/

Four applications are available:

  • mass-storage.nds – provides direct access to the microSD card through the cartridge;
  • usb-microphone.nds – lets you use a DSi or 3DS as a computer microphone;
  • usb-speaker.nds – plays computer audio through the console;
  • usb-video.nds – lets you use a DSi or 3DS as a computer webcam.
The USB microphone does not currently work on the original Nintendo DS or DS Lite. The DSPico firmware also has a bug: after using USB and restarting the console, reconnecting the cable can sometimes cause a freeze. If this happens, disconnect USB and fully restart the console so the cartridge loses power.

To run these apps, you’ll need to do a bit of juggling:

  1. Plug the cable into the cartridge;
  2. Insert the cartridge into the console and launch the application;
  3. Connect the other end of the cable to the computer.

The end result is a pretty weird-looking setup.

DSPico in the console with a connected cable

In my view, the most useful application is mass-storage.nds.

Turn on the console, launch the application, and connect the entire setup to the computer. You can then copy games to the microSD card.

I would not call this a life-changing improvement, but it can certainly help if your card reader fails.

DSPico Is No Longer a Rough Experiment

When the original version of this article was published, DSPico looked promising but still rather unfinished. Since then, the developers have fixed microSD card handling, greatly expanded game compatibility, and added cheats, touch controls, and the ability to hide technical folders.

Its main advantage remains the same: on Nintendo DSi and Nintendo 3DS, the cartridge can launch not only regular DS games but also DSiWare. However, I would no longer describe DSiWare as an out-of-the-box feature because it requires additional BIOS and NAND dumps.

DSPico still lacks save states and a proper way to return from a commercial game to the menu. Nevertheless, it is no longer merely an interesting RP2040 experiment. It is an actively developed open-source cartridge that continues to improve with updates to its firmware, Pico Loader, and Pico Launcher.