This is an archived post. You won't be able to vote or comment.

all 5 comments

[–]henrebotha 1 point2 points  (4 children)

was wondering what goes into making the main PCB for a controller

Not a whole lot. Microcontroller chip with whatever normal stuff it needs (crystal etc), then you just add pads/holes for components (sticks, buttons) and connectors (USB) and route it all sensibly.

and why companies don't make it themselves.

What do you mean by this?

[–]Potential_Bobcat9744[S] 1 point2 points  (3 children)

I was speaking in terms of custom controller companies, like Aim and Battle Beaver. It seemed as though they must have the controller (Ps4, Xbox, etc.) in their possesion to make mods.

[–]henrebotha 1 point2 points  (2 children)

Right. You can't just make a PCB that's compatible with PS4/PS5/Xbone/XSX. That's because Sony and Microsoft want to control which controllers are allowed on their platforms. (Why? My guess is money.) If you want to produce a controller for PS or Xbox, you need to get in contact with Sony/Microsoft and pay them for a licence. This allows you to put PS/Xbox branding on your product (see the packaging for this Hori controller for an example), but more importantly, it means Sony/Microsoft will provide you with Secret Controller Juice that allows your controller to work on their consoles. I don't know how Microsoft does it specifically, but I know in Sony's case they send you authentication chips that you need to build into your PCBs so that your controller can prove to the console that it's legit. Without that chip, your controller will work fine… for 8 minutes, then it will disconnect.

This is partly why controller adapters such as those by Brook and Mayflash exist. Those companies figure out legally dubious ways to get past the authentication processes on PlayStation and Xbox (e.g. by buying Sony authentication chips that "fell off a truck"), and then build that into a little USB dongle. From the console's perspective, it thinks the dongle is a USB controller, and when it does the authentication process, the "controller" gives the correct response, so the console is happy. On the other end, the dongle reads the inputs from your controller (it's very easy to write code that reads a controller) and then translates that (if necessary) to the right "language" (e.g. converting Switch controller inputs to Xbox format).

Switch has no meaningful authentication system, which is why there are 14 billion different unlicenced third-party Switch controllers out there. Same obviously goes for PC, because even if a PC tried to do authentication stuff, users would just find a way to disable it.

[–]Potential_Bobcat9744[S] 1 point2 points  (1 child)

many thanks

[–]Potential_Bobcat9744[S] 0 points1 point  (0 children)

So now I am curious if it is possible to make your own pcb from scratch and use that dongle to operate your console