Universal wireless controller for SNES, Saturn, N64, etc....

Started by micro, February 15, 2011, 03:06:53 AM

Previous topic - Next topic

chuckhazard

#120
Glad to see this thread is still going, at least semi-recently :)  I read that micro is making great improvements but it doesn't appear that the pcbs are ready yet, so I'm embarking on this project.  The documentation and stuff is very good as it is, and although I know very little about micro controllers I'm good with computers and soldering.  I think I have all the parts I need ready to order but I have some newb questions:

What kind of wire do I need?  In the pictures it looks like you have repurposed old ribbon cable for everything except the SNES programming socket (the thin enameled wire already mentioned).

ISP programming socket/Pin headers.  This is going to be particular to the programmer I use, either 10 or 6 pin?  No part numbers given, although I think I can figure it out, maybe even harvest some old mobo or something.

Reichelt does not appear to ship to USA, so I have been finding matching specs at digikey.  In some cases I could not find exact matches - I could only find 2.2uf capacitors with 10% tolerance, where yours specify 20%.  For the 4.7uf capacitor your part has 20% tolerance - I could only find 10%.  Is this going to matter in either case?

A new question is arising, which is whether a 3V 150mA can be substituted for the 3V 160mA version.

Thanks!
Charles

micro

It doesn't matter if 10% or 20% tolerance.  :D

If you're still looking for the ISP socket, I guess this one is ok.

And yes, I used ribbon cable. But it's new ribbon cable and not old one ;)

QuoteA new question is arising, which is whether a 3V 150mA can be substituted for the 3V 160mA version.
You mean the voltage regulator?

chuckhazard

Yes the voltage regulator, sorry didn't realize I left that out.  I'm having trouble finding those exact specs, though I may have found a SMD one.


chuckhazard

I had not looked at mouser, thanks for that.  I've been looking at digikey.  I found LP2950ACZ-3.0G but those and all the other 2950s  are out of stock until the end of the month.  I was looking at this instead http://www.digikey.com/scripts/DKSearch/dksus.dll?Detail&itemSeq=121801363&uq=634874633658525335 .  If I can order the precise item from mouser instead though, I'll do that.

Thanks,
Charles

micro

Hmm, your digikey link is dead. But just search for LP2950, 3V out, TO92 package. 8)

chuckhazard

Thanks, I found it, all the parts are sitting in the kitchen waiting for the battery to arrive to start assembly.  I actually ended up ordering everything from Mouser instead of Digikey.

nullending

I haven't attempted to make anything yet, currently ordering supplies. I was checking out the schematics and noticed you still have some IO ports available on the RX. Too keep things simple, and make the controllers a bit more 'universal' especially for the N64 you could do two channel switches on the receivers. One A/B switch and one 1/2 switch to get four channels: A1, B1, A2, B2. For the controller, you could use UP and DOWN on the D-pad in addition to buttons A and B (or whatever button combo you want).

i.e.
A = Channel A1 (this is for the lazy people and old code compatibility)
B = Channel B1 (this is for the lazy people and old code compatibility)
A + UP = Channel A1
B + UP = Channel B1
A + DN = Channel A2
B + DN = Channel B2

I don't really like the idea of having a set of controllers for players 1-2 and a separate set for players 3-4, but this is just me being picky. Amazing job on all this, I'm sure we're all gracious that you're allowing the community to partake in the wireless fun.

Any chance of releasing the source?

jars99

micro,
awesome work!

I'd like to build this, but a slightly different version.  I came across this build back in 2007: http://www.ppl-pilot.com/SnesHack/index.htm

It is a wireless SNES that converts to a gamecube port.  What I like about it is that I would be able to use the SNES controller to play gamecube games on my Wii. 

I decided I was going finally start building it this month, but I'm encountering a few problems.  The creator of that project is in Australia.  That along with 5 years having passed, it seems that some of the parts are hard to find in the US.  I'm an IT guy - I know my way around Linux and serial ports and such, but this would be my first build.  So I am a bit of a noob, and maybe the parts really aren't that hard to find. 

Anyway, I came across your project, and thought what if I could use your parts to send GameCube signals?  How much work would it be to program the IC to send GC button presses instead of SNES button presses?

Also, I quickly read through this forum, and found that you were working on "mass-producing" some of the parts.  How is that coming along?


wiggyx

Micro,

  Sent a PM to ya with a little proposal.  Great work!  More than I could accomplish on my own, that's for sure.  Keep up the good work :)

