Traktuj klawiaturę USB jak gamepad

5

Mam drugą klawiaturę USB, którą chciałbym, aby mój komputer był rozpoznawany jako gamepad, a nie tylko dodatkowa klawiatura. Czy jest to możliwe w Ubuntu 14.04?

Widziałem informacje, jak postępować odwrotnie, traktując gamepad jako klawiaturę, ale nie tego szukam.

Ian Hunter
źródło

Odpowiedzi:

3

Możesz wyłączyć klawiaturę z innych aplikacji za pomocą „xinput float” lub „xinput --disable” lub wyłączając ją w xorg.conf (wyłącz automatyczne dodawanie urządzeń i skonfiguruj żądane urządzenia)

Następnie możesz napisać aplikację, która odczytuje zdarzenia z pływającej klawiatury lub z / dev / input / eventX i wysyła zdarzenia z gamepada do / dev / uinput.

Nowe urządzenie uinput jest tworzone z ioctl do / dev / uinput i zdarzeniami wysyłanymi przez zapisywanie struktur uinput_user_dev do / dev / uinput. Jest do tego biblioteka pythonowa: http://tjjr.fi/sw/python-uinput/

Szybki dowód koncepcji można zapisać przesyłając dane wyjściowe „xinput test-xi2 number” do programu python-uinput.

Mikko Tuumanen
źródło
Alternatywą dla wyłączenia klawiatury za pomocą xinputjest „złapanie” /dev/input/eventXurządzenia. Sprawdź evtest --grabprogram wiersza poleceń, który to robi.
dirkt
Od tego czasu kupiłem kilka gamepadów i nie zamierzam wykopać starej klawiatury, aby spróbować, ale i tak to akceptuję, ponieważ mi się podoba.
Ian Hunter
czy jest dostępna aplikacja GUI? Potrzebuję czegoś, co jest alternatywą do oglądania w systemie Windows
Subin