GC Adapter and Arduino Setup - Send controller input instead of read it

Discussion in 'Wii U - Console, Accessories and Hardware' started by Bgeo25, Oct 9, 2016.

  1. Bgeo25
    OP

    Bgeo25 Newbie

    Newcomer
    4
    0
    Oct 9, 2016
    United States
    Hello,

    I am attempting to send GameCube controller input data in the form of bytes from a computer connected to an Arduino Uno to each of the colored wires where I split the male and female parts of a GameCube cable. The male end of the cable will eventually connect with my Mayflash GC to Wii U adapter. (See the below diagram in image since it's easier to illustrate what I'm trying to do.)

    [Original setup from: https://github.com/jaburns/NintendoSpy/blob/master/docs/tutorial-gamecube.md]
    Image: https://s10.postimg.org/h9b4yjp7t/GC_Setup.jpg
    [​IMG]

    There are multiple tutorials detailing how to read GC controller inputs (still using an Arduino) from a physical controller, but I want to emulate the GC controller by sending the input data to the male end of the cable directly from the computer/Arduino setup. Are Arduino pins even capable of doing this?

    What would be the best way to accomplish this connection and transmission?
     
    Last edited by Bgeo25, Oct 9, 2016
  2. hippy dave

    hippy dave Butts Butts Megabutts

    Member
    2,584
    1,800
    Apr 30, 2012
    I don't know anything about the controller's comms protocol etc, but an alternative to recreating that would be to attach the arduino's outputs to a circuit board taken from a GC controller, so you just have to switch on/off for each button, and a variable voltage or whatever for analogs. I don't know if the arduino has enough outputs, or if this would be any easier than doing it the other way.
     
  3. Bgeo25
    OP

    Bgeo25 Newbie

    Newcomer
    4
    0
    Oct 9, 2016
    United States
    Thanks for the reply.

    Unfortunately, I don't have a GC controller or any spare parts, but wanted to "emulate" it by sending the input data from computer to GC cable. I guess the Arduino would have enough outputs to help me cover all of the GC controller layout, but (basically), I don't know what kind of data I'd be sending. If I send 3.3V from one of the Arduino's digital pins along the bi-directional data line (as shown by: http://www.int03.co.uk/crema/hardware/gamecube/gc-control.html), how would a game (e.g. SSB4) know the difference between me pressing A and pressing X? There would be no way of distinguishing the buttons just by applying voltage.
     
  4. hippy dave

    hippy dave Butts Butts Megabutts

    Member
    2,584
    1,800
    Apr 30, 2012
    Yeah, it's presumably using some kind of serial protocol, so you'd have to encode the button presses into a serial data stream. You could try and figure it out by reading the code for receiving from a GC controller, or Google for documentation.