USB2SNES is way to communicate with the SNES or devices (including some emulators) that act like a SNES
Contents
Origins
USB2SNES firmware
USB2SNES is a firmware for the SD2SNES cartridge written by Redguyy that allows to use the USB port on the SD2SNES to access various functionality of the SD2SNES. Most notable are uploading ROM, read and write various memories of the console.
The issue with this approach, when writing application that use this technology only one application can have access to the SD2SNES. So for example you cannot run an Item tracker for ALTTP randomizer at the same time than the fileviewer to upload a new ROM.
To avoid this issue, Redguyy wrote an intermediary application also called USB2SNES that other application use to talk to the SD2SNES.
So a basic usage look like that:
Emulators, SNES Classic…
Since then an alternative implementation called QUsb2Snes has added support for other backends including SNES Emulators or SNES Classic
For example Snes9x
Supported platforms
Intermediate software
Different choices of platforms that is supported
Platform | USB2SNES | QUsb2Snes |
---|---|---|
SD2SNES with the USB2SNES firmware | ✔ | ✔ |
Snes9x Multitroid with Lua support | ❌ | ✔ |
SNES Classic modded with Hakchi2 CE | ❌ | ✔ |
Bizhawk 2.3.1 | ❌ | ✔ |
RetroArch support with Snes9x and bsnes-mercury cores | ❌ | ✔ |
Getting started
Downloads
Windows
You can download a bundle on usb2snes github releases page. This include the latest QUsb2Snes, the latest USB2SNES firmware and a bunch of applications to have something ready to use.
Mac os X
For Mac os X users you will need to grab a QUsb2Snes dmg on QUsb2Snes releases page, sadly other applications does not have a Mac os X release yet.
Linux
If you have a debian-based distribution (Ubuntu, Mint…) you can install it from debian.nyo.fr, follow the webpage instructions
For other distributions you will need to compile yourself see QUsb2Snes Linux Readme
Installation
Download the file corresponding to your operating system, then follow the instructions on the Readme or on QUsb2Snes usage
Tutorials
You can visit the tutorials page to found various tutorials showing you how to use QUsb2snes or software using usb2snes technology.
Getting help
The best way to get help is to join the Usb2snes discord at Usb2Snes and contact ask your question.
There is also a connection tester page that can help with verifying that QUsb2snes is accessable and can find devices.
Applications
You can find a list of applications that use the usb2snes protocol at the Application page
Developers
If you don’t plan on doing a complex application, you can look at the Magic2Snes project. It’s a project written toward making small application easier by hiding all the Usb2Snes specific behind simple call like memory.readByte()
If you want more details about the Usb2Snes websocket protocol you need too look at the Protocol page of the QUsb2Snes project.