Коды игровых манипуляторов


  Описание     Кнопки     Файлы устройств  

Vendor_057e_Product_2009.kl

  • Vendor: Nintendo Co., Ltd

  • Product: Switch Pro Controller

  • Строк: 30

    1. key BUTTON_A 0x130 [304]

    2. key BUTTON_THUMBR 0x13e [318]

    3. key DPAD_UP 0x220 [544]

    4. key DPAD_DOWN 0x221 [545]

    5. key DPAD_LEFT 0x222 [546]

    6. key DPAD_RIGHT 0x223 [547]

    7. key BUTTON_SELECT 0x13a [314]

    8. key BUTTON_START 0x13b [315]

    9. key BUTTON_MODE 0x135 [309]

    10. key HOME 0x13c [316]

    11. key BUTTON_THUMBL 0x13d [317]

    12. key BUTTON_L1 0x136 [310]

    13. key BUTTON_B 0x131 [305]

    14. key BUTTON_Y 0x133 [307]

    15. key BUTTON_X 0x134 [308]

    16. key BUTTON_R2 0x139 [313]

    17. key BUTTON_L2 0x138 [312]

    18. key BUTTON_R1 0x137 [311]

    19. axis RZ 0x04 [4]

    20. axis HAT_Y 0x11 [17]

    21. axis HAT_X 0x10 [16]

    22. axis X 0x00 [0]

    23. axis Y 0x01 [1]

    24. axis Z 0x03 [3]

    25. sensor GYROSCOPE Y 0x04 [4]

    26. sensor GYROSCOPE X 0x03 [3]

    27. sensor ACCELEROMETER Z 0x02 [2]

    28. sensor ACCELEROMETER Y 0x01 [1]

    29. sensor ACCELEROMETER X 0x00 [0]

    30. sensor GYROSCOPE Z 0x05 [5]



  • Содержимое файла Vendor_057e_Product_2009.kl

    # Copyright (C) 2019 The Android Open Source Project
    #
    # Licensed under the Apache License, Version 2.0 (the "License");
    # you may not use this file except in compliance with the License.
    # You may obtain a copy of the License at
    #
    # http://www.apache.org/licenses/LICENSE-2.0
    #
    # Unless required by applicable law or agreed to in writing, software
    # distributed under the License is distributed on an "AS IS" BASIS,
    # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    # See the License for the specific language governing permissions and
    # limitations under the License.

    #
    # Nintendo Switch Pro Controller - HAC-013 - Bluetooth
    #

    # Mapping according to https://developer.android.com/training/game-controllers/controller-input.html

    # Button labeled as "B" but should really produce keycode "A"
    key 0x130 BUTTON_A
    # Button labeled as "A" but should really produce keycode "B"
    key 0x131 BUTTON_B
    # Button labeled as "X" but should really product keycode "Y"
    key 0x133 BUTTON_Y
    # Button labeled as "Y" but should really produce keycode "X"
    key 0x134 BUTTON_X

    # Button labeled as "L"
    key 0x136 BUTTON_L1
    # Button labeled as "R"
    key 0x137 BUTTON_R1

    # No LT / RT axes on this controller. Instead, there are keys.
    # Trigger labeled as "ZL"
    key 0x138 BUTTON_L2
    # Trigger labeled as "ZR"
    key 0x139 BUTTON_R2

    # Left Analog Stick
    axis 0x00 X
    axis 0x01 Y
    # Right Analog Stick
    axis 0x03 Z
    axis 0x04 RZ

    # Left stick click (generates linux BTN_SELECT)
    key 0x13d BUTTON_THUMBL
    # Right stick click (generates linux BTN_START)
    key 0x13e BUTTON_THUMBR

    # Currently, the dpad produces key events
    key 0x220 DPAD_UP
    key 0x221 DPAD_DOWN
    key 0x222 DPAD_LEFT
    key 0x223 DPAD_RIGHT

    # Hat - currently not being produced by hid-nintendo, but an upcoming patch set will change the behaviour.
    # Keep these mappings in anticipation of that change
    axis 0x10 HAT_X
    axis 0x11 HAT_Y

    # Mapping according to https://www.kernel.org/doc/Documentation/input/gamepad.txt
    # Minus
    key 0x13a BUTTON_SELECT

    # Plus
    key 0x13b BUTTON_START

    # Circle
    key 0x135 BUTTON_MODE

    # Home key
    key 0x13c HOME

    # SENSORs
    sensor 0x00 ACCELEROMETER X
    sensor 0x01 ACCELEROMETER Y
    sensor 0x02 ACCELEROMETER Z
    sensor 0x03 GYROSCOPE X
    sensor 0x04 GYROSCOPE Y
    sensor 0x05 GYROSCOPE Z