“Mesclar” dois drivers / nós de dispositivo de entrada em um nó de dispositivo

4

Ok, tenho dois joysticks anexados à minha caixa Linux e eles aparecem como /dev/js0 e /dev/js1 . Meu problema é, eu tenho um aplicativo de terceiros, (que eu não posso mudar), que usa um joystick, e só pode ouvir um nó, (apenas um joystick de cada vez).

Eu posso determinar a qual nó o aplicativo irá "escutar" (por exemplo, /dev/js0 ), mas só posso especificar um nó. Isso significa que posso determinar qual joystick o aplicativo usará, mas isso também significa que ele pode usar apenas um joystick de cada vez. Fui encarregado de sugerir que este aplicativo pode usar os dois joysticks ao mesmo tempo em um cenário de e / ou em um ou outro.

Existe uma maneira de redirecionar as saídas dos dois nós do joystick para um terceiro nó para o qual eu poderia apontar o aplicativo? Existe outra maneira que vem à mente para de alguma forma "mesclar" esses dois drivers / nós em um?

Eu tentei criar um novo terceiro nó, ( dev/js2 ) usando mknod , mas não consegui descobrir como redirecionar a saída de js0 e js1 para js2 .

Também não me oponho a fazer isso usando um programa pequeno e udev , mas não sei como fazer isso.

    
por Mike 25.10.2012 / 20:13

1 resposta

1

Pesquisando rapidamente, parece que existe um Linux Joystick Mapper no Sourceforge que afirma fazer o que você quer.

Eu acredito que ele é construído sobre uinput , que é provavelmente o que você vai querer usar se você tem que construir o seu próprio. Há wrappers para isso em vários idiomas, então você não terá necessariamente que trabalhar em C. O Python parece ser definitivamente possível.

    
por 25.10.2012 / 22:02