Deutsches Tutorial


Umgestellt: Link.

[spoiler]Die erste Ãœbersetzung war von cool&fast geschrieben.
Paddy hat diese Ãœbersetzung geschrieben.
Danke!

Einleitung

Diese Anleitung beschreibt, wie man die PS3 über eine Tastatur oder Maus, welche an einen PC angeschlossen sind, steuert.

Die Weiterentwicklung basiert auf der Arbeit von Jim Paris, vielen Dank dafür!

Ich habe einige Änderungen am Quellcode gemacht, eine GUI für eine einfachere Konfiguration erstellt und die Installationsschritte für Debian-basierende Linux Distributionen wie Ubuntu vereinfacht.

Falls Du sehen möchtest, wie es funktioniert, schau Dir dieses Video von McKack an:

PS3 games with keyboard & mouse - Sixaxis Emulator v0.11

Vorraussetzungen

  • Ubuntu Live CD (oder jede andere auf Debian basierende Linux-Distribution)
  • ein Sixaxis, der bereits mit der Ziel-PS3 verwendet wird
  • ein Bluetooth Dongle mit einem Chip, bei dem man die bdaddr (bluetooth device address / Bluetooth Geräteadresse) ändern kann. Für einfach das Tutorial aus, um festzustellen, ob dein Bluetooth Dongle geeignet ist.

Anmerkungen

Durchführung auf eigene Gefahr!
Ich bin NICHT verantwortlich für etwaige Schäden, die an Deiner PS3 oder am PC entstehen könnten

Billige (ein paar €) CSR Bluecore4 Dongles, bei denen gemeldet wurde, dass sie funktionieren, sind auf ebay erhältlich.
Bluecore4 ist der erste CSR bluecore chip, welcher EDR (Enhanced Data Rate) unterstützt, also sind die Schlagwörter für die Suche CSR and EDR.
Achtung: viele ebay CSR Dongles sind Fälschungen!
Bitte beachte, dass ich NICHT für nicht-funktionierende Dongles verantwortlich bin, die Du kaufst!

Versuche nicht, den Sixaxis Emulator und den Sixaxis Controller zur selben Zeit zu verwenden und setze die BDADDR zurück, wenn Du den Sixaxis Emulator nicht mehr verwendest.

Die Anleitung ist für UBUNTU geschrieben, gestartet von der CD, es wird nichts auf der Festplatte gespeichert.

Du kannst Dir Ubuntu auf deinem PC installieren! Falls Du ein Windoows Betriebssystem hast, dann kannst du in diesem Tutorial nachlesen, wie Du Ubuntu installieren kannst, ohne Windows zu löschen.

Eine weitere Möglichkeit ist, den Sixaxis Emulator von einem Ubuntu Live USB Persistent Flash Drive zu starten (lies dazu diesen Post).

1 Installation

Füge “universe” zur Paketverwaltung hinzu:
– Klicke auf System>Systemverwaltung>Synaptic Packetverwaltung.
– Klicke
auf Einstellungen>Paketquellen.
– Wähle universe aus, schliesse das Fenster.
– Klicke auf
Neu laden und schliesse den Packetmanager.

Lade folgende Dateien herunter:

Installiere (Doppelklick, dann installieren).

2 Schnellstart

Schliesse den Bluetooth Dongle und den Sixaxis an den PC an.
Starte sixemugui (Verknüpfung: Anwendungen>Spiele>Sixemugui).

  1. Wähle den Sixaxis aus
  2. Wähle den Bluetooth Dongle aus
  3. Setze die Dongleaddresse (vergiss nicht, die alte Adresse aufzuschreiben)
  4. Wähle wieder den Sixaxis und den Bluetooth Dongle aus
  5. Zieh den siaxis raus und falls er sich nicht von alleine abschalte, drücke den PS3-Knopf, bis er sich von alleine ausschaltet
  6. Stell die Parameter für den emuclient ein
  7. Wähle das Konfigurationsfile aus, welches verwendet werden soll
  8. Starte emu (emuclient selbst startet, falls die Verbindung erfolgreich ist)
  9. Spiele mit deiner PS3 (Drücke Escape um den Emulator zu beenden)
  10. Stoppe den emu

Anmerkung: File>Save speichert deinen Sixaxis- und PS3-Adresse, dann musst Du den Sixaxis danach nicht mehr anschliessen.

3 Eigene Einstellungen für Maus, Tastatur und Joysticks

Es wird empfohlen, die Tastatur- und Mauseinstellungen für jedes Spiel einzustellen und abzuspeichern.

Konfigurationsdateien müssen im Verzeichnis ~/.emuclient/config gespeichert werden (~ ist das Home-Verzeichnis).

Starte sixemuconf (Verknüpfung: Anwendungen>Spiele>Sixemuconf).

Screenshots meiner Konfiguration für COD: Black Ops:


Es ist möglich, eine Konfiguration fürs Zielen mit der Maus zu definieren: kopiere die Konfiguration #1 zur Konfiguration #2, definiere die rechte Maustaste as Konfigurations #2 Trigger um zurückzuschalten und stelle die Mausmultiplikatoren und -exponenten ein.

Folgenden Auswahlpunkte aus dem Menu “Edit” ermöglichen eine Konvertierung der Konfiguration:

Im Menüpunkt “Replace Mouse” kann der Mausname und die ID geändert werden.
Im Menüpunkt “Replace Keyboard” kann der Tastaturname und die ID geändert werden.
Im Menüpunkt “Replace Mouse DPI” kann der Mausmultiplikator in Bezug auf die alten/neuen DPI-Werte (je höher, desto besser) eingestellt werden.

4 Maus Kalibration

Bevor die Maus kalibriert wird, stelle sicher, dass die in-game Sensitivität maximal eingestellt ist und dass die Maus DPI auf den größten Wert gesetzt wird.
Um den emuclient mit Mauskalibrationsmodus zu starten, wähle Mouse>Calibrate in der sixemugui Anwendung aus und starte dann den emuclient.

Die aktuellen Mauskalibrationswerte werden im “Mouse calibration”-Teil der GUI angezeigt.

Diese Kalibrationsmodus erlaubt eine Kalibration für jede Maus unabhängig voneinander. Es liest die Werte der geladenen Konfiguration. Um die Werte zu ändern, drücke rechte Strg (rctrl) + FX-Taste und verwende das Mausrad.

Der Dead-Zone-Wert muss auf den größtmöglichen, stabilen Wert gesetzt werden.
Verschiedene Dead-Zone-Werte für x und y machen nur Sinne für eine rechteckige Dead-Zonen-Bereich.
Der Dead-Zonen-Bereich sollte auf die stabilsten Werte gesetzt werden.

5 Tastaturmakros

Es ist möglich, die Tastaturmakros zu konfigurieren.

Ein Tastendruck generiert eine Reihe von Events mit zeitlichen Abhängigkeiten.

Die Kommandos sind die folgenden:
– Taste runterdrücken (key down)
– Taste loslassen (key up)
– Taste drücken (= Taste runterdrücken + warten + Taste loslassen) (press key)
– warten (delay) (Einheit = ms)

Jedes Macro muss in einer Datei gespeichert werden, die im Verzeichnis ~/.emuclient/macros liegt(ist das Home Verzeichnis/Persönlicher Ordner, der Ordner .emuclient ist versteckt).

Beispiel: macro_example.txt

#Definiert die Aktion/Taste, die das Makro startet
MACRO F1
#führt einen Tastendruck aus (Taste runterdrücken + 50ms warten + Taste loslassen)
KEY e
#warte 50ms
DELAY 50
#drücke eine Taste runter

KEYDOWN SPACE
#warte 50ms (minimale Verzögerung zwischen Taste runterdrücken und wieder loslassen)
DELAY 50
#Taste loslassen
KEYUP SPACE

