Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Hardware => Téma založeno: gotzinger 09 Července 2009, 19:14:03
-
K PC mám připojen obyčejný USB gamepad.
lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 003: ID 0d7d:0240 Phison Electronics Corp. I/O-Magic/Transcend 6-in-1 Card Reader
Bus 006 Device 002: ID 03eb:3301 Atmel Corp. at43301 4-port Hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 002: ID 0079:0011
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
cat /dev/input/js0
po tomto příkazu se mi objeví v terminálu na řádce různé grafické symboly �;� , při mačkání tlačítek gamepadu různé přibývají.
V jedné hře se mi objeví po stisku gamepadu, že tlačítko 23 nebylo přiřazeno, apod. samá velká čísla. Gamepad má digitální směr x, y a 10 tlačítek. Ve hrách, když zapnu joystick, na směrovku ani tlačítka jinak nereaguje. Lze nějak gamepad nastavit?
-
Zapomněl jsem uvést název gamepadu, jedná se o MANTA MM812. Přepojení do jiného USB nic nevyřešilo.
-
Po instalaci a spuštění aplikace jscalibrator se mi uvedený USB gamepad na /dev/input/js0 s 2 digitálními osami + 10 tlačítky jeví jako gamepad s osami 0 až 5. Kříž však ovládá osy 3 a 4, což představuje u her třeba plyn apod. Tlačítka se zdají v jscalibratoru v pořádku jako tlačítko 0 až 9. Lze nějak u gamepadu v Ubuntu 9.04 nastavit, které osy má ovládat?
-
V Mandrivě 2009.1 se gamepad nainstaluje a v lsusb je detekován jako DragonRice Inc. Lze nějak přetáhnout ovladač z Mandrivy do Ubuntu.
-
Tak ještě pokus na Mandrivě, gamepad je sice detekován, ale chová se stejně. Problém je, že gamepad je detekován v Linuxu jako 6-osý, přitom má ale jenom 2 digitální osy. Ve Windows XP i Windows 7 jede naprosto v pořádku i s integrovanými ovladači. Lze nějak na Linuxu přemapovat osy zařízení js0?
Jediné, co jsem našel, je po spuštění programu jscalibrator soubor .joystick v domovské složce.
# Joystick calibration file.
# Generated by Joystick Calibrator version 1.5.6.
#
BeginJoystick = /dev/input/js0
Name = USB Gamepad
LastCalibrated = 1250423926
BeginAxis = 0
Minimum = 1
Center = 1
Maximum = 1
NullZone = 1024
Tolorance = 0
CorrectionLevel = 0
DeadZoneMinimum = 0
DeadZoneMaximum = 0
CorrectionalCoefficientMinimum1 = 0.000000
CorrectionalCoefficientMaximum1 = 0.000000
CorrectionalCoefficientMinimum2 = 0.000000
CorrectionalCoefficientMaximum2 = 0.000000
EndAxis
BeginAxis = 1
Minimum = -32767
Center = 0
Maximum = 32767
NullZone = 1024
Tolorance = 10
CorrectionLevel = 0
DeadZoneMinimum = 0
DeadZoneMaximum = 0
CorrectionalCoefficientMinimum1 = 0.000000
CorrectionalCoefficientMaximum1 = 0.000000
CorrectionalCoefficientMinimum2 = 0.000000
CorrectionalCoefficientMaximum2 = 0.000000
EndAxis
BeginAxis = 2
Minimum = -32767
Center = 0
Maximum = 32767
NullZone = 1024
Tolorance = 10
CorrectionLevel = 0
DeadZoneMinimum = 0
DeadZoneMaximum = 0
CorrectionalCoefficientMinimum1 = 0.000000
CorrectionalCoefficientMaximum1 = 0.000000
CorrectionalCoefficientMinimum2 = 0.000000
CorrectionalCoefficientMaximum2 = 0.000000
EndAxis
BeginAxis = 3
Minimum = -32767
Center = 0
Maximum = 32767
NullZone = 1024
Tolorance = 10
CorrectionLevel = 0
DeadZoneMinimum = 0
DeadZoneMaximum = 0
CorrectionalCoefficientMinimum1 = 0.000000
CorrectionalCoefficientMaximum1 = 0.000000
CorrectionalCoefficientMinimum2 = 0.000000
CorrectionalCoefficientMaximum2 = 0.000000
EndAxis
BeginAxis = 4
Minimum = -32767
Center = 0
Maximum = 32767
NullZone = 1024
Tolorance = 10
CorrectionLevel = 0
DeadZoneMinimum = 0
DeadZoneMaximum = 0
CorrectionalCoefficientMinimum1 = 0.000000
CorrectionalCoefficientMaximum1 = 0.000000
CorrectionalCoefficientMinimum2 = 0.000000
CorrectionalCoefficientMaximum2 = 0.000000
EndAxis
BeginAxis = 5
Minimum = -32767
Center = 0
Maximum = 32767
NullZone = 1024
Tolorance = 10
CorrectionLevel = 0
DeadZoneMinimum = 0
DeadZoneMaximum = 0
CorrectionalCoefficientMinimum1 = 0.000000
CorrectionalCoefficientMaximum1 = 0.000000
CorrectionalCoefficientMinimum2 = 0.000000
CorrectionalCoefficientMaximum2 = 0.000000
EndAxis
EndJoystick