Darien

Signed up to the forum just for this thread. I recently got back into playing my N64, and thought making a wireless controller would be a neat little project.

I've heard that wireless with the N64 is an issue due to data corruption when using controller packs, making it impossible to use with games that rely on the controller pack for their save data. Is this the case?

micro

The Memory Pak is not supported.
That's all I can say.  :P

public-pervert

Guess I'm not the only one curious about how's going your new UWRT project, Micro. ;D Is it still alive?


Darien

Quote from: micro on January 16, 2013, 03:19:58 AM
The Memory Pak is not supported.
That's all I can say.  :P

Damn. So no chance of Perfect Dark using one of these things?

SnoopKatt

Thanks for posting this! I ordered the parts and I can't wait to try it out. I'll post pictures when I'm done.

SnoopKatt

Sorry for double posting, but I understand that the N64 mod doesn't support memory cards. If I made another controller port out of the wireless receiver, could I plug in a wired controller and plug in a memory card into that? Or will the receiver and the controller running together draw too much current?

Marmotta

I've started working on making an N64 wireless pad, but just wanted to know if it would be possible to have a 4 way channel switch?  Obviously it's not necessary on any of the other compatible consoles, so may not be deemed worthy of inclusion, but I would eventually love to have 4 wireless N64 pads.  I'm pretty much a novice with this kind of stuff, so I don't know if it would require modification of the source code, etc. but could anyone confirm/deny if this would be possible?


Marmotta

@micro:  Thanks!  I should've probably read the whole thread before asking.... :-[

SnoopKatt

I put everything together, and I'm having a bit of trouble getting it to work :/
The N64 doesn't see the receiver and doesn't think there is a controller plugged in. I was able to verify all of the fuse settings and MCU .hex, and I measured the voltage from the N64 to be 3.33V, so I think it's getting power. Attached are a couple images of my receiver. Any ideas?

Thanks in advance :)


SnoopKatt

#142
Aw man...how did I miss that  :o good catch, thank you. I'll fix it tomorrow and try again!


SnoopKatt

#144
Thanks, that got it! I tested the controller briefly apart, and it seems to work great. I put it together, and it doesn't work anymore lol. Just gotta mess with it a little more.

Edit: Got it back! Now just gotta put it all together,and cut out the parts for the switches and stuff.

ours1011

Hi all !

Signed up to the forum just for this thread too. :)

First of all, thank you so much micro ! I'm going to make some snes controllers.

But all of this leads to a question ::) ... Is it possible to make a channel 3/4 (and even channel 5) for SNES like you did for N64 ?

Again, thanks a lot !

conquer

Hey micro I just finished my first wireless controller! I made the N64 and hopefully it is the first of many.  I did run into a few problems most of which were probably caused by my poor soldering skills; I expected as much since this was the first time I ever picked up a soldering iron.  now that everything is working i have a few questions i hope you could help me out with

1) When programming the mega8 I connected everything like in your diagram but had to switch mosi and miso to get it to work... this could easily have just been my mistake switching them in the first place

2) for reflashing the microcontrollers, how exactly do you go about that? avrdude wouldn't recognize the mcu's after i'd flashed them

3) The first time I tried to get the controller to work, the cursor wouldn't stop moving upwards.  Eventually I just used another controller board and the problem was solved, but I'm wondering do you have any suggestions for troubleshooting the broken board?  Another thing I noticed is that the boards I used appeared to be two different versions based on what was printed on their mcu's, i dont know if that would make a difference though

4) lastly, I have a general question for all the rx parts.  is it possible to include an led in the rx side that turns on when a controller is turned on?  I was thinking something like that would be useful if there were 4 wireless controllers and someone wanted to see what player they were, the rx side could light up when they turned on their controller

also i just wanted to say thanks for the instructions and everything this was the first mod i've even attempted doing and it's all thanks to you

SnoopKatt

Once you program the low fuse, you need the crystal with the two capacitors hooked up for the chip to respond to the AVR programmer.

sazyario

Hello!

Is there any way to manipulate what you have already created to get this working on a Genesis 6 button controller?
I haven't done any microcontroller programming in about 5 years, and even then it was on a 6502 and z80. All done in assembly, not HEX.

I understand that it is possible you may not know off the top of your head consider you having heavily invested in the Nintendo portion of this.
Would the Saturn files possibly work? I assume it wont because there are more data lines inside the Saturn controller than the Genesis controller.

