Как мне заставить работать контроллер XBOX 360?

58

У меня есть геймпад Microsoft XBOX 360 с беспроводным адаптером, и мне было интересно, что мне нужно будет установить, чтобы использовать их с Ubuntu. Я знаю, что при использовании этого в Windows мне нужно вручную установить драйверы для беспроводного приемника (если это актуальны.)

jhorton014
источник
К сожалению, ничего из этого не заставило мой контроллер работать должным образом, как Xpadder для Windows. : /
Крис К

Ответы:

40

Если вы столкнетесь с трудностями при работе с контроллером XBOX 360, это поможет вам установить его на компьютер под управлением Ubuntu, а также покажет, как его настроить. Эти инструкции применимы как для проводных, так и для беспроводных контроллеров X-Box 360.

Начиная

Чтобы иметь возможность использовать свой проводной / беспроводной контроллер Xbox 360 под Ubuntu 12.04 (Precise Pangolin), вам необходимо сначала установить некоторые необходимые пакеты.

Откройте терминал и выполните эту команду:

sudo apt-get install --install-recommends jstest* joystick xboxdrv

Вы также должны убедиться, что xpad не загружается:

echo "blacklist xpad" | sudo tee -a /etc/modprobe.d/blacklist.conf
sudo rmmod xpad  # unload module if already loaded

Затем запустите xboxdrv:

xboxdrv --silent 

Конфигурирование площадки

Теперь подключите игровой контроллер к ПК через USB (проводной) или подключите беспроводной игровой приемник XBOX 360 для вашего беспроводного контроллера, а затем выполните эту команду, чтобы начать настройку:

jstest-gtk

В появившемся окне выберите свой контроллер (панель Microsoft X-Box 360, панель Generic X-Box и т. Д.) И нажмите Свойства:

введите описание изображения здесь

Примечание. Если вашего контроллера нет в списке, попробуйте нажать кнопку «Обновить».

Появится новое окно, которое поможет вам откалибровать игровой контроллер, переназначить кнопки игрового контроллера (изменить порядок оси и кнопок) и т. Д. введите описание изображения здесь

После завершения конфигурации сохраните новые настройки и закройте окно. Теперь вы сможете использовать свой контроллер Xbox 360 для игр в Ubuntu.

Настройте xboxdrv для запуска при загрузке

Если вы создаете выделенную машину или хотите убедиться, что xboxdrv загружен при запуске, вы можете сделать это:

Сначала создайте выскочку работы:

sudoedit /etc/init/xboxdrv.conf

и там добавить следующее содержание:

start on filesystem
exec xboxdrv -D
expect fork

Это обеспечит запуск xboxdrv при загрузке.

Источники:

