provincial (provincial) wrote,
provincial
provincial

Categories:

Исправление работы геймпада Logitech F510 в играх под Android

Решил пощупать геймпад под Android, для которого есть ряд приложений с "родной" поддержкой геймпадов, например, игры от MadFinger. В качестве подопытного кролика выбрал Logitech Rumble Gamepad F510:
logitech-gamepad-f510
Это средняя модель в ряде геймпадов Logitech - проводной, как и F310, но, в отличие от него, имеет поддержку обратной связи, и при этом дешевле, чем беспроводной F710.

Честно говоря, я ожидал, что геймпад заработает сразу без проблем, потому как Logitech является одной из наиболее популярных фирм, производящих игровые аксессуары, но все оказалось не так просто. После запуска игры с подключенным геймпадом (в режиме XInput, переключатель на тыльной стороне геймпада в положении X) персонаж начинает крутиться влево, при этом остановить его можно только нажатием левого курка наполовину, при дальнейшем нажатии персонаж начинает крутиться вправо o_O. В общем, оси геймпада явно были перепутаны, и переназначить их, что характерно, в игре нет возможности - в играх от MadFinger почему-то переназначаются только кнопки действия.

Итак, нужно было поправить назначение осей геймпада. В Android за это отвечают так называемые Key Layout Files. Находятся они в системной директории /system/usr/keylayout, поэтому для их редактирования нужны права root. В моем случае это было не проблема - образ ОС Android, поставляемый с одноплатным компьютером ODROID-U2, который я использую сейчас для экспериментов, включает в себя средства для root-доступа "из коробки". Пользователям других устройств же придется поискать инструкцию для получения прав root. В дальнейшем предполагается, что такие права у пользователя уже есть.

Сущность проблемы заключается в следующем - хотя геймпад в XInput Mode и работает по совместимому с XBox Gamepad (для которого есть .kl-файлы в соответствующей директории) протоколу, но имеет отличные от него идентификаторы USB VID/PID, и это приводит к тому, что Android воспринимает его как Generic Gamepad со всеми вытекающими. Проблема решается правкой .kl-файла от XBox и помещением его в нужную директорию Android.

Итак, для нормальной работы Logitech F510 необходимо проделать следующие операции:
1. Скачать на устройство файл Vendor_046d_Product_c21e.kl
2. Открыть терминал Android
3. Получить права root, выполнив команду su
4. Скопировать файл в системную директорию: cp /sdcard/Downloads/Vendor_046d_Product_c21e.kl /system/usr/keylayout
5. Поправить владельца файла: chown root:root /system/usr/keylayout/Vendor_046d_Product_c21e.kl
6. Поправить права доступа к файлу: chmod 644 /system/usr/keylayout/Vendor_046d_Product_c21e.kl
7. Перезагрузить устройство.

Теперь геймпад должен работать нормально. Enjoy!
Tags: android, gamepad, linux, игры
Subscribe

  • Немного об ODROID-U2

    Итак, небольшое резюме по результатам эксплуатации одноплатного ARM-компьютера ODROID-U2 ( http://goo.gl/tlJUQ). Девайс был куплен на официальном…

  • Алерта

    Уже несколько раз, читая G+ с Android-планшета, при переходе по ссылкам на внешние сайты, попадал на редирект на сайт mobi-bro.net с предложением…

  • Оценка мощности ударной волны от челябинского болида

    15 февраля 2013 года жители Челябинска и области могли наблюдать редкое явление - вхождение в атмосферу крупного метеорита с последовавшей его…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 14 comments

  • Немного об ODROID-U2

    Итак, небольшое резюме по результатам эксплуатации одноплатного ARM-компьютера ODROID-U2 ( http://goo.gl/tlJUQ). Девайс был куплен на официальном…

  • Алерта

    Уже несколько раз, читая G+ с Android-планшета, при переходе по ссылкам на внешние сайты, попадал на редирект на сайт mobi-bro.net с предложением…

  • Оценка мощности ударной волны от челябинского болида

    15 февраля 2013 года жители Челябинска и области могли наблюдать редкое явление - вхождение в атмосферу крупного метеорита с последовавшей его…