I would greatly appreciate any help you have with Genesis compatibility in this. While I am more then able to use downloaders, EPROM burners and solder some components together I do not know how to program for these Atmel microcontrollers.

Thanks!

novadaemon

Micro, thanks for all your work.

Have you considered selling DIY kits for this mod? It would be nice to get a kit with the micro controllers preprogrammed and all necessary parts if possible.

KillingBeans

Quote from: sazyario on February 25, 2013, 05:30:32 PM
Is there any way to manipulate what you have already created to get this working on a Genesis 6 button controller?

I'm gonna give this a go if Micro doesn't beat me to it. Got a pair of official IR controllers that would become way more usable if they were converted to 2.4GHz  ;D

eitnot

For the Snes controller if I build it with the charger built in is there a way to wire it to use one LED for charging and power on?  I was thinking of using a red/green bipolar LED but not sure how to integrate the two circuits.

micro

I won't add any new features or console support to the old code. It'd just be a waste of time.
Instead I'd like to work on v2 but unfortunately I don't have any spare time atm....

Also I don't think it's possible to make a wireless Genesis controller by hacking/modding the Saturn version of the mod...

@eitnot: I've just had a look at the schematics, I don't think there's an easy way to use one LED for charging and power.

ours1011

Quote from: micro on March 02, 2013, 03:34:03 AM
I won't add any new features or console support to the old code. It'd just be a waste of time.
Instead I'd like to work on v2 but unfortunately I don't have any spare time atm....
Go buy some extra time !  ;D

No, seriously, thanks for the answer ! So I'm going to sit here and wait for news about v2.

Cya.

sazyario

How far along is v2?
I'm assuming you're not willing to release the source code (c, c++, etc)
If you don't have the time why not make it a community project?

With community support maybe we can even add rumble, memory card and gameboy support to the n64 code.

Once again I understand this is your baby, your project. And I will admit that my request for this is my own laziness. I would much rather use a known code base to build my modifications off if rather than starting from scratch. While I'm more then happy to contribute to a community project where multiple persons can collaborate on fixing issues and creating compatibility, solo-ing this is a daunting idea. I commend you for what Yu have done.

eitnot

Thanks for all your work this project is awesome.  I finished my first Snes controller a couple weeks ago and it works perfectly.  Looking forward to v2.

Figured out what I'm going to do for the LED question.  I'm going to pick up some dual color led's like these

http://www.ebay.com/itm/10pcs-5mm-Dual-Color-Bi-Color-Red-Green-Super-Bright-3-Pin-Water-Clear-Led-RG5L-/390363938022?pt=LH_DefaultDomain_0&hash=item5ae380fce6

Then change the toggle switch to a DPDT switch so I can toggle which circuit the cathode is connected to.

Thanks again

Marmotta

I'm trying to flash the Atmel chips using a USBtinyISP device, but am having no luck in getting avrdude to recognise the chips.  I would just ask if somebody would be prepared to sell some pre-flashed chips, but I would like to persevere, not just for this but for any future projects which may require flashing, despite not getting any further than a bunch of responses that my programmer should be working fine.

I can't help but think it's some basic oversight that means I can't program the chips and was wondering if anyone could take a quick look at how I've wired up one (ATtiny2313 in this case) to see if they can notice anything wrong:



Thanks

KillingBeans

#157
Looks like you have two wires connected to one end of the resistor (+ pin 1) and nothing to the other end.

micro

It seems KillingBeans is right  ;D
Also, I don't see you providing power to the microcontroller. It seems your programmer can supply power but only if you set the according jumper. Did you? http://www.ladyada.net/make/usbtinyisp/use.html

Grambo

Quote from: eitnot on March 03, 2013, 03:27:18 AM
Thanks for all your work this project is awesome.  I finished my first Snes controller a couple weeks ago and it works perfectly.  Looking forward to v2.

Figured out what I'm going to do for the LED question.  I'm going to pick up some dual color led's like these

http://www.ebay.com/itm/10pcs-5mm-Dual-Color-Bi-Color-Red-Green-Super-Bright-3-Pin-Water-Clear-Led-RG5L-/390363938022?pt=LH_DefaultDomain_0&hash=item5ae380fce6

Then change the toggle switch to a DPDT switch so I can toggle which circuit the cathode is connected to.

Thanks again

If you go with one of those, keep in mind that your battery life will decrease.