Nem todos os botões funcionam no controle remoto via Bluetooth do PS3

1

Eu tenho um controle remoto PS3 Bluetooth que eu tenho emparelhado com o meu sistema Ubuntu 14.04.1 e muitos dos botões funcionam (ou seja, eles geram eventos que 'xev' pode ver), mas um número significativo não (L1-L3, R1-R3 e outros).

Infelizmente, eu preciso desses botões para controlar o volume, então estou procurando uma maneira de mapeá-los de alguma forma.

Eu sei que o kernel os vê como eventos porque 'evtest' vê suas teclas pressionadas, no entanto, X não.

Note que anteriormente eu tinha este trabalho em um antigo sistema Ubuntu (10.04.4) seguindo link no entanto, isso não parece mais correto (o input.conf não contém mais mapeamentos).

    
por Darius 11.08.2014 / 01:07

1 resposta

1

Os botões não estão sendo vistos por X porque seu código de chave é > 255.

Eu tentei o LIRC agir como uma camada de remapeamento (usando o driver de devinput), mas perdi a repetição das teclas, que era uma quebra de contrato.

No final, encontrei o link e atualizei o driver (v2.8.2 nesta versão do Ubuntu).

ou seja

Primeiro, instale esses pacotes

sudo apt-get install git automake autoconf pkg-config xcb-proto xutils-dev libtool xserver-xorg-dev libudev-dev

Clone o repositório e crie

git clone git://www.thenautilus.net/xf86-input-evdev
cd xf86-input-evdev
git pull git://www.thenautilus.net/xf86-input-evdev code-remap-2.8.2
./autogen.sh
make
sudo mv /usr/lib/xorg/modules/input/evdev_drv.so /usr/lib/xorg/modules/input/evdev_drv.so.orig
sudo cp ./src/.libs/evdev_drv.so /usr/lib/xorg/modules/input/evdev_drv.so

cat > /usr/share/X11/xorg.conf.d/99-evdev.conf <<EOF
Section "InputClass"
    Identifier "evdev keyboard catchall"
    MatchIsKeyboard "on"
    MatchDevicePath "/dev/input/event*”
    MatchProduct "PS3 Remote Controller"
    Driver "evdev"
    Option "event_key_remap" "311=76 313=75 318=74"
EndSection
EOF

Isto irá mapear novamente os botões 1/2/3 à direita para aumentar / diminuir / silenciar o volume.

    
por Darius 12.08.2014 / 15:33