blob: 3975cec24fcb9500f7a7fc8288e53e74af364444 [file] [log] [blame]
Siarhei Vishniakou0c1c8202019-09-11 22:03:01 +01001# Copyright (C) 2019 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15#
16# XBox One Controller - Model 1697 - USB
17#
18
19# Mapping according to https://developer.android.com/training/game-controllers/controller-input.html
20
21key 304 BUTTON_A
22key 305 BUTTON_B
23key 307 BUTTON_X
24key 308 BUTTON_Y
25
26key 310 BUTTON_L1
27key 311 BUTTON_R1
28
29# Triggers.
30axis 0x02 LTRIGGER
31axis 0x05 RTRIGGER
32
33# Left and right stick.
34# The reported value for flat is 128 out of a range from -32767 to 32768, which is absurd.
35# This confuses applications that rely on the flat value because the joystick actually
36# settles in a flat range of +/- 4096 or so.
37axis 0x00 X flat 4096
38axis 0x01 Y flat 4096
39axis 0x03 Z flat 4096
40axis 0x04 RZ flat 4096
41
42key 317 BUTTON_THUMBL
43key 318 BUTTON_THUMBR
44
45# Hat.
46axis 0x10 HAT_X
47axis 0x11 HAT_Y
48
49
50# Mapping according to https://www.kernel.org/doc/Documentation/input/gamepad.txt
51# Two overlapping rectangles
52key 314 BUTTON_SELECT
53# Hamburger - 3 parallel lines
54key 315 BUTTON_START
55
56# Xbox key
57key 316 BUTTON_MODE