Zeilen, die mit # beginnen, sind Kommentare.

Alle Tasten der Tastatur können ein Makro auslösen.
Die vollständige Liste kann in folgender Datei nachgelesen werden: conversion.c.

6 Fehlerbehebung / Feedback

Ich stelle das Projekt kostenlos zur Verfügung, gib mir also ein Feedback.

Schreib mir, ob es funktioniert oder nicht, insbesondere folgende Details:

  • die Linux Distribution
  • die PS3 Hardware Version (Slim, Fat 40Gb, Fat 60Gb, …)
  • die PS3 Firmware Version
  • den Bluetooth Dongle (exaktes Model + Revision, falls es eine gibt + die Ausgabe der Kommandos “hciconfig -a hci0” und “sudo hciconfig hci0 revision” in einem Terminal)
  • Die Hardware deines PCs (zumindest CPU und die Menge an RAM)

Schreibe mir das als Kommentar in diesen Blog.

Und falls es nicht funkioniert, überprüfe zuerst, ob du die aktuellste Version hast.
Dann schaue in der FAQ (English) und in der Bug liste nach, ob das Problem bereits bekannt ist, und falls nicht, melde sie.
Paypal Spendenlinks sind rechts oben in der Ecke dieser Seite.[/spoiler]

Sixaxis Emulator Tutorial (DE)


Dieses Tutorial ist nicht mehr aktualisiert. Das neue Tutorial ist hier : Link.

[spoiler]cool&fast aus www.gtrp.de hat diese Ãœbersetzung geschrieben (danke!).

Einführung

Diese Anleitung erklärt, wie man die PS3 über eine Tastatur oder Maus, welche an einen PC angeschlossen sind steuert.
Der PC muss mit Linux laufen und ein Bluetooth Dongle besitzen.
Diese Sixaxis Emulator war zuerst von Jim Paris geschrieben. Ich habe einige Änderungen gemacht.

Voraussetzung

* UBUNTU 10.04 oder später (Kann hier gratis UBUNTU Download heruntergeladen werden)
* Ein Sixaxis Controller, welcher schon an der (zu steuernden) PS3 benutzt wurde
* Ein Bluetooth Dongle mit einem Chip, auf welchem BDADDR (Bluetooth Geräte Adresse) geändert werden kann. Wenn du die Anleitung durchspielst, merkst du automatisch, ob dein Dongle unterstützt wird.

Es gibt auf ebay günstige Dongles. Schaue nach einem Dongle mit dem Keyword CSR und EDR.

Wichtig
Du machst diese Änderungen auf eigenes Risiko. Ich bin nicht verantwortlich für Schände, die an deiner PS3 oder deinem PC entstehen.

Vor dem Starten…

* Entferne alle USB und/oder Bluetooth Anschlüsse am PC, oder deaktiviere sie.
* Versuche nicht, den Sixaxis Emulator und den Sixaxis Controller zur selben Zeit zu verwenden und setze die BDADDR zurück, wenn Du den Sixaxis Emulator nicht mehr verwendest.

Die Anleitung ist geschrieben für UBUNTU gestartet von der CD, es wird nichts auf der Festplatte gespeichert.

Nachdem Schritt 1 und 2 der folgenden Anleitung erfolgreich gemacht wurden, können bei einem Neustart des Sixaxis Emulators von der CD die folgenden Schritte 3 und 4 mit einem Skript ausgeführt werden.

Brenne das heruntergeladene UBUNTU auf eine CD und starte den PC von der UBUNTU CD…

Schritt 1

Finde die Bluetooth Adressen der PS3 und des Sixaxis-Controllers heraus:

Verbinde den Sixaxis Controller mit dem USB Kabel mit dem PC.

Starte das Terminal-Fenster (Alt+F2), oder via Anwendugen/Zubehör/Terminal und gib die folgenden Befehle genau so ein (am besten via copy/paste):

sudo apt-get install libusb-dev

