Posts | Comments

Planet Arduino

Archive for the ‘SNES’ Category

Even for those of us who are fans of retrocomputing, it’s fair to say that not everyone plays their old-school games on real old-school hardware. The originals are now fragile and expensive, and emulators are good enough that if the gaming experience is all you’re after there’s little point in spending all that cash.

There’s one place in which the originals sometimes have the edge though, the classic controllers are the personal interface with the game. So when [Dome] found a SNES controller in an Akibahara shop, of course he picked it up. How to make it talk to a PC? Tuck an Arduino Pro Micro inside it, of course!

What we like about this project is that instead of ripping out the original electronics it instead hooks the Arduino board onto the original serial interface. We might have made a Nintendo socket to USB box to keep the original cable, but either way, the SNES (technically Super Famicom, because it’s a Japanese market unit) original stays true to its roots. The Arduino polls the clock line at the speed of the console, reads the result, and translates it to a USB interface for the computer. There’s a full run-down of the code and how it was made, should you wish to try.

Of course, if you don’t always have a PC handy, you could also put the whole computer in the controller.

A Super Nintendo that has trouble showing sprites doesn’t make for a very good game system. As it turns out, Super Mario World is a lot less fun when the titular hero is invisible. So it’s no surprise that [jwotto] ended up tossing this partially functional SNES into the parts bin a few years back.

But he recently came up with a project that may actually benefit from its unusual graphical issues; turning the glitched console into a circuit bent video synthesizer. The system was already displaying corrupted visuals, so [jwotto] figured he’d just help things along by poking around inside and identifying pins that created interesting visual effects when shorted out.

Installing the new electronics into the SNES.

Once he mapped out the pins, he wired them all up to a transistor switching board that he’d come up with for a previous project. That would let an Arduino short out the pins on command while still keeping the microcontroller relatively isolated from the SNES. Then it was just a matter of writing some code that would fire off the transistors based on MIDI input.

The end result is a SNES that creates visual glitches along with the music, which [jwotto] can hook up to a projector when he does live shows. A particularly neat feature is that each game responds in its own way, so he can swap out the cartridge to show completely different visuals without having to change any of the MIDI sequencing.

A project like this serves as a nice introduction to both circuit bending and MIDI hacking for anyone looking to get their digital feet wet, and should pair nicely with the MIDI Game Boy Advance.

[Thanks to Irregular Shed for the tip.]

An ISP dongle is a very common piece of equipment on a maker’s bench. However, its potential as a hackable device is generally overlooked. The USBASP has an ATmeg8L at its heart and [Robson] decided that this humble USB device could be used as an interface between his PC and a SNES Joypad.

A SNES controller required three pins to communicate with a host: clock, data and latch. In his hack, [Robson]  connects the controller to the ISP interface using a small DIY adaptor and programs the AVR using the V-USB library. V-USB is a software USB library for small microcontrollers and comes in pretty handy in this instance.

[Robson] does a pretty good job of documenting the entire process of creating the interface which includes the USB HID code as well as the SNES joypad serial protocol. His hack works on both Windows and Linux alike and the code is available on GitHub for download.

Simple implementation like this project are a great starting point for anyone looking to dip their toes in the DIY USB device pool. Veterans may find a complete DIY joystick more up their alley and will be inspired by some plastic techniques as well.


Filed under: Arduino Hacks, hardware

If you grew up in the ‘90s, chances are you have an old SNES controller lying around somewhere. Well, thanks to a recent project from CompSci Studio, it may be time to blow off the dust and transform it into a modern-day USB gamepad using Arduino.

By following the instructions detailed in the video below, you’ll be able to use the retro controller to play arcade games like Super Meat Boy and Fez on either your Mac or PC. To get started, you’ll need an Uno, five jumper cables, and a simple Arduino sketch that creates an HID compliant joystick out of the SNES device.



  • Newsletter

    Sign up for the PlanetArduino Newsletter, which delivers the most popular articles via e-mail to your inbox every week. Just fill in the information below and submit.

  • Like Us on Facebook