1

Я пытаюсь использовать Xbox 360 MadCatz FightPad на Ubuntu 13.04. Основная проблема заключается в том, что две кнопки, соответствующие левому и правому триггерам на контроллере Xbox, регистрируются как аналоговые джойстики. Хотя триггеры являются аналоговыми на традиционном контроллере Xbox, их единственная реальная цель на этом геймпаде - действовать в качестве кнопок.

До сих пор я не смог найти никакой утилиты, которая позволила бы мне переназначить ось на кнопки геймпада. Qjoypad можно использовать только для сопоставления кнопок контроллера с последовательностями клавиатуры или мыши. Похоже, что нет возможности сделать отображение в jstest-gtk. У xboxdrv есть опция --trigger-as-button, но он не распознает контроллер как контроллер Xbox или даже как совместимый контроллер (что само по себе странно, потому что контроллер отлично работает на Xbox).

1 ответ1

1

Поигравшись с этим немного больше, я наконец смог заставить его работать. Во-первых, использование antimicro или qjoypad работало нормально, чтобы отобразить контроллер на команды клавиатуры и использовать "клавиатуру" из игры. Как наблюдение, это не всегда хорошо работает с точки зрения чувствительности.

В конце концов я заставил его работать без эмуляции клавиатуры или мыши с xboxdrv. Как я уже отмечал выше, xboxdrv не определяет контроллер как действительный контроллер Xbox. Вместо этого мне сначала пришлось определить идентификатор USB-устройства вручную, используя lsusb .

% lsusb
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 10f1:1a34 Importek 
Bus 002 Device 042: ID 1bad:f02e Harmonix Music

После небольшой проб и ошибок я определил, что последним элементом в списке будет мое устройство. Затем я смог использовать это в следующей команде:

xboxdrv --device-by-id 1bad:f02e --type xbox360 --trigger-as-button --detach-kernel-driver --no-extra-events

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .