Dual System Custom Arcade Stick

Begonnen von sBastiZH, 13. Februar 2011, 17:55:29

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 1 Gast betrachten dieses Thema.

sBastiZH

Wusste nicht recht, ob hier oder in den Galerie-Casemodding Bereich rein schreiben...

Hab zurzeit grad mal ein Projekt vor mir: Einen Arcade Stick zu bauen, sollte sowohl an PS3 als auch an XBOX360 verwendbar sein. Gehäuse mach ich diese Woche selber, die benötigten Materialien sind unterwegs^^. Hier kommen dann mal die Bilder rein, für die Interessierten.
Ich selbst zocke eigentlich gar nie mit Arcade Stick, ich bin mich zu sehr ans Pad / den Controller gewöhnt und hab eig keine Lust, den Stick zu lernen. Aber mir machts halt Spass, sowas zu bauen.

Ich hab mir das so vorgestellt: Ich nehme die PCBs aus einem Wired XBOX360 und einem PS3 Controller. Die Arcade Buttons und der Joystick werden auf jeweils ein PCB gelötet, und die "Signalhälften" der Kontakte unter den Knöpfen miteinander verbunden. GND sollte common sein, müsste ich also nur einmal bei den PCBs verbinden und auch nur von einem GND aus an alle Arcade Buttons löten. GND und Power vom USB Kabel werden einfach gesplittet und auf beide PCBs gelötet. Die Datenleitungen werden über an einen zweipoligen Minischalter gelegt, so kann man wählen von welchem PCB man das Signal will.

Damit am Schluss alles hält und nix abfällt, wollte ich sobald alles funktioniert die Kabel nochmals mit Heissleim auf den PCBs fixieren. Das sollte denk ich problemlos gehen.

Takeshi

Jap, das funktioniert so. Im Controller hat wirklich jede Taste eine von allen genutzte GND Leitung und eine individuelle Signalleitung. Das kannst du einfach verlängern.

sBastiZH

@Hakan: Wie hast du das Case gemacht? Sieht super aus ^^
Ich spray das Case (mach alles komplett aus Holz, hoffentlich find ich alles im "Abfallholz" in der Schreinerei...) einfach an... Ich kann leider kein Photoshop und hab auch keine Lust mich einzuarbeiten. Sonst hätt man da was machen können, drucken, laminieren & mit beidseitig klebender Folie aufkleben...

EDIT: lol, hab grad die Videobeschreibung gelesen, Case war also schon so XD

sBastiZH

Nun hab ich also endlich alles beisammen, da sind dann noch mal ein paar unklarheiten aufgetaucht...

Die PCBs nehm ich aus billigen Nachahmungs-Controllern aus China.

Das USB-Kabel vom XBox PCB hat 5 Kabel (normalerweise sind es doch 4?), wovon 2 GND zu sein scheinen (schwarz ist ja normalerweise GND, hat Durchgang zum blauen Kabel das standardmässig ja nicht in USB-Kabeln drin ist (?)). Kann ich auf eines der Beiden Kabel (das blaue) in dem Fall einfach verzichten? Dann könnt ich den freien Lötpunkt mit GND auf dem PS3 PCB verbinden...
Was mich auch noch verwirrt: Auf dem XBox PCB haben wirklich alle Knöpfe einen gemeinsamen GND. Auf dem PS3 PCB haben Select, Home und Start Button eigenen GND, alle anderen Knöpfe plus Steuerkreuz haben ebenfalls einen gemeinsamen. Zwischen den beiden besteht kein Durchgang. Das PS3 Pad hat mehrere PCBs drin, welche mit Kabel verbunden sind, GND von Start Home und Select ist dabei (beim Flachbandkabel, das die PCBs verbindet) auch mit "GND" angeschrieben, der Punkt an dem alle anderen Knöpfe zusammen kommen (was daher ja auch GND sein sollte) mit "AIN", aber zwischen den beiden Punkten besteht wie gesagt kein Durchgang... Kann ich die trotzdem einfach verbinden? (falls das nicht geht, kann ich die Start Home und Select Buttons Arcade-Buttons nicht auf beide PCBs löten...)

Ausserdem hätte das USB-Kabel des XBox PCBs auch die perfekte Länge, da müsste ich kein neues mehr kaufen... Allerdings hats am Ende so einen Microsoft-eigenen Anschluss, von dem dann noch ein kurzer Adapter zu USB dran ist... Kann ich das USB-Kabel des PS3 PCB trotzdem wie geplant dort anlöten, oder brauch ich zwingend ein anderes?

Vielen Dank schon mal für die Hilfe.
Falls noch Bilder benötigt werden zu einzelnen Teilen, kann ich noch welche machen...

