Xorgを使用した2つのジョイスティックマッピング

Xorgを使用した2つのジョイスティックマッピング

xorg.conf.d/私のディレクトリにファイルを作成し(ファイル名は)、51-joystick.confジョイスティック入力をキーボード入力にマップしました。

2番目のジョイスティック(同じモデル)の入力をマッピングして一緒に使用したいと思います。だから2番目のファイルを作成しましたxorg.conf.d/。内容はほぼ同じで、デバイスパスとマッピングのみが異なります。

残念ながら、次のように動作しません。

  • 2番目のジョイスティックのファイルを呼び出すと、51-joystick2.confジョイスティックは機能しなくなります。

  • 2番目のジョイスティックのファイルを呼び出すと、2番目の52-joystick2.confジョイスティックだけが機能します。

進行方法を説明できる人はいますか?

編集:51-joystick.confの内容は次のとおりです。

Section "InputClass"
    Identifier "Joystick 1 mapping"
    Option "device" "/dev/input/js0"
    Option "path" "/dev/input/js0"
    Option "StartKeyEnabled" "False"
    Option "StartMouseEnabled" "False"
    #MatchIsJoystick on
    #Option "MapAxis1" "keylow=113 keyhigh=114"
    #Option "MapAxis2" "keylow=111 keyhigh=116"
    Option "MapButton1" "key=52"
    Option "MapButton2" "key=53"
    Option "MapButton3" "key=38"
    Option "MapButton4" "key=39"
    Option "MapButton5" "key=40"
    Option "MapButton6" "key=54"
    Option "MapButton7" "key=14"
    Option "MapButton8" "key=10"
EndSection

編集(11/03/15): - 両方のジョイスティックはコマンドと共に表示されますxinput。それぞれには2つの項目(2つの異なるID)があり、キーボードのスレーブとして表示されます。 4つの項目はまったく同じ名前(「Logitech Gamepad F310(Keys)」)を持ちます。最初のジョイスティックの設定ファイルに、より高い番号(「52-joystick1.conf」と「51-joystick2.conf」)を指定する場合です。 )、最初のジョイスティックの入力のみがキーボード入力にマッピングされます。

  • これ最初のジョイスティックを挿入したときにxorgログに記録される内容は次のとおりです。

  • これ2番目のジョイスティックを挿入したときにxorgログに記録される内容は次のとおりです。

どちらの場合も、InputClasses「Joystick 1」と「Joystick 2」が両方のジョイスティックに適用されるように見え、最終的には/ dev / input / js0へのマッピングのみが適用されました。

ベストアンサー1

私はosxでコントローラコンパニオンを使用しながらこのアイデアを得ました。

どちらも同じ構成にマップします。同じキーを持たないようにキーマップを変更することも、実際に入力タイプをシステムでサポートされているHIDに似た入力に変更することもできます。どちらにも複数の構成がある場合は1つのみが使用されます。 js1が開いていることを確認するためにチェックを実行してください。それ以外の場合はjs0の構成1を使用し、そうでない場合は両方をマッピングする構成を使用してください。

Section "InputClass"
Identifier "Joystick 1 mapping"
    Option "device" "/dev/input/js0"
    Option "path" "/dev/input/js0"
    Option "StartKeyEnabled" "False"
    Option "StartMouseEnabled" "False"
    #MatchIsJoystick on
    #Option "MapAxis1" "keylow=113 keyhigh=114"
    #Option "MapAxis2" "keylow=111 keyhigh=116"
    Option "MapButton1" "key=52"
    Option "MapButton2" "key=53"
    Option "MapButton3" "key=38"
    Option "MapButton4" "key=39"
    Option "MapButton5" "key=40"
    Option "MapButton6" "key=54"
    Option "MapButton7" "key=14"
    Option "MapButton8" "key=10"
Identifier "Joystick 2 mapping"
    Option "device" "/dev/input/js1"
    Option "path" "/dev/input/js1"
    Option "StartKeyEnabled" "False"
    Option "StartMouseEnabled" "False"
    #MatchIsJoystick on
    #Option "MapAxis1" "keylow=113 keyhigh=114"
    #Option "MapAxis2" "keylow=111 keyhigh=116"
    Option "MapButton1" "key=52"
    Option "MapButton2" "key=53"
    Option "MapButton3" "key=38"
    Option "MapButton4" "key=39"
    Option "MapButton5" "key=40"
    Option "MapButton6" "key=54"
    Option "MapButton7" "key=14"
    Option "MapButton8" "key=10"
EndSection

おすすめ記事