Add keylayout mapping for Luna controller (Bluetooth)

Add a keylayout mapping to support gamepad buttons and axes on the
Amazon Luna controller.

Buttons and axes are mapped according to
https://www.kernel.org/doc/Documentation/input/gamepad.txt except for
the Alexa Push-To-Talk button which is mapped to MEDIA_RECORD.

Bug: 183990549
Test: used the "Gamepad Tester" app and https://gamepad-tester.com in
Chrome to verify all mappings work.

Change-Id: I1921e501eea0ce398b79a32809efa63456074ed5
This commit is contained in:
Matt Reynolds 2021-05-06 12:47:08 -07:00
parent 9639cd6242
commit 552dfe5c29

View File

@ -0,0 +1,55 @@
# Copyright (C) 2021 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.
#
# Amazon Luna Controller
#
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 317 BUTTON_THUMBL
key 318 BUTTON_THUMBR
# Left and right stick.
axis 0x00 X flat 4096
axis 0x01 Y flat 4096
axis 0x02 Z flat 4096
axis 0x05 RZ flat 4096
# Triggers.
axis 0x0a LTRIGGER
axis 0x09 RTRIGGER
# Hat.
axis 0x10 HAT_X
axis 0x11 HAT_Y
# Mapping according to https://www.kernel.org/doc/Documentation/input/gamepad.txt
# Action button (circle icon, left of the Home button)
key 158 BUTTON_SELECT
# Home button (branded button in the center of the controller)
key 172 BUTTON_MODE
# Menu button (hamburger icon, right of the Home button)
key 315 BUTTON_START
# Alexa Push-To-Talk button (microphone icon, below the Home button)
key 217 MEDIA_RECORD