sBastiZH

Niemand?
Zumindest die Frage mit dem USB-Kabel kann mir sicher jemand beantworten :)

RalleBert

USB Kabel:

Es gibt welche mit einer Abschirmung, die auf GND gelegt ist, wahrscheinlich ist der blaue Draht um die anderen herumgewickelt, die Abschirmung ist nicht zwingend notwendig, schadet aber nicht. Die Standartfarben im USB sind rt, sw, gn, ws = 5V, GND, D+, D-

Pad:

Wenn die entsprechenden Signale keine Verbindung haben, würde ich die nicht auf Masse verbinden, AIN könnte (und wird) ein anderes Signal sein. Aber dazu kannst Du besser noch mal Bilder einstellen, da ich mir das mit den beiden Kabeln und beiden Platinen irgendwie nicht vorstellen kann.

- veni, vidi, ferruminavi -
- ich kam, ich sah, ich l?tete -

sBastiZH

Es sind separate PCBs mit den Kontaktflächen, welche mit Flachbandkabeln mit dem "Haupt"-PCB verbunden sind:


So sieht die Beschriftung aus:


Und hier nochmals wegen dem Microsoft eigenen Kabel: Kann ich dieses Kabel verwenden wie ein USB-Kabel? Oder wirds mir dann an der PS3 nicht mehr laufen? Oder soll ichs einfach probieren? XD

RalleBert

Noch eine Frage meinerseits: Der Controller ist für XBox360 und PS3? Oder willst Du nachher zwei Controller mit den selben externen Tasten bedienen, von denen dann aber nur jeweils einer angeschlossen ist?!

Bei dem Controller würde ich die Start, Select und Logo Tasten separat machen, denn ich denke, das es, wie schon vermutet, keine Masseverbindung zwischen diesen und den restlichen Knöpfen gibt (AIN - Analog in? --> AU/AD/AL/AR - Analog Up/Down/Left/Right).
Mit dem M$ Kabel mußt Du mal durchmessen, es ist dem USB Signal ja sehr egal, wie ein Verbindungsstecker aussieht, nachher muß nur die Belegung (1:1) stimmen.

- veni, vidi, ferruminavi -
- ich kam, ich sah, ich l?tete -

sBastiZH

Zitat von: RalleBert am 25. Februar 2011, 18:22:58
Oder willst Du nachher zwei Controller mit den selben externen Tasten bedienen, von denen dann aber nur jeweils einer angeschlossen ist?!
Das wäre die Absicht. Am Ende will ich aber nur einen USB-Stecker haben, die Datenleitungen werden über einen zweipoligen Minischalter geführt.

Zitat von: RalleBert am 25. Februar 2011, 18:22:58
Bei dem Controller würde ich die Start, Select und Logo Tasten separat machen, denn ich denke, das es, wie schon vermutet, keine Masseverbindung zwischen diesen und den restlichen Knöpfen gibt (AIN - Analog in? --> AU/AD/AL/AR - Analog Up/Down/Left/Right).
Leider ist es genau umgekehrt - Start, Home und Select sind auf GND, alles andere auf AIN. So wie ich es machen wollte, würde nun AIN auf dem PS3 PCB gezwungermassen mit GND auf dem XBox360 PCB verbunden. Wenn das nun nicht geht, bräuchte ich zwei Sätze Arcade Buttons, was ja genau nicht der Sinn ist... Wenn ich Start, Home und Select doppelt machen müsste, wäre das egal, aber so...

Ich verbinde einfach mal GND mit AIN und schaue, was passiert... Wahrscheinlich geht dann einfach nix mehr ;D, dann muss ich halt eine andere Lösung finden...

Nebenbei: Weiss jemand ob in den offiziellen SONY-Controllern wirklich alle Knöpfe wirklich einen gemeinsamen GND haben, oder ist dort der gleiche Mist? Wenn das der Fall ist, kill ich einfach nen alten Sixaxis...

RalleBert

Bevor Du Gnd mit Ain verbindest, mess doch mal vorher, ob Du einen Potentialunterschied hast. Wenn ja, brauchst Du ja gar nix zu killen und kannst es gleich lassen. Alternativ könntest Du versuchen was passiert, wenn Du Ain abklemmst und statt dessen Gnd auf die Tastenseite gibst. Oder Du nimmst einen weiteren Schalter und kannst (mußt) damit dann wie bei dem USB auch umschalten

- veni, vidi, ferruminavi -
- ich kam, ich sah, ich l?tete -

sBastiZH

