3dsDL v0.9.0 by ankushKun
Downloads files to the SD card from a link, a QR code or your phone, installs CIAs and manages the card
Install on your 3DS
Method 1Scan the QR code
With FBI (Remote Install › Scan QR Code) or 3dsDL (Scan QR Code). Either one installs it.
Method 2Send it to your 3DS
Open 3dsDL › Receive on the same Wi-Fi, then press:
Send to 3dsDL Not working?
Other ways to install
From your SD card: copy 3dsDL.3dsx into /3ds/ and start it from the Homebrew Launcher.
Files
Screenshots
About 3dsDL
Downloads are split over up to four connections when the server allows it, and carry on where they stopped if the connection drops. Scan several QR codes in a row and it downloads them together. It installs CIAs and Azahar's compressed .zcia files with their seeds, and if the SD card is too full to hold the file, it installs as it downloads. It also takes links sent from FBI's servefiles.py and sendurls.py, and from Boop.
From a browser on a phone or computer on the same Wi-Fi, you can upload, download, edit, move and delete files on the SD card, and install CIAs you upload. No FTP app needed. It answers at http://3ds.local/ too.
On the console, Files has favourites, a picture viewer, a text editor, ZIP extraction and a hex view. Titles launches and deletes installed software, manages tickets and seeds, and clears stuck installs. Save data and extra data can be backed up, restored and browsed, and the backups work with Checkpoint.
You only install it once. It looks for a new version on GitHub when it opens, and Settings > Updates downloads and installs it. The 0.7.0 CIA crashes at start-up: if you have it, install the latest release with FBI once.
The author says it's still in development, and that save and extra data restore and ticket export have had the least use so far. Keep a Checkpoint backup of anything important.
Release notes
v0.9.0 · 3dsDL v0.9.0 · Oct 31, 2026
Updating: open Settings > Updates in 3dsDL and it installs this in place. To install fresh, scan the QR code on ankush.one/3dsDL with FBI's Remote Install > Scan QR Code, or download 3dsDL.cia / 3dsDL.3dsx below.
What's new
3ds.local is a file browser
The page Receive serves is rebuilt to work like a file manager on a computer (#24):
- The SD card's usual folders and your Files favourites are in a sidebar, next to Send Links and Transfers.
- Select several files with Shift and Cmd or Ctrl clicks, by drawing a box, or with a long press on a phone.
- Move To and Copy To pick the folder in columns instead of making you type a path. You can also drag items onto a folder (hold Option, or Ctrl on Windows, to copy), or cut, copy and paste with the keyboard.
- When names are already taken, it asks once: Skip, Keep Both or Replace. Replace merges a folder into one of the same name.
- Text and config files open in a real code editor with line numbers, colours for INI, JSON, XML, Lua and more, and search and replace. The console serves it, so it works without internet.
- On a phone the sidebar slides in, and a bar at the bottom holds the actions for what you selected.
Files
- Favourites: R stars a folder or file, and L opens the list from anywhere (#21).
- Tap a row's icon to mark it. With something cut or copied, Y on any entry starts with Move Here or Paste Here. Pasting asks once about every name already taken, and folders with the same name merge (#24).
- 7z, RAR and tar archives extract, and ZIPs extract about four times faster.
- Songs show their title, album, cover and length on the top screen, and pictures show a preview (#8).
- Names with accents, kana or curly quotes are no longer cut short.
- A rename that only changes capital letters works, from the console and from the page.
- A file with a very long line no longer freezes the editor (#20).
Installs
- Azahar's compressed
.zciafiles install like CIAs (#14). - An install that has started can no longer be cancelled, since cancelling one could make the SD card unreadable until a restart (#15).
- A CIA that would replace other software with the same title ID asks first (#16).
- 3dsDL can reinstall itself or go back to an older version. The new one goes in whole before the running one is removed.
Receive
- One address, and a list of everything that came and went with time left for what is on its way. X clears what is done.
- Downloads and Receive keep going with the lid closed (#13).
- Websites can send links with a folder to save into, and ask to replace an app or extract an archive (thanks @monkeymaximus, #23). The console checks where each link leads and names that site before asking. Links from other sites start on Cancel, and Don't Allow stops a device from sending more.
- An install requested from the page that doesn't happen says why.
- Files opened from a Receive row follows the changes you make on the page.
Tickets
A homebrew CIA's ticket can't be backed up, so Delete Unused Tickets used to keep it without saying why. Now it shows what the ticket belonged to and asks before deleting it.
More
sdmc:/3ds/3dsDL/log.txtrecords what happened in each session for bug reports, and a crash on any thread leavescrash.txt(#12).- Update checks work in time zones west of UTC again.
- Console Clock's Set the Clock changes the time straight away (#7).
- Deleting a title keeps your place in the list (#19).
- In every list, a tap highlights a row first and a second tap opens it.
Tested so far
Tested on a New 3DS, and the page in desktop and phone browsers. Old 3DS reports are very welcome in Issues.
Thanks
- @monkeymaximus for the send options websites can use (#23).
- @HARSHCRR for keeping the Titles read inside its own buffers.
- Everyone who reported what was wrong or missing: @japzone1 (#7), @jsphgei-dot (#8), @matthewpena004922-hub (#12), @sen2008 (#13), @flanter21 (#14), @epicuser123 (#15), @rlmilliron (#16), @fuu90 (#17, #21, #24), @Oliwier098PL (#19), @juppytaar (#20) and @manueldidonna (#22).
