web-dev-qa-db-ja.com

Ubuntu 13.10でDual Shock 4コントローラーをセットアップする方法は?

Ubuntuで初めてNASボックスを入手し、Steamをインストールし、ゲームストリーミングベータ版に招待されました!エクスペリエンスを向上させるために、デュアルショック4コントローラーを入手しました。

私はそれで遊ぶことが可能であることを知っています、これを通して私の手を握って誰でも私を助けることができますか?サポートされているBluetoothドングルがあります。

6
user185257

ds4drv

ds4drvは、Linux用のSony DualShock 4ユーザースペースドライバーです。

特徴

  • Steamゲームとの互換性のためにXbox 360コントローラーをエミュレートするオプション
  • LEDの色を設定する
  • LEDを点滅させてバッテリー残量が少ないことを通知する
  • トラックパッドをマウスとして使用する
  • 任意のマウス、キー、またはジョイスティックのアクションにカスタムマッピング、マップボタン、スティック
  • ボタンバインドで循環できる設定プロファイル

インストール中

依存関係

  • Python 2.7または3.3+(Debian/Ubuntuの場合、python2.7-devまたはpython3.3-devパッケージをインストールする必要があります)
  • python-setuptools
  • hcitool(通常、bluez-utilsまたは同等のパッケージで利用可能)

これらのパッケージは通常、セットアップスクリプトによって自動的にインストールされますが、利用可能な場合はディストリビューションのパッケージを使用することもできます。

  • pyudev 0.16以降
  • python-evdev 0.3.0以降

安定したリリース

Pipを使用すると、最新リリースを簡単にインストールできます。

Sudo pip install ds4drv

[…]

を使用して

ds4drvにはDS4デバイスを見つけるための2つの異なるモードがあり、ユースケースに応じてどちらを使用するかを決定します。

Raw Bluetoothモード

サポートされているプロトコル:Bluetooth

ご使用のシステムがBlueZ 5.14(最近リリースされた)以上を使用していない限り、DS4とペアリングすることはできません。したがって、この回避策は存在し、ペアリングモードで起動されたDS4に直接接続します(で共有+ PSボタンを保持して、LEDが点滅を開始するまで)急速に)。

これは、オプションなしで実行する場合のデフォルトモードです。

$ ds4drv

[…]

許可

Ds4drvを通常のユーザーとして使用する場合は、ds4drvにシステムの特定の機能を使用する権限があることを確認する必要があります。

ds4drvは、カーネルモジュールuinputを使用してユーザーランドに入力デバイスを作成し、モジュールhidrawを使用してDualShock 4コントローラーと通信します(使用する場合) --hidraw)。ただし、これには通常ルート権限が必要です。 devルールファイル/etc/udev/rules.d/にコピーすることにより、権限を変更できます。

この後、udevルールをリロードする必要がある場合があります。

$ Sudo udevadm control --reload-rules
$ Sudo udevadm trigger

[…]

既知の問題/制限

  • Bluetooth 2.0ドングルには問題があることがわかっています。2.1+をお勧めします。
  • コントローラーは決してシャットオフされません。コントローラーがシャットオフするまでPSボタンを押し続けることで手動でこれを行う必要があります
  • ランブルサポートなし

[…]


結果(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%
6
sallp

SteamのDS4

DS4はSteam(2016-01-01からのクライアント、Ubuntu 14.04でHWEカーネルお​​よび15.10でテスト済み)でネイティブサポートされているようで、Big Picture ModeはUSBおよびBluetoothを介して意図したとおりに動作します。

UbuntuでDS4をペアリングするには、Bluetooth設定に移動し、ペアリングされたデバイスのリストの下にあるプラスボタン(+)を押して、ペアリングダイアログを開き、押し続けます PS+Share LEDが点滅し始めるまでコントローラーでワイヤレスコントローラーを選択し、表示されたらペアリングします。

enter image description here

uSB経由のds4drv

ルーカスのコメントに答えるために、REAMDMEが更新され、以下が含まれるようになりました。

ハイドローモード

サポートされるプロトコル:BluetoothおよびUSB

このモードでは、Linuxカーネル機能hidrawを使用して、システム上の既存のデバイスと通信します。

$ ds4drv --hidraw

[…]

このモードでUSB経由でDS4を使用するには、DS4をマイクロUSBケーブルでコンピューターに接続するだけです。

注:残念ながら、カーネルのバグのため、このモードでbluetoothデバイスを使用する場合、現在LED機能を使用することはできません。

1
LiveWireBT