Ok, long story short, I am making a TAS bot with my Uno for the Super Nintendo.
I'm definitely much more of a programmer than I am a hardware person, so I need some help. I've found two different guides to reference in this project, one of which is a guide to creating a SNES controller out of the Arduino (essentially what I need) and the other, a bot (what I want to do) but for the original NES, which has an identical controller system other than there being less buttons.
Now, my question is regarding the grounds. In the first link, the 5V coming from the controller cable is used to power the shift registers and the registers are also grounded to the console through the controller cable. The only thing coming from the Arduino is the output pins which correspond to each button. This actually functions fine for me.
On the second link, it's essentially the same thing(ignoring the SD card) but the author mentions connecting the NES ground to the Arduino ground, which sounds totally logical to me but when I do that with my circuit the light on my SNES actually comes on(while the console is powered off) when the Arduino is powered either by USB or batteries which means the Arduino is some how forcing power back into the console, which I don't think should be happening. Everything still works like this but it worries me and I've rebuilt the circuit numerous times now thinking I had something connected wrong.
Is this because of there being two different power sources and the 5V of the Arduino is not being utilized? I figured since the Arduino is using the output pins, the ground should be connected, but maybe I'm wrong? I can power the Arduino with the console's 5V line and connect the grounds once I'm done programming, which works fine too, but I'm still curious as to what is going on here.