From 89a44e6e2e44f17db8a6d1790eb48c10b9c593fe Mon Sep 17 00:00:00 2001 From: Joseph Pang Date: Thu, 21 Jul 2022 16:11:56 -0700 Subject: [PATCH] Add key layouts for SteelSeries Stratus+ The Stratus+ is somehow bugged when it uses the generic gamepad file; to fix this, a Stratus+-specific key layout file is added, similar to the one for the Stratus Duo. Bug: b/232827632 Test: Stratus+ USB connection, playing SF4 on eve (ARC-R) Change-Id: Ied0e27a57b159fd35915634bd62ffced58ced4f2 --- data/keyboards/Vendor_1038_Product_1434.kl | 58 ++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 data/keyboards/Vendor_1038_Product_1434.kl diff --git a/data/keyboards/Vendor_1038_Product_1434.kl b/data/keyboards/Vendor_1038_Product_1434.kl new file mode 100644 index 0000000000000..8182edd69ad4c --- /dev/null +++ b/data/keyboards/Vendor_1038_Product_1434.kl @@ -0,0 +1,58 @@ +# 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. + +# +# SteelSeries Stratus+ +# Autogenerated based on Vendor_045e_Product_02ea.kl (XBox One Controller - Model 1708) +# + +# 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 + +# Triggers. +axis 0x02 LTRIGGER +axis 0x05 RTRIGGER + +# Left and right stick. +# The reported value for flat is 128 out of a range from -32767 to 32768, which is absurd. +# This confuses applications that rely on the flat value because the joystick actually +# settles in a flat range of +/- 4096 or so. +axis 0x00 X flat 4096 +axis 0x01 Y flat 4096 +axis 0x03 Z flat 4096 +axis 0x04 RZ flat 4096 + +key 317 BUTTON_THUMBL +key 318 BUTTON_THUMBR + +# Hat. +axis 0x10 HAT_X +axis 0x11 HAT_Y + + +# Mapping according to https://www.kernel.org/doc/Documentation/input/gamepad.txt +# Two overlapping rectangles +key 314 BUTTON_SELECT +# Hamburger - 3 parallel lines +key 315 BUTTON_START + +# Xbox key +key 316 BUTTON_MODE