Anderer Ansatz:
USB-Kabel wird über einen Schalter geführt.
Arcade Buttons werden dabei wie geplant auf beide PCBs verlötet.
Somit sollte alles funktionieren (bzw. ich sehe da keine Probleme mehr, auch wenn dann "AIN" vom PS3-PCB mit GND auf dem XBox360-PCB verbunden ist). Wieso bin ich da nicht eher drauf gekommen? XD

(Würde es auch reichen, nur GND und Power des USB-Kabels über einen Schalter zu führen und die Datenleitungen trotzdem auf beide Boards zu löten?)

RalleBert

Ah, erst jetzt bemerkt...

Es ~müßte~ reichen nur 5V zu schalten, darüber wird ja am Ende alles versorgt. Damit laufen die Daten quasi ins leere. Probiers mal aus, passieren kann eigentlich nix.

- veni, vidi, ferruminavi -
- ich kam, ich sah, ich l?tete -

sBastiZH

#12
Bin mir gerade alles am aufzeichnen, und merke dabei: So gehts auch nicht. GND und AIN wären immer noch verbunden, da die Buttons auf beide Controller-PCBs kommen, wodurch das XBox360 PCB das ganze wieder verbindet.

Ich denke, dass ich jetzt allerdings endlich die Lösung habe:
4-poliger Schalter, GND und AIN werden geschaltet (Auf Lochrasterplatine, dann ist nur je eine Verbindung nötig und ich kann trotzdem alle Buttons verbinden), zusätzlich noch wie zu Beginn geplant die Datenleitungen des USB-Kabels. Oder 3-poliger Schalter, bei dem statt die Datenleitungen 5V des USB-Kabels geschaltet wird.

EDIT:
Geht auch mit 2poligem Schalter XD
5V schalten, dazu noch GND/AIN schalten.

sBastiZH

#13
Hab endlich mal angefangen
und bin auch schon gescheitert

Der PS3 Controller war wohl etwas zu billig... Ich wollte bei den Löchern des Flachbandkabels die Drähte anlöten, die Kontaktflächen waren so schlecht festgemacht, dass die gleich mitkamen (eine sogar schon, als ich nur kurz mit einem mit gelöstem Kolophonium getränkten Wattestäbchen drüber fuhr).
Leiterbahnen aufgekratzt, wollte dort löten, gleiches spiel...
Der XBos Controller ist da viel hochwertiger, obhwohl der genau so wenig kostete...

Kille jetzt also doch nen Sixaxis...

EDIT:
Verdammt, der Sixaxis ist ja um einiges komplizierter. Ich weiss nicht, ob ich den hinkriege :/

EDIT 2:
OK, mit meiner aktuellen Lötspitze kann ich da wirklich nichts reissen... da müsste dann schon ne dünnere her.

sBastiZH

#14
EDIT:
Hat sich schon von alleine gelöst, wens nicht interessiert braucht also auch nicht weiter zu lesen...





Sorry für den Doppelpost...

Also, funktioniert so weit alles bestens. Bis auf die Trigger des XBox360 Controllers.

Die Situation präsentiert sich hierbei wie folgt:
3 Kontaktpunkte: GND, S1 (Signal 1 nenn ichs einfach mal), S2
Alle haben Durchgang mit einem Widerstand dazwischen zueinander.
Wenn der Trigger gedrückt wird, wird der  Widerstand zwischen GND und S1 grösser, der zwischen S1 und S2 kleiner, derjenige zwischen S2 und GND bleibt konstant.

Ich sehe nun nicht so ganz, wie ich das lösen soll... Der Arcade-Button ist ein Mikroschalter, der entweder Durchgang hat oder nicht, was anderes kann ich da nicht machen. Nen anderen Kontaktpunkte auf dem Controller-PCB habe ich auch nicht gefunden...
Im Grunde genommen müssten durch drücken des Arcade Buttons dann ja einfach die Widerstände, welche GND mit S1 und S1 mit S2 verbinden vertauscht werden. Mir ist aber nicht klar wie :/

Für euch Experten ist die Lösung evtl. ganz offensichtlich XD

EDIT:
Hab in nem anderen Tut noch gefunden, dass S1 und S2 an den Arcade Button zu löten das gewünschte Resultat liefern sollte... Dann versuch ich einfach das zuerst mal. Was dann aber auch wieder heisst, dass mein 2-poliger Schalter zum hin- und her wechseln zwischen PS3 und XBox360 PCB wieder nicht mehr reicht :/

EDIT 2:
OK, wenn ich die Vergleichsmessung mit dem immer noch halb zusammen gebauten Controller vorher gemacht hätte, hätte ich das auch selbst rausgefunden... Sorry fürs verschwenden eurer Zeit, ich versuch nächstes mal mein Hirn vorher zu benutzen ;D