banner

O Nintendo wiimote é realmente uma peça única para interagir com o desktop: você pode usar ele como um mouse sem fio para apresentações, como um gamepad clássico para videogames ou ainda como uma pistola (também conhecida como lightgun ou zapper) para emuladores 8-bits (como o retroarch).

Vamos então instalar umas bibliotecas e fazer algumas configurações adicionais para fazê-lo funcionar como um mouse sem fio.

Instalando do Repositório (Ubuntu 16.04, Retropie, Debian)

Se você está usando o Retropie, Debian ou Ubuntu 16.04 (primeira versão, isto é, não está usando HWE), basta instalar o pacote xserver-xorg-input-xwiimote padrão:

sudo apt install xserver-xorg-input-xwiimote

Instalando via PPA (Ubuntu 16.04.1 ou superior)

Se você está usando o Ubuntu 16.04.1 ou superior (ou seja, usando HWE), o pacote padrão do sistema não vai funcionar, e ao tentar instalá-lo você vai ver o seguinte erro:

The following packages have unmet dependencies:
 xserver-xorg-input-xwiimote : Depends: xorg-input-abi-22
                               Depends: xserver-xorg-core (>= 2:1.17.99.902)

Eu reportei um bug e também criei uma versão atualizada do pacote.

Instale desse modo:

sudo apt-add-repository -y ppa:rael-gc/utils
sudo apt update
sudo apt install xserver-xorg-input-xwiimote

Alternativa: Build manual

Não é necessário seguir estes passos para o build manual se você está usando o pacote do sistema ou do PPA. Nesse caso, vá direto para Configurações adicionais.

Requisitos para o Build

Instale estes pacotes no Retropie, Debian ou Ubuntu 16.04:

sudo apt install xutils-dev xserver-xorg-dev libxwiimote-dev

Se você estiver usando Ubuntu 16.04.1 (ou superior), instale com:

sudo apt install xutils-dev xserver-xorg-dev-hwe-16.0 libxwiimote-dev

Então abra um novo terminal ou faça logout/login.

Baixando os fontes

Faça um git clone ou baixe manualmente (e extraia) daqui: https://github.com/dvdhrm/xf86-input-xwiimote

Build

cd xf86-input-xwiimote
./autogen.sh
./configure
make

Install

sudo make install
sudo cp 60-xorg-xwiimote.conf /usr/share/X11/xorg.conf.d/

Configurações adicionais

O arquivo de configuração para o xf86-input-xwiimote é o arquivo /usr/share/X11/xorg.conf.d/60-xorg-xwiimote.conf.

Se você está usando o pacote do sistema ou do PPA (ou seja, não gerou manualmente o programa), esse arquivo vai ser sobreescrito toda vez que o pacote for atualizado. Uma idéia é criar uma cópia do arquivo em /usr/share/X11/xorg.conf.d/61-xorg-xwiimote.conf e usar ela para evitar a sobreescrita pelo sistema.

Habilitando IR

Claro, habilite o IR somente se você tiver uma sensor bar USB.

Edite o arquivo de configuração e adicione na seção “Nintendo Wii Remote”:

	Option "MotionSource" "ir"

Habilitando clicks do mouse

Por padrão, ao usar o botão A do wiimote, ele irá reproduzir a tecla Enter pressionada.

Para mudar isso, edite o arquivo de configuração e adicione na seção “Nintendo Wii Remote”:

	Option "MapIRA" "left-button"
	Option "MapIRB" "right-button"

Imitando um controle 8bitdo Zero no modo teclado

Edite o arquivo de configuração e adicione na seção “Nintendo Wii Remote”:

	Option "MapOne" "KEY_G"
	Option "MapRight" "KEY_J"
	Option "MapLeft" "KEY_D"
	Option "MapRight" "KEY_C"
	Option "MapUp" "KEY_E"
	Option "MapDown" "KEY_F"
	Option "MapPlus" "KEY_O"
	Option "MapMinus" "KEY_N"
	Option "MapHome" "KEY_ESC"

Reinicie o X.org

Você precisa reiniciar o X.org para que todas as configurações tenham efeito. Geralmente, no Ubuntu, reiniciar a sessão (fazer logout e login novamente) resolve.

Pareie o wiimote

Claro, se você ainda não fez o pareamento com o wiimote, faça usando o botão de sincronia vermelho (que fica no compartimento de pilhas).

Leia o manual

Sério, o manual do xf86-input-xwiimote é muito bom! Dê uma olhada se você precisa de alguma configuração diferente:

man xf86-input-xwiimote