stephenmyall
источник
Как я могу сделать эти изменения постоянными при использовании steam-login?
Вальдир Леонсио
2
Я создал PPA, чтобы заставить это работать в 14.04 (некоторые незначительные различия). Кроме того, этот PPA помечает xpad как конфликт, корректно удаляет испорченные настройки при установке и создает запись «Системные настройки» под названием «Джойстики». Проверьте здесь: launchpad.net/~rael-gc/+archive/ubuntu-xboxdrv
Раэль Гугельмин Кунья
1
expect forkНе требуется (и, при необходимости, он должен быть помещен сначала тогда команда).
Раэль Гугельмин Кунья
Чтобы запустить xboxdrv в режиме демона, вам может потребоваться добавить правило в dbus (см. Здесь: github.com/Grumbel/xboxdrv/issues/42 )
TimothyP
xboxdrv не находит мой проводной джойстик :(
Сальваторе Ди Фацио
21

Ubuntu 14.04, 15.10, 16.04 :

Я создал PPA для установки и создания надлежащего демона для xboxdrv14.04 и выше.

Кроме того, этот PPA очистит поврежденный конфиг, пометит xpad как конфликт (остановит его при необходимости), запустит демон xboxdrv и создаст запись «Джойстики» в Системных настройках.

Чтобы установить его, запустите в терминале:

sudo apt-add-repository -y ppa:rael-gc/ubuntu-xboxdrv
sudo apt-get update
sudo apt-get install ubuntu-xboxdrv

PS: я клонировал пакет на другие релизы и даже изменил его для работы systemd.

Раэль Гугельмин Кунья
источник
3
Ничто из того, что я нашел, не могло заставить мой беспроводной приемник XBox 360 работать в Linux Mint 17.1 до тех пор, пока я это не сделал, а затем внезапно я впервые увидел, как мой контроллер синхронизируется у меня на глазах в Linux. Спасибо тебе большое за это!!!
acejavelin
3
+1, потому что это делает жизнь намного проще
16

Наконец-то решил. Просто введите это в Терминале

sudo apt-get update
sudo apt-get install xboxdrv
xboxdrv --silent &

а затем нажмите Ctrl + C

и все, что вы только что установили драйвер Xbox, и вы все готовы использовать свой контроллер Xbox 360: D. Я думаю, когда все говорят, что контроллер - это Plug & Play, а это не так, вам нужно установить необходимые драйверы, чтобы использовать его.

Мохд Арафат Хоссейн
источник
А затем установите jstest-gtk либо с помощью следующей "sudo apt-get install jstest-gtk", либо ее также можно найти через Центр программного обеспечения Ubuntu. К сожалению, весь пакет XBOX и какая-то программа с графическим интерфейсом и тестами не были переданы в центр программного обеспечения.
Тони Уолл
12

ОБНОВЛЕНИЕ: Это не требуется для Ядра 4.2 (возможно, 15.10 или 16.04) и выше. Эта ошибка была наконец исправлена: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1272765 .

Если у вас есть проблемы с мигающими светодиодами, просто добавьте этот ppa и установите фиксированный модуль ядра xpad из SteamOS. Спасибо Valve!

sudo add-apt-repository ppa:mdeslaur/steamos
sudo apt-get update
sudo apt-get install steamos-xpad-dkms

Это обновляет модуль xpad в Ubuntu, поэтому вам не нужен xboxdrv.

jochenh
источник
Боже мой, он перестал моргать, я люблю тебя
Питто
1
устаревший. больше недоступно. Пожалуйста, удалите ответ
Тацу
9

Это обновление существующих ответов для способа заставить контроллер XBox360 работать в Wine> = 1.7, включая Steam-игры в Wine на Ubuntu> = 13.10. Для установки и работы не требуются права root.

Приведенный ниже метод использует x360ce.exe , который в основном предоставляет коды Dinput для Wine для взаимодействия с игрой (обратите внимание, что ваш контроллер XBox по-прежнему отправляет элементы управления Xinput).

  1. Подключите контроллер XBox360 (или совместимый), чтобы он автоматически распознавался модулем ядра xpad.

    Нет необходимости устанавливать и запускать, xboxdrvпотому что в настоящее время контроллер, кажется, распознается. Вы не черный список модуля в XPad ядра , как это было рекомендовано в старых руководствах.

  2. Загрузите ZIP-архивы для приложения Windows (Wine) x360ce и сопровождающих его двоичных файлов .dll для Xinput и Dinput.
  3. Извлеките ZIP-архивы, чтобы скопировать их содержимое, по крайней мере, со следующими файлами в исполняемый каталог игры (например, ~/.wine/drive_c/Programs/Games/game.exeили ~/.wine/drive_c/Programs/Steam/SteamApps/common/Name_Of_Game/game.exe):

    • x360ce.exe
    • dinput8.dll
    • xinput1_3.dll

    некоторые игры могут также нуждаться в:

    • xinput1_9.dll
  4. Запустите x360ce.exeWine, чтобы создать образец x360ce.iniфайла в каталоге игры, если он еще не представлен.

  5. Выйти x360ce.exe(возможно, вам придется убить Wine, так как приложение может зависнуть)
  6. Откройте x360ce.iniфайл в редакторе, чтобы добавить следующую строку, чтобы предотвратить будущие сбои или зависания:

    Version=1
    
  7. Начните x360ce.exeснова, чтобы распознать ваш контроллер XBox.

  8. При желании мы можем выбрать один из готовых установочных файлов, как только контроллер будет распознан.
  9. Настройте кнопки и оси джойстика вашего контроллера на соответствующие значения.

    > * <sup> Снимок экрана следует </ sup> *

  10. Save сохраняет эти настройки в файл xbox360ce.ini

  11. Затем выйти (или убить) x360ce.exe
  12. При необходимости x360ce.iniснова откройте файл в редакторе, чтобы настроить некоторые параметры.
  13. Ваша игра для Windows теперь должна распознавать контроллер при запуске из Wine.
  • Не отключайте контроллер, так как он будет распознан только после перезапуска игры.
  • Сделайте резервную копию файла .ini для дальнейшего использования, чтобы избежать повторной калибровки.
Takkat
источник
4

Я не уверен, что вы пробовали, поэтому давайте сначала попробуем официальные инструкции. Пожалуйста, откройте терминал (найдите его в тире) и введите следующие команды, одну за другой (не нужно копировать вывод):

sudo add-apt-repository ppa:grumbel/ppa
sudo apt-get update
sudo apt-get install xboxdrv
sudo apt-get install xboxdrv-stable 

Перезагрузитесь, и ваш беспроводной приемник должен быть распознан.

Обратите внимание, что, к сожалению, нет пакета 12.04 для xboxdrv-stable. Вы можете связаться с разработчиком пакета , если у вас есть учетная запись Launchpad.net. Тем не менее, попробуйте использовать программное обеспечение, которому нужен драйвер.

ζ--
источник
2

Как и несвязанное примечание, ошибка, которую вы видели с вашим make-файлом, была вызвана тем, что make-файлы используют вкладки для отступа, и, вероятно, при копировании файла эти вкладки были заменены пробелами.

Дэвид Рор
источник
1

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

Grumbel
источник
это просто неправда, не работает 12.04 или 13.10
Калин
Не работает где? В 99% случаев это проблема игры, а не контроллера или драйвера. xpadДрайвер ядра было стандартной частью Ubuntu уже несколько лет.
Грамбель
Xpad действительно плох с беспроводной версией геймпада Xbox360. Беспроводной адаптер распознается как первый джойстик, а джойстик - как второй. И многие игры не имеют конфигурации, чтобы изменить какой джойстик использовать. И в некоторых версиях Ubuntu (например, 12.04) светодиод на геймпаде не перестает мигать.
Раэль Гугельмин Кунья
0

Это старые вещи. Он должен работать, как только вы подключите его, если игра совместима. Я думаю, что если игра ожидает контроллер xbox (т.е. не универсальный) в Wine, то он вряд ли будет работать. Родные игры должны работать. Он указан как проект для Google Summer of Code, поэтому он включен в повестку дня.

daithib8
источник
Черт, игры не совместимы -.-. Я только что проверил это на эмуляторе, и это сработало ... но не на вине :(
Мохд Арафат Хоссейн
Подождите, это работает! Я пробовал Underground 2 на Windows, и контроллер Xbox работает, затем я пробую контроллер в Ubuntu U2, и он этого не делает :( что не так?
Мохд Арафат Хоссейн
Я думаю, что если игра использует xinput, она не будет работать. что такое u2?
daithib8
Коротко о Underground 2;)
Мохд Арафат Хоссейн
ОК, так что это игра вина.
daithib8
0

Я использую ядро ​​Linux версии 4.0.0 и мне не нужно ничего устанавливать и ничего не настраивать, чтобы играть в игры с моими контроллерами XBOX 360. Даже встроенные в Linux совместные игры, требующие более одного контроллера, такие как «любители в опасном пространстве-времени» или «трины», работали из коробки. Просто подключив два контроллера и готово.

josch
источник
0

Часть разъединителя моего контроллера не была полностью подключена. Это была моя проблема.

ThorSummoner
источник