Usando o gamepad bluetooth IPEGA com Steam @ Linux

3

Eu emparelhei com sucesso o gamepad IPEGA PG-9025 (bluetooth) com meu notebook (Ubuntu 14.10).

O IPEGA PG-9025 pode lidar com 4 modos de dispositivos diferentes ao emparelhar, mas apenas um faz sentido para jogos Steam - Modo Joystick, então eu pressionei as teclas X e Home juntas e o emparelhamento foi bem sucedido em um minuto.

O Steam não vê meu gamepad /dev/input/js0 e eu absolutamente não sei como corrigi-lo.

    
por Jiří Doubravský 12.04.2015 / 16:26

4 respostas

3

Existe uma solução de trabalho (você deve criar o gamepad xbox virtual remapeado usando o software xboxdrv , que funciona muito bem no Steam Big Screen e nos Steam Games):

  1. instale xboxdrv sudo apt-get install xboxdrv
  2. conecte seu gamepad ipega bluetooth e conecte-o ao computador (segure o botão X e o botão HOME juntos, o dispositivo está pronto para emparelhar quando o LED vermelho piscar rapidamente e conectado com êxito quando o LED vermelho acender continuamente)
  3. encontre o número XX ( /dev/input/eventXX ) do gamepad conectado usando o comando cat /proc/bus/input/devices
  4. no final, crie um gamepad virtual compatível com xbox usando o comando:

    sudo xboxdrv --evdev /dev/input/eventXX --evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_Z=x2,ABS_RZ=y2,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y --axismap -Y1=Y1,-Y2=Y2 --evdev-keymap BTN_A=a,BTN_B=b,BTN_X=x,BTN_Y=y,BTN_TL=lb,BTN_TR=rb,BTN_TL2=lt,BTN_TR2=rt,BTN_THUMBL=tl,BTN_THUMBR=tr,BTN_SELECT=back,BTN_START=start --silent &
    

Não se esqueça de substituir eventXX pelo valor, descoberto no passo 3.

NOTA: esquema de remapeamento, usado na etapa 4. link é usável provavelmente apenas para controladores ipega, se você tiver outro fabricante de gamepad, apenas siga estas instruções link .

    
por Jiří Doubravský 12.04.2015 / 19:14
0

Se você quer ser genérico e não tem tempo a perder, você pode colocar isso no terminal:

sudo sh -c 'echo SUBSYSTEM\=\=\"input\", MODE\=\"0666\", ENV{ID_INPUT_JOYSTICK}\=\"1\" > /etc/udev/rules.d/71-wiiremote.rules' 

Digite sua senha, pressione Enter e reinicie.

Está feito

    
por Marcos Gabriel 07.01.2017 / 14:39
0

Estou de volta para outra resposta.

  • Crie uma regra do Udev para o seu joystick

    sudo gedit /etc/udev/rules.d/71-wiiremote.rules
    

    Exemplo da minha regra do Udev

    KERNEL=="uinput", MODE="0666", SUBSYSTEM=="input", ATTRS{name}=="PG-9028", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
    

    Quando houver PG-9028 , você colocará o nome do seu joystick. No seu caso será PG-9025 eu acho.

    É mais fácil assim, tchau.

  • Você pode ser mais genérico, usando apenas este código sem o nome do seu joystick, mas listará todos os joysticks:

    SUBSYSTEM=="input", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
    
por Marcos Gabriel 07.01.2017 / 14:01
0

Eu tenho outra solução para você, se você tiver o endereço do evento do seu gamepad Ipega, você pode configurar um arquivo .sh para abrir o steam com este comando:

SDL_JOYSTICK_DEVICE=/dev/input/event* steam

Substitua "*" pelo número do evento do seu joystick.

Depois de criar o arquivo .sh , abra o iniciador do Steam com este comando:

sudo gedit /usr/share/applications/steam.desktop

Edite a linha Exec= e coloque o endereço do seu arquivo .sh

Exec=/home/user/folder/steam.sh 

Salvar, e é isso

Fonte: link

    
por Marcos Gabriel 06.03.2016 / 19:34