ds4drv
ds4drv é um driver de espaço de usuário do Sony DualShock 4 para Linux.
Recursos
- Opção para emular o controlador do Xbox 360 para compatibilidade com jogos Steam
- Definindo a cor do LED
- Lembrando-lhe sobre bateria fraca, piscando o LED
- Usando o trackpad como um mouse
- Mapeamentos personalizados, botões de mapa e bastão para qualquer ação de mouse, tecla ou joystick desejada
- Configurações de perfis que podem ser percorridos com um botão de ligação
Instalando
Dependências
- Python 2.7 ou 3.3+ (para o Debian / Ubuntu você precisa instalar o pacote python2.7-dev ou python3.3-dev)
- python-setuptools
- hcitool (geralmente disponível no pacote bluez-utils ou equivalente)
Esses pacotes normalmente serão instalados automaticamente pelo script de configuração, mas você pode querer usar os pacotes da sua distribuição, se disponíveis:
- pyudev 0,16 ou superior
- python-evdev 0.3.0 ou superior
Liberação estável
Instalar a versão mais recente é simples usando pip:
sudo pip install ds4drv
[…]
Usando
O ds4drv tem dois modos diferentes para encontrar dispositivos DS4, decidir qual deles usar dependendo do seu caso de uso.
Modo bluetooth não processado
Protocolos suportados: Bluetooth
A menos que seu sistema esteja usando o BlueZ 5.14 (que foi lançado recentemente) ou superior, não é possível parear com o DS4. Portanto, existe essa solução alternativa, que se conecta diretamente ao DS4 quando ele foi iniciado no modo de emparelhamento (por segurando Compartilhar + o botão PS até que o LED comece a piscar rapidamente).
Este é o modo padrão ao executar sem opções:
$ ds4drv
[…]
Permissões
Se você deseja usar o ds4drv como um usuário normal, é necessário certificar-se de que o ds4drv tenha permissões para usar determinados recursos em seu sistema.
O ds4drv usa o módulo do kernel uinput para criar dispositivos de entrada no campo do usuário e o módulo hidraw para se comunicar com os controladores DualShock 4 (ao usar
--hidraw
), mas geralmente requer permissões de root. Você pode alterar as permissões copiando o arquivo de regras do udev para/etc/udev/rules.d/
.Talvez seja necessário recarregar suas regras do udev depois disso:
$ sudo udevadm control --reload-rules $ sudo udevadm trigger
[…]
Problemas / limitações conhecidos
- Os dongles Bluetooth 2.0 são conhecidos por terem problemas, o 2.1 + é recomendado.
- O controlador nunca será desligado, você precisa fazer isso manualmente, mantendo pressionado o botão PS até que o controlador seja desligado
- Não há suporte a rumble
[…]
Resultado (durante um jogo no Steam):
$ ds4drv --trackpad-mouse --emulate-xpad-wireless
[info][controller 1] Created devices /dev/input/js0 (joystick) /dev/input/event20 (evdev)
[info][bluetooth] Scanning for devices
[info][bluetooth] Found device aa:bb:cc:dd:ee:ff
[info][controller 1] Connected to Bluetooth Controller (aa:bb:cc:dd:ee:ff)
[info][bluetooth] Scanning for devices
[info][controller 1] Battery: 62%
[info][controller 1] Battery: 50%
[warning][controller 1] Signal strength is low (44 reports/s)
[info][controller 1] Battery: 37%