Some assistance needed in NES project

Status
Not open for further replies.

ave1

New member
So I spotted this post from 3 years ago, and decided to look into how to accomplish this myself. https://forum.pjrc.com/threads/16848-Teensy3-to-Nintendo-Entertainment-System

The author of those post is unreachable, and I am interested in seeing if someone here could write the two simple programs Mr. Weinstein has discussed in his post. I am not a programmer, but am an enthusiast of classic game systems who has a Youtube channel all about connecting new controllers to old systems (and vice versa). I would be making a presentation about this and featuring whoever can help me accomplish this within the episode. My Youtube channel name is Wired-Up Retro if you care to check my work out. Appreciate any help that you can provide. Also- where is a good source where a reasonably-priced Teensy can be obtained?
 
You want a device to connect a USB game controller to a NES? It is doable, but you'll need http://www.pjrc.com/teensy/td_libs_USBHostShield.html
and someone who can code!

Reading a USB joystick (with the lib) is easy enough, but someone has to taylor the code for the particular joystick model you use. Unless someone has developed some smart joystick library I am not aware of. Game controllers do have different axis and buttons.

Interfacing with the NES is just simple digitalWrite HIGH / LOW (on the connected pins) I guess.
 
That project you linked to is using the laptop as USB host shield. The controller is connected to the laptop which forwards things to the Teensy.

Using the Teensy USB port as host would be a very big effort.
 
Using the Teensy USB port as host would be a very big effort.
That's why I suggested using a USB host shield. I have done similar project myself, not using Teensy though. I have an Arduino sized host shield, so it was easier to mount that on an Arduino. But the library is the same. IMO, easier than using a laptop for the job.

This page http://www.pjrc.com/teensy/td_libs_USBHostShield.html is from Teensy 2.0 age, but I think the shield and the library should work on Teensy 3.x as well.

My project is not directly applicable, because I did it Atari-style, not for NES. And I probably don't have the same game controller.

I don't know if the mini-shield is available anymore. Sparkfun and others sell the Arduino-sized host shield.

The new Teensy 3.6 has a second USB port that is "intended to used in USB host mode". That would be perfect, but software support for that might not be ready yet.

One alternative could be using a Raspberry Pi for the job, it has USB host ports and GPIO-pins. An overkill perhaps, but why not, if you've got a spare one...
 
https://github.com/ohnoitsaninja/TeensyNes

I wrote a library for interfacing nes controllers with teensy and specifically using them as a native USB joystick, I only tested it on Teensy-LC. I did an entire playthough of a gba pokemon game and most of the way through punch-out on it without issues. Shows how to wire and an example. I didn't break out the buttons out of the lib, it goes straight to the usb joystick class, so if you need more help just lmk.
 
Last edited:
Status
Not open for further replies.
Back
Top