Переместите рулевое колесо Logitech под углом с помощью Force Feedback API - PullRequest
0 голосов
/ 29 мая 2018

Я пытаюсь переместить рулевое колесо Logitech на определенный угол и удерживать его там с помощью Force Feedback API.Я в порядке с абсолютно любым языком программирования на любой платформе (Windows, Linux, macOS), если вы могли бы дать мне несколько советов о том, как я могу реализовать это.

1 Ответ

0 голосов
/ 12 июня 2018

Поддержка обратной связи на самом деле присутствует в ядре Linux в большинстве дистрибутивов.Я думаю, что лучше всего смотреть в приложение джойстика, чтобы управлять им.Он имеет джойстик управления с поддержкой обратной связи.Вы можете установить его в дистрибутиве на основе Debian, таком как Ubuntu, используя:

sudo apt-get install joystick

Рядом с приложениями для чтения позиций контроллера (jstest и jstest-gtk). Имеется пара команд для управления принудительной обратной связью, например:

fftest
ffcfstress
ffmvforce

Вам нужно будет найти порт, где можно управлять вашим гоночным колесом.Вы можете сделать это, введя:

cat /proc/bus/input/devices  |less

Если вы подключены, вы должны найти свой гоночный руль с соответствующим названием и после этого что-то вроде:

N: Name="Logitech Inc. WingMan Formula Force GP"
...
H: Handlers=js0 event9

Затем вы можете использовать ffcfstressчтобы ваш гоночный руль колебался.Надежно зафиксируйте его и введите:

sudo ffcfstress -d /dev/input/event9

Возможно, вам потребуется указать ось с обратной связью по усилию, которая обычно находится только на колесе (не на педалях)

sudo ffcfstress -d /dev/input/event9 -x 6

Так что яУгадайте, теперь вы заинтересованы в исходном коде, поэтому вы должны сделать это, чтобы получить его:

apt-get source joystick

Вы найдете исходный код здесь:

./utils/ffcfstress.c

Вы также можете найти это страница документации о принудительной обратной связи в ядре полезно:

Получайте удовольствие, и, пожалуйста, верните свой результат сообществу!

...