PS4 controller blog

PS4 controller blog

Eerste overzicht

Allright,

 

Op dit moment zijn er 2 dingen die we willen proberen om een aangepaste ps4 controller te maken, geen van beide zijn 100% zeker, maar lijken haalbaar te zijn. We verkiezen optie 1 omdat het minder complex is, maar werken ondertussen ook aan optie 2 als een plan B.

 

Wat zijn de opties:

1: een bestaande controller aanpassen

Hiervoor hebben we gisteren een controller ontvangen. We hebben de controller opengehaald en uitgezocht waar alle knopjes op het hoofdbord terechtkomen.
Dit was vrij duidelijk voor alle knopjes behalve de triggers L2 en R2. waar andere knopjes met 2 draadjes verbonden zijn (eentje voor signaal, eentje voor aarding) zijn de triggers met 4 draadjes verbonden.

Tussen deze draadjes zitten weerstandjes die het signaal omzetten in waardes die het hoofdbord snapt en doorgeeft naar de playstation, maar we vinden vrij weinig informatie over hoe dat in zijn werk gaat.

Het idee was om op de padjes op het hoofdbord nieuwe knopjes te solderen, maar al snel bleek dat dat niet zo simpel zal zijn. Op de padjes zit een laagje grafeen, dit geleid wel op het flexibele bordje, maar je kan er niet op solderen.

We zouden kunnen proberen deze laag weg te krabben tot we op het koper eronder komen (daarop kunnen we wel solderen), maar als we daar een fout maken en te veel wegkrabben is de hele controller verloren (en die zijn niet goedkoop).

Gelukkig hebben we via ali express een fabrikant gevonden die flexibele bordjes maakt die aan 1 kant op het hoofdbord passen, en aan de andere kant de mogelijkheid geven om nieuwe knopjes op te solderen.

Deze bordjes worden gebruikt om scuf controllers te maken, maar je kan ze dus ook voor andere dingen gebruiken :).

Dit bordje is in bestelling en zal over 2 à 3 weken aankomen. vanaf dan kunnen we eraan verder werken.

 

2: Een software oplossing (gimx)

 

Optie 2 is om een software programma te gebruiken dat met de PS4 praat.

Het voordeel is hier dat we meer vrijheid hebben in wat we kunnen aanpassen, en dat we niets in de controlleren moeten wijzigen (stel dat deze controller stuk gaat kunnen we gewoon een andere koppelen).

Groot nadeel is wel dat er dus een computer moet zijn die de software draait, maar daar zijn oplossingen voor. Het idee is om een raspberry pi w (een heel kleine computer) te gebruiken om gimx te draaien.

Je kan deze software gebruiken met een toetsenbord en muis, of een andere game controller (stuur, joystick,...). Wij gaan zelf een gamepad maken door de knopjes te verbinden met een arduino (een andere kleine, maar veel minder krachtige computer).

De arduino doet zich voor op de raspberry pi als een game controller, en de raspberri doet zich voor op de ps4 als een ps4 controller (klinkt complex, maar valt best mee hoor).

Ook hier zijn er nog wat onderdelen onderweg uit china, maar die zijn al een tijdje eerder besteld dus dit zal iets sneller voortgang maken dan de eerste optie.

Optie 2 voortgang


Er is een klein beetje voortgang in het GIMX project.

De raspberry pi en bluetooth dongle zijn aangekomen. Dit zijn de twee belangrijkste onderdelen in dit project.

De raspberry pi is ondertussen ook al uitgerust met GIMXOS, een operating system speciaal voor de raspberry pi met GIMX op geinstalleerd.

Enige dat nu nog ontbreekt om een eerste test te doen is de GIMX adapter kabel, deze is nodig om een eerkste keer met de playstation te verbinden (net zoals je zou doen met een gewone controller) maar bij deze kabel zit er nog een microcontroller tussen.

We gaan vanavond proberen deze microcontroller te voorzien van de juiste firmware, en misschien kijken of we al een kleine test kunnen doen.

 

edit

We hebben een eerste test met succes gedaan, en hebben er een filmpje van gemaakt.

 

Gimx update #2


Gimx update #2

weer een avondje aan de gimx setup gewerkt. de usb-hub en arduino pro micro zijn toegekomen. dus de adapterkabel is een stuk kleiner geworden! 🙂

Helaas is de bluetooth dongle niet geschikt om verbinding te maken 🙁 daar zullen we dus een nieuwe voor moeten zoeken.

gimx update #4


Gimx update #4

Na lang prutsen eindelijk een arduino leonardo kunnen programmeren om als joystick te dienen.

Waarom is dit belangrijk? de arduino gaat met de raspberry pi praten om de status van de joysticks en knoppen door te geven (en dan verder naar de ps4), en dankzij een usb-switch zal het ook mogelijk zijn om het hele bord ook op de PC te gebruiken voor games te spelen! 🙂