diff options
author | Siarhei Vishniakou <svv@google.com> | 2020-05-13 14:16:52 -0700 |
---|---|---|
committer | Siarhei Vishniakou <svv@google.com> | 2020-05-15 07:38:14 -0700 |
commit | 2abc5d2823dc3cb158d7fe3525a494c93fd9c0ee (patch) | |
tree | 23ef22447984d5b4cec96d99712a5bb2f6e929bf /data/keyboards | |
parent | 1bf7804c2ad3803570fd6ed11dc96e2356f5cf9d (diff) |
Add keylayout for Steam controller (USB)
In the USB mode, Steam controller needs a key layout, because most of
the buttons and axes are incorrectly mapped.
The wireless dongle has not been tested.
The controller also support BLE, but currently goes into lizard mode by
default (only mouse and 2 buttons: left/right clicks work). So a driver
is likely necessary to go into the normal mode over BT, and hid-steam
doesn't help with that currently.
On BT, the controller has product id of 0x1106.
Bug: 147434575
Test: use the "gamepad tester" app and connect joystick over the USB.
Ensure that all mappings work
Test: CTS test will not be done at this time because it requires
supporting SET_REPORT in the hid command.
Change-Id: Ic0c50695338f98dcaeaaa7b3417fde702563d205
Diffstat (limited to 'data/keyboards')
-rw-r--r-- | data/keyboards/Vendor_28de_Product_1102.kl | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/data/keyboards/Vendor_28de_Product_1102.kl b/data/keyboards/Vendor_28de_Product_1102.kl new file mode 100644 index 000000000000..150a17a78250 --- /dev/null +++ b/data/keyboards/Vendor_28de_Product_1102.kl @@ -0,0 +1,74 @@ +# Copyright (C) 2020 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. + +# +# Steam Controller - Model 1001 - USB +# + +# Mapping according to https://developer.android.com/training/game-controllers/controller-input.html + +key 304 BUTTON_A +key 305 BUTTON_B +key 307 BUTTON_X +key 308 BUTTON_Y + +key 310 BUTTON_L1 +key 311 BUTTON_R1 +key 312 BUTTON_L2 +key 313 BUTTON_R2 + +# Triggers. +axis 0x15 LTRIGGER +axis 0x14 RTRIGGER + +# Left and right stick. +axis 0x00 X +axis 0x01 Y + +# Right stick / mousepad +axis 0x03 Z +axis 0x04 RZ + +key 317 BUTTON_THUMBL +key 318 BUTTON_THUMBR + +# Hat. +axis 0x10 HAT_X +axis 0x11 HAT_Y + +# Dpad (clicks) +key 544 DPAD_UP +key 545 DPAD_DOWN +key 546 DPAD_LEFT +key 547 DPAD_RIGHT + +# Touching the dpad (light touch without pressing down) +key 289 BUTTON_1 +# Touching the "right stick" / mousepad (light touch without pressing down) +key 290 BUTTON_2 + +# Pressing the large paddle on the back, left (linux BTN_WHEEL / BTN_GEAR_DOWN) +key 336 BUTTON_3 +# Pressing the large paddle on the back, right (linux BTN_GEAR_UP) +key 337 BUTTON_4 + + +# Mapping according to https://www.kernel.org/doc/Documentation/input/gamepad.txt +# Left arrow +key 314 BUTTON_SELECT +# Right arrow +key 315 BUTTON_START + +# Steam key +key 316 BUTTON_MODE |