USB NES Controller

This page is where I'll be keeping my progress on my USB console controller adapter. I'm planning on the adaptor eventually having as many console controllers connected as possible or till I'm satisfied with the results. I'll probably start a blog as soon as things actually get rolling, but for now I'm going to post updates here.

Note: This project is frozen for now. I don't know when I'll have the time or money to get it started again. Thank you to everyone who's emailed me about it and donated controllers and money. As soon as I get things going again, I'll let people know.

October 1, 2003: I finally got the usb chips. The kind people at Microchip sent me 2 PIC16C765 and 5 PIC16C745.

October 14, 2003: I've got the chips wired up and they can talk to the USB port fine. I've also got most of the code for a SNES controller done, but not finished. After that's cleaned up and done, NES and Virtual Boy should be finished the same day or after.

October 27, 2003: I haven't had much time to work on the adaptor. The code for talking to a SNES controller is done, and it's installing as a gamepad, but it's not sending the button presses yet. I'm hoping to get it done this week.

October 31, 2003: The adaptor is reading all the button presses, and is sending all of them except the D-pad to the pc over the usb cable.

November 3, 2002: Finished the SNES part of the code. It sends all the key presses from the SNES pad.

November 4, 2003: Ok, details? So far only the SNES works with the adaptor, but the code for the NES is already there. I'm planning on adding as many other controllers as possible. Next after the NES is probably the Virtual Boy and 3DO since they (from what I read) all use the same protocal. I'm thinking about Sega Genesis next, but I don't know yet.

November 5, 2003: Met a friend who's after the same goal. We've combined forces, and should be able to pop off more controllers alot more quickly. Just working through some preliminary ideas. So far I think we're aiming at a hot swappable interface, so that people can switch from SNES to PS2 just by swapping the plug without even unplugging the USB end of the adapter. That'll allow it to be installed inside arcade cabinets, PC cases, or whatever. I want to get pictures up when I can, but I don't know when that'll be. Also, send ideas, comments, or questions to:
N E S U S B @ Y A nospam H O O . C O M (of course, without the spaces and nospam)

November 12, 2003: My NES pad is broken, so I can't verify if the NES portion of my code is working. Taking pictures today, so they should be up soon.

November 18, 2003: NES is working, and maps the buttons the same as SNES (ie Buttons A on SNES is the same as button A on NES).

January 16, 2004: I haven't updated this in a while. But to catch up. I've ordered parts for about 10 adapters, and I'll be selling them as they are built (probably on Ebay). I've bought a few controllers: Virtual Boy, 3D0, and NUON; and some Genesis pads have been donated.

January 22, 2004: Thanks to everyone who's donated money! I started work on the Virtual Boy, and I'm almost complete. It would have been finished, but I've got a lab to go to. It's working, but I haven't added the 2 extra buttons in the USB report descriptor, all but 2 buttons are being send to the PC. I've also got to decide how I'm going to do the 2nd dpad. Should I leave it as plain buttons, a direction hat, or what? Any ideas?

Feburary 11, 2004: I've been so busy with classes that I haven't gotten much done. But I did put up a links page with info on different controllers. Any other links you have would be appreciated (except for NES/SNES controllers). Just email me at
N E S U S B @ Y A nospam H O O . C O M (of course, without the spaces and nospam)



NOTE: A limitation as a result of these goals is that multiple controllers per USB adapter or multiple controller adapters (ie multitap) will not be supported.

Known working controllers: Being worked on: First let me explain that this adaper is more than just wires and chips. The USB chip has to be programed with my software for this to work. In order to program it, you'd need a chip burner than supported the chip I'm using. Eventhough I don't know how this will help anyone, I'm putting this up since so many people have asked for it.
Parts list: Schematic: If you have any controllers to sell/donate, please use the donate button at the bottom of the page, or contact me at N E S U S B @ Y A H O O . C O M (of course, without the spaces). I need alot of different controllers. I'm also looking for a UV eraser, if anyone has a used one for sale.
Controllers I have: Controllers I want/need: Newer console controllers are also needed, but I'm focusing on older ones first. Also as the project progresses, I might also be interested in borrowing controllers from rare systems (if I can't find one to buy) long enough to support them. Any information on controllers is welcome and needed.

Site hosted by Build your free website today!