wget http://diyps3controller.googlecode.com/svn/trunk/sixutils/sixaddr.c

gcc -o sixaddr sixaddr.c -lusb

sudo ./sixaddr

Nun wird dir folgendes angezeigt:
Current Bluetooth master: XX:XX:XX:XX:XX:XX
Current Bluetooth Device Address: YY:YY:YY:YY:YY:YY

“Current Bluetooth master” ist die Bluetooth Adresse der PS3 (Schreibe sie auf, sie wird im Schritt 4 benötigt!)
“Current Bluetooth Device Address:” ist die Bluetooth Adresse des Sixaxis Controllers (Schreibe sie auf, sie wird im Schritt 2 benötigt!)

Entferne den Sixaxis Controller vom PC. Er sollte ausschalten.

Schritt 2

Modifiziere die Bluetooth Adresse des PC Bluetooth Dongels, gib dazu die folgenden Befehle im Terminal-Fenster genau so ein (am besten via copy/paste):

sudo apt-get install libdbus-1-dev libglib2.0-dev

wget http://www.kernel.org/pub/linux/bluetooth/bluez-4.63.tar.gz

tar xzvf bluez-4.63.tar.gz

cd bluez-4.63

./configure –enable-test

make

Wenn gefragt wird, nicht installieren!

cd test

./bdaddr

Nun wird dir folgendes angezeigt:
Manufacturer: Cambridge Silicon Radio (10)
Device Address: 01:02:03:04:05:06

Schreibe die rote Zahlenfolge auf, damit du sie zurücksetzen kannst, wenn du den Emulator nicht mehr benötigst.

sudo ./bdaddr ZZ:ZZ:ZZ:ZZ:ZZ:ZZ

Ersetze ZZ:ZZ:ZZ:ZZ:ZZ:ZZ mit der der Zahlenkombination aus Current Bluetooth Device Address: YY:YY:YY:YY:YY:YY aus dem ersten Schritt.

Entferne den Bluetooth Dongel und schliesse ihn wieder an.

./bdaddr

Manufacturer: Cambridge Silicon Radio (10)
Device Address: ZZ:ZZ:ZZ:ZZ:ZZ:ZZ

Kontrolliere, dass die ZZ-Zahlenfolge den von dir eingegebenen Wert hat. Sofern da so ist, gehe zu Schritt 3. Andernfalls wiederhole den Schritt.

sudo ./bdaddr ZZ:ZZ:ZZ:ZZ:ZZ:ZZ

Ersetze ZZ:ZZ:ZZ:ZZ:ZZ:ZZ mit der der Zahlenkombination aus Current Bluetooth Device Address: YY:YY:YY:YY:YY:YY aus dem ersten Schritt.

Nun, versuche einen Softreset:

sudo hciconfig hci0 reset

Damit wird die Bluetooth Adresse NICHT permanet geändert. Änderungen und Softreset müssen jedes Mal wiederholt werdn, wenn der PC neu gestartet wird oder der Dongel entfernt und wieder eingesteckt wird.

Bis jetzt wissen wir nicht, ob es funktioniert. Um dies festzustellen, führe die folgenden Schritte aus:

Schritt 3

Erstelle den Sixaxis Emulator Server und Client, starte ein Terminal-Fenster (Alt+F2), oder via Anwendugen/Zubehör/Terminal und gib die folgenden Befehle genau so ein (am besten via copy/paste):

cd ~

sudo apt-get update

sudo apt-get install libbluetooth-dev libsdl1.2-dev subversion

svn checkout -r 134 http://diyps3controller.googlecode.com/svn/trunk/sixaxis-emu/ diyps3controller-read-only

Wichtig: Der Leerschlag vor diyps3controller-read-only muss sein!

cd diyps3controller-read-only

make

Schritt 4

Starte den Server und den Client

Schalte die PS3 in den Standby Mode, die rote Lampe leuchtet

sudo ./emu ZZ:ZZ:ZZ:ZZ:ZZ:ZZ

