What's new

Question controller trouble

Boston

.
Joined
Oct 19, 2024
Messages
11
Likes
1
I am new at making portables. I am currently working on a Wii portable and have no idea what I'm doing. Especially how to do the controllers. I have searched the internet far and wide researching and have found almost nothing on how to build it. I have found that I need a microcontroller. If this is helpful I am using the GC+2 from 4layertech. Someone please help me with this. Thanks.
 

Stitches

2 and a Half Dollarydoos
Staff member
.
.
Joined
Feb 5, 2017
Messages
4,226
Likes
3,305
Location
Banana Bender Land, Australia
Portables
6
Can you elaborate on what aspects of controllers in particular you'd like an explanation for?
 

Boston

.
Joined
Oct 19, 2024
Messages
11
Likes
1
Can you elaborate on what aspects of controllers in particular you'd like an explanation for?
Every aspect as a matter of fact. I have no clue what Im doing. I watched some other portable videos hoping that some of them would explain how to design the controller but no. Just things like designing the custom PCB boards for the controller, connecting the controller to the portable itself, just everything.
 

Stitches

2 and a Half Dollarydoos
Staff member
.
.
Joined
Feb 5, 2017
Messages
4,226
Likes
3,305
Location
Banana Bender Land, Australia
Portables
6
Every aspect as a matter of fact. I have no clue what Im doing. I watched some other portable videos hoping that some of them would explain how to design the controller but no. Just things like designing the custom PCB boards for the controller, connecting the controller to the portable itself, just everything.
At its most basic, the controller is a set of binary state (on or off) and analog state (a spectrum between two points usually represented as a 256 point scale) sensors. Binary data is tied to buttons, which can be either pressed (on) or unpressed (off) at any given moment. Analog data on the Gamecube is tied to triggers and joysticks, where the exact position along the spectrum of each sensor is used to determine how "pressed" an input is on a scale of 0 (minimum) to 255 (maximum).

The GC+ controller replacement board makes connecting suitable physical controls easy by providing easy to access solder points for every input that the Gamecube controller requires.

There are several ways to achieve each input type when considering your controller design. Button inputs on the Gamecube are binary, either pressed or not pressed. The way this is detected is that the PCB pad for each button is outputting a weak voltage signal, and monitoring it. If that voltage signal is temporarily connected to GND (ground/collective negative), the controller will detect that and consider the button to be pressed until the signal is disconnected from GND and returns to normal. You could visualise it like watching a propeller wheel inside a water pipe. When the end of the pipe is closed, no water can flow and the wheel doesn't turn. Open the end of the pipe, water can flow and the wheel will turn. This is the electrical principle of how simple button inputs work.
Any form of switch that can temporarily ground the voltage signal for that input can be used to make that button work. This is achieved in official Gamecube controllers via exposed gold or carbon plated contacts on the PCB used alongside squishy silicone pads with a conductive carbon bottom layer. When the conductive layer touches the PCB contacts, it connects the button's voltage signal to GND while the button is pressed to register the input. For testing and also sometimes just tactile preference, we use something called a Momentary Tact Switch which is a pre-assembled spring loaded button package that does the same job as the PCB contacts + conductive pad. One leg is connected to the button signal pad, and the other leg is connected to GND. When the button is pressed, the two are connected and the input is detected. This principle applies to ABXY, the dpad, the start button, and the Z bumper trigger.

Joysticks and the LR analog triggers are a bit different. They utilise a thing called a voltage divider to produce a variable voltage based on the position of each sensor along its path of movement (how depressed a trigger is and where a joystick is tilted). The controller knows the minimum and maximum bounds of this voltage spectrum and can produce accurate inputs quite easily. These voltage dividers have 3 pins, one supplying voltage, one supplying a GND connection, and one output pad to send the variable voltage signal to the controller. The middle pin is almost always the signal pin, while the outer pins can be either voltage or GND depending on the physical orientation of the sensor. Conveniently, all of the supply voltage can be connected together and all of the GND connections can be connected together to make routing a bit easier.

This information should help to contextualise the diagram that Jeff posted above. These mechanisms are a part of the basic conceptual framework of electronics in general, so I'm not surprised that they aren't touched on much in design tutorials. They likely assume that you already know that much, which isn't too helpful for absolute beginners.
 

Boston

.
Joined
Oct 19, 2024
Messages
11
Likes
1
At its most basic, the controller is a set of binary state (on or off) and analog state (a spectrum between two points usually represented as a 256 point scale) sensors. Binary data is tied to buttons, which can be either pressed (on) or unpressed (off) at any given moment. Analog data on the Gamecube is tied to triggers and joysticks, where the exact position along the spectrum of each sensor is used to determine how "pressed" an input is on a scale of 0 (minimum) to 255 (maximum).

The GC+ controller replacement board makes connecting suitable physical controls easy by providing easy to access solder points for every input that the Gamecube controller requires.

There are several ways to achieve each input type when considering your controller design. Button inputs on the Gamecube are binary, either pressed or not pressed. The way this is detected is that the PCB pad for each button is outputting a weak voltage signal, and monitoring it. If that voltage signal is temporarily connected to GND (ground/collective negative), the controller will detect that and consider the button to be pressed until the signal is disconnected from GND and returns to normal. You could visualise it like watching a propeller wheel inside a water pipe. When the end of the pipe is closed, no water can flow and the wheel doesn't turn. Open the end of the pipe, water can flow and the wheel will turn. This is the electrical principle of how simple button inputs work.
Any form of switch that can temporarily ground the voltage signal for that input can be used to make that button work. This is achieved in official Gamecube controllers via exposed gold or carbon plated contacts on the PCB used alongside squishy silicone pads with a conductive carbon bottom layer. When the conductive layer touches the PCB contacts, it connects the button's voltage signal to GND while the button is pressed to register the input. For testing and also sometimes just tactile preference, we use something called a Momentary Tact Switch which is a pre-assembled spring loaded button package that does the same job as the PCB contacts + conductive pad. One leg is connected to the button signal pad, and the other leg is connected to GND. When the button is pressed, the two are connected and the input is detected. This principle applies to ABXY, the dpad, the start button, and the Z bumper trigger.

Joysticks and the LR analog triggers are a bit different. They utilise a thing called a voltage divider to produce a variable voltage based on the position of each sensor along its path of movement (how depressed a trigger is and where a joystick is tilted). The controller knows the minimum and maximum bounds of this voltage spectrum and can produce accurate inputs quite easily. These voltage dividers have 3 pins, one supplying voltage, one supplying a GND connection, and one output pad to send the variable voltage signal to the controller. The middle pin is almost always the signal pin, while the outer pins can be either voltage or GND depending on the physical orientation of the sensor. Conveniently, all of the supply voltage can be connected together and all of the GND connections can be connected together to make routing a bit easier.

This information should help to contextualise the diagram that Jeff posted above. These mechanisms are a part of the basic conceptual framework of electronics in general, so I'm not surprised that they aren't touched on much in design tutorials. They likely assume that you already know that much, which isn't too helpful for absolute beginners.
Thank you VERY much. This was extremely helpful. I also have purchased a GameCube controller and while its unnoficial, it works flawlessly with my GameCube and emulators. So I can also take that apart and use that for reference as well.
 
Top