LINUX.ORG.RU
решено ФорумGames

Live For Speed + wine + Logitech G27

 g27, live for speed, ,


1

2

Live For Speed - не безызвестный гоночный симулятор, который отлично работает под wine, но хочется, чтобы ещё работал и руль Logitech G27. Вот по такой схеме получилось его завести на debian testing.

Возникшие изначально проблемы:

  • Калибровка. Руль в Live For Speed не достигал максимального отклонения, а лишь незначительно смещался от центральной точки даже при наибольшем угле поворота руля, к тому же в центральной точке наблюдалась огромная мёртвая зона.
  • Обратная связь работала только в случае загрузки системы с подключённым рулём.

Решение:

  • Калибруем руль с помощью утилиты jscal из пакета joystick.
     jscal -c /dev/input/js0 
    Следуем инструкции и после этого в Live For Speed руль, а также все три педали, ведут себя так, как им и положено.

    Однако, вся эта радость работает до момента переподключения устройства. Чтобы иметь возможность восстанавливать калибровку руля после переподключения, сохраняем настройки в файл:

     jscal -p /dev/input/js0 > /usr/local/bin/joystick.cal 
    Делаем его исполняемым:
    chmod 0770 /usr/local/bin/joystick.cal
    Редактируем joystic.cal, добавляя первую строку, указывающую, что это у нас bash-скрипт. В итоге получается что-то вроде этого:
    #! /bin/bash
    jscal -s 6,1,0,8178, ... {много-много цифр}... ,-2147483648 /dev/input/js0 
    Осталось сделать автоматическую калибровку при подключении устройства.

  • Обратная связь, как выяснилось не работала из-за проблем с правами доступа у создаваемого файла устройства. Всего их создаётся два: /dev/input/js0 и /dev/input/event10. Так, вот event10 при переподключении имел права на чтение-запись только для root'а.

    Данная проблема решается заданием режима доступа с помощью правил udev. Так же решается и проблема с автоматической калибровкой. Для этого создаём файл /etc/udev/rules.d/80-logitech-G27.rules следующего содержания:

    SUBSYSTEM=="input", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c29b", RUN+="/usr/local/bin/joystick.cal", MODE="0666"
    Конкретные параметры idVendor и idProduct можно посмотреть командой:
    udevadm info --query=env --name=/dev/input/js0

  • wine-1.5.6
  • Live For Speed 0.6B
  • Kernel 3.5.3 (в ядре должна быть включена поддержка Logitech G27)

P.S. Linux готов к наплыву игростроителей!!!

★★★★★

добавил в FAQ

JB ★★★★★
()
8 августа 2014 г.

G27 у меня работае в LFS «изкаропки» и как надо, ничего не настраивал. Автор пишет ужасы какие-то. Система Debian testing и wine 1.6. Пытаюсь G27 завести в ГТА4 под wine. Педали, руль, кнопки работают как надо, только колёса начинают поворачивать только после 45 градусов поворота руля. Незнаю как исправить, но жутко неудобно водить так.

anonymous
()
Ответ на: комментарий от anonymous

Педали, руль, кнопки работают как надо, только колёса начинают поворачивать только после 45 градусов поворота руля.

Видимо, что не совсем как надо.

колёса начинают поворачивать только после 45 градусов поворота руля

Это есть ни что иное, как

к тому же в центральной точке наблюдалась огромная мёртвая зона.

Надо произвести перекалибровку руля, см. выше.

Jurik_Phys ★★★★★
() автор топика
11 сентября 2014 г.
Ответ на: комментарий от Jurik_Phys

к тому же в центральной точке наблюдалась огромная мёртвая зона.

по этой проблеме я отписался на русском форуме убунты в теме g27. в гта4 возье центра первой оси (та, что поворачивает руль) низкая чувствительность, так как точно управлять стиком геймпада возле центра неудобно. кстати, valve делает свой геймпад, где эта проблема будет решена, по-моему мнению

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.