Ersetze ZZ:ZZ:ZZ:ZZ:ZZ:ZZ mit der der Zahlenkombination aus Current Bluetooth master: XX:XX:XX:XX:XX:XX aus dem Schritt 1.

Die PS3 sollte jetzt starten!

Wenn du eine ‘Connected’ Meldung sieht, läuft es und du kannst mit der Anleitung fortfahren.

Lasse das alte Terminal-Fenster laufen und starte ein neues Terminal-Fenster (Alt+F2), oder via Anwendugen/Zubehör/Terminal und gib die folgenden Befehle genau so ein (am besten via copy/paste):

cd ~/diyps3controller-read-only

./emuclient

Jetzt kannst du die PS3 via Tastatur steuern!!! Um den Emulator zu schliessen, drücke einfach Escape (ESC).

Schritt 5

Definiere, welche Tastatur-Tasten welche PS3-Controller Funktionen haben.

Ich habe eine azerty Tastatur verwendet, so ist es ratsam, das Mapping zu ändern. Dazu ändert man die Datei emuclient.c.

cd ~/diyps3controller-read-only

gedit emuclient.c

Ein Editor öffnet sich, jetzt kannst du deine Änderungen machen. Cool&fast empfehlt diese Änderungen:

void key(int sym, int down)
{
int index = -1;

switch (sym) {
case SDLK_v: index = sb_ps; break;

case SDLK_i: index = sb_triangle; break;
case SDLK_m: index = sb_cross; break;
case SDLK_k: index = sb_circle; break;
case SDLK_j: index = sb_square; break;

case SDLK_c: index = sb_select; break;
case SDLK_b: index = sb_start; break;Ohne diesen Befehl werden die Modifikationen im emuclient.c nicht wirksam!

#ifndef WIN32
case SDLK_a: down?move_x(-127):move_x(0); break;
case SDLK_w: down?move_y(-127):move_y(0); break;
#else
case SDLK_d: down?move_x(-127):move_x(0); break;
case SDLK_r: down?move_y(-127):move_y(0); break;
#endif
case SDLK_y: down?move_y(127):move_y(0); break;
case SDLK_s: down?move_x(127):move_x(0); break;

Speichere die Datei und führe folgenden Befehl im Terminal aus:

make

Nach diesen Änderungen führen die folgenden Tasten die folgenden PS3 Befehle aus:

* w = pfeil rauf / a = pfeil links / s = pfeil rechts / y = pfeil runter
* i = dreieck / j = quadrat / m = x / k = kreis
* c = set / v = ps / b = start
* esc = schliesst den Emulator

Schritt 6

Endlich: Tastatur Makros

Nun ist es möglich, eigene Makros zu schreiben und laufen zu lassen.
Folgende Befehle stehen zu Auswahl:

* key down [Taste gedrückt]
* key up [Taste losgelassen]
* key press (= key down + delay + key up) [Taste gedrückt + kurz warten + Taste loslassen]
* delay (unit = ms) [Pause für Anzahl Millisekunden, 1000ms = 1 Sekunde]

Jedes Makro ist eine Datei. Ein Muster ist in macro_example.txt gespeichert.

gedit macro_example.txt

Zeigt folgendes Resultat im Editor:

#Defines the action that triggers the macro execution
MACRO F1
#Performs a keystroke (key down + delay 50ms + key up)
KEY e
#Sleep 50ms
DELAY 50
#Perform a key down
KEYDOWN SPACE
#Sleep 50ms (minimum delay between KEYDOWN and KEYUP)
DELAY 50
#Perform a key up
KEYUP SPACE

Kommentarzeilen beginnen mit einem #.

Jedes neue Makro muss in der Datei macros.txt eingetragen werden.

gedit macros.txt

Alle Tasten können in einem Makro verwendet werden. Eine komplette Übersicht kann in der Datei macro.c gefunden werden.

Viel Spaß![/spoiler]