I am curious as to how only 2 wires (perhaps 3 or 4) inside a N64 or Wii gamepad are able to send the many signals of the different inputs at once.

It used to be that for just one ON/OFF input, we needed two wires. So why does it not take dozens of wires for the many inputs on a modern gamepad?

  • How many can or how many are? These are very different questions.
    – tzenes
    Oct 18, 2010 at 15:33
  • @tzenes The title is "How the many [...]", implying this is less about quantity and more about how it is able to do it all with only two wires.
    – Grace Note
    Oct 18, 2010 at 15:38
  • @Grace it is awkward phrasing so I wanted clarification.
    – tzenes
    Oct 18, 2010 at 15:41
  • 3
    My digital TV arrives as a coaxial cable that has two wires, that carries a massive amount more info than a joystick's ever going to send!
    – GAThrawn
    Oct 18, 2010 at 15:58
  • Though @tzenes' answer about what encodings the N64 uses for its buttons is interesting, it does not really answer the question, which seems to be How does multiplexing work?. This question is outside the scope of this site, and should probably be closed. Oct 18, 2010 at 18:34

2 Answers 2


So the Wii Joystick uses a Blue Tooth interface which is a little different than the N64 controller. As a result this answer deals more with the latter than the former.

The N64 controller uses a single transmission wire on which it encodes bits to send signals back to the N64 console. To accomplish this bits are encoded on that wire as follows:

alt text

This encoding can then be used to multiplex the connection and allow 32 bit communication. In the case of the N64 controller these bits are encoded thus:

0   A
1   B
2   Z
3   Start
4   Directional Up
5   Directional Down
6   Directional Left
7   Directional Right
8   unknown (always 0)
9   unknown (always 0)
10  L
11  R
12  C Up
13  C Down
14  C Left
15  C Right

With the remaining 16 bits being used for the Analog Joystick (providing 8 degrees of control).

More over, certain codes are transmitted for specialized function:

To Init: send 03 80 01 followed by 34 80's
To Start Rumble: 03 c0 1b followed by 32 01's
To Stop Rumble: 03 c0 1b followed by 32 00's

You can find more information in this vein here

  • TL;DR version: serial communication Dec 2, 2010 at 5:57
  • the wii is not very different, it still uses packages of data. Dec 2, 2010 at 5:59
  • @alexanderpas - One could even argue that the Wii Classic Controller connects to the Wii Mote using a Serial type connector which communicates over a serial communication standard then transmited over Blue Tooth
    – Ramhound
    Sep 21, 2012 at 15:21
  • oh if it uses bits... then 8 bits will allow 256 different signals... 16 bits will allow 65536... I just didn't think that the controller is able to communicate using digital signal Feb 17, 2020 at 7:20

I'm not sure if this is on-topic or not, but digital devices like joysticks send a digital signal by constantly changing the voltage in the wire from ON (usually 5V) to OFF and back at a certain time interval.

A sequence of on/off values like this is interpreted as a bunch of bytes which have some kind of meaning to the device. For instance (totally invented example), pressing A might send "off off off off on on on on", which is the number 15 in binary. The console would know that "15" is a code meaning "A button was pressed".

This all happens so fast that it seems instantaneous.

  • Is your on-topic concern about the question or your answer? If it's the former, don't worry, it's on-topic.
    – Grace Note
    Oct 18, 2010 at 15:42
  • Yes, the question. Awesome, I wasn't 100% sure.
    – lilserf
    Oct 18, 2010 at 17:42

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .