├── Android.bp ├── LICENSES └── Apache-2.0.txt ├── README.md ├── apps └── NetflixConfig │ ├── Android.bp │ ├── AndroidManifest.xml │ ├── res │ ├── values │ │ └── strings.xml │ └── xml │ │ └── overlayable.xml │ └── src │ └── org │ └── lineage │ └── netflixconfig │ └── NetflixBroadcastReceiver.java ├── idc ├── Android.bp ├── Vendor_000d_Product_3838.idc ├── Vendor_000d_Product_3839.idc ├── Vendor_0110_Product_0508.idc ├── Vendor_0508_Product_0110.idc ├── Vendor_0955_Product_7212.idc ├── Vendor_0955_Product_7213.idc ├── Vendor_0955_Product_7214.idc ├── Vendor_0955_Product_7217.idc ├── Vendor_0957_Product_0004.idc ├── Vendor_0957_Product_0005.idc ├── Vendor_18d1_Product_9450.idc ├── Vendor_1d5a_Product_c082.idc ├── Vendor_248a_Product_8266.idc ├── Vendor_7545_Product_0021.idc └── Vendor_7545_Product_0180.idc ├── initfiles ├── Android.bp ├── init.lineage.atv.rc └── init.lineage.atv.scaling.rc ├── keylayout ├── Android.bp ├── Vendor_0002_Product_0002.kl ├── Vendor_000d_Product_3838.kl ├── Vendor_000d_Product_3839.kl ├── Vendor_005d_Product_0001.kl ├── Vendor_005d_Product_0002.kl ├── Vendor_0110_Product_0508.kl ├── Vendor_045e_Product_0b05.kl ├── Vendor_045e_Product_0b13.kl ├── Vendor_0484_Product_5738.kl ├── Vendor_0508_Product_0110.kl ├── Vendor_0955_Product_7212.kl ├── Vendor_0955_Product_7213.kl ├── Vendor_0955_Product_7214.kl ├── Vendor_0955_Product_7217.kl ├── Vendor_0957_Product_0004.kl ├── Vendor_0957_Product_0005.kl ├── Vendor_0957_Product_0006.kl ├── Vendor_0c45_Product_1109.kl ├── Vendor_18d1_Product_9400.kl ├── Vendor_18d1_Product_9450.kl ├── Vendor_1915_Product_0001.kl ├── Vendor_1d5a_Product_c081.kl ├── Vendor_1d5a_Product_c082.kl ├── Vendor_248a_Product_8266.kl ├── Vendor_7045_Product_1820.kl ├── Vendor_7545_Product_0021.kl ├── Vendor_7545_Product_0180.kl └── Vendor_7545_Product_0190.kl ├── lineage_atv.mk ├── overlay ├── frameworks │ └── base │ │ └── core │ │ └── res │ │ └── res │ │ └── values │ │ └── config.xml └── lineage-sdk │ └── lineage │ └── res │ └── res │ └── values │ └── config.xml ├── permissions └── privapp-permissions-lineage-atv.xml ├── rro ├── LineageGoogleSetupWraithOverlay │ ├── Android.bp │ ├── AndroidManifest.xml │ └── res │ │ └── values │ │ └── config.xml └── LineageGoogleSetupWraithPairingOverlay │ ├── Android.bp │ ├── AndroidManifest.xml │ └── res │ └── values │ └── config.xml └── system_prop.mk /Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // SPDX-FileCopyrightText: 2021 The LineageOS Project 3 | // SPDX-License-Identifier: Apache-2.0 4 | // 5 | 6 | soong_namespace { 7 | } 8 | -------------------------------------------------------------------------------- /LICENSES/Apache-2.0.txt: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. 10 | 11 | "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. 12 | 13 | "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. 14 | 15 | "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. 16 | 17 | "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. 18 | 19 | "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. 20 | 21 | "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). 22 | 23 | "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. 24 | 25 | "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." 26 | 27 | "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 28 | 29 | 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 30 | 31 | 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 32 | 33 | 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: 34 | 35 | (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and 36 | 37 | (b) You must cause any modified files to carry prominent notices stating that You changed the files; and 38 | 39 | (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and 40 | 41 | (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. 42 | 43 | You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 44 | 45 | 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 46 | 47 | 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 48 | 49 | 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 50 | 51 | 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 52 | 53 | 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. 54 | 55 | END OF TERMS AND CONDITIONS 56 | 57 | APPENDIX: How to apply the Apache License to your work. 58 | 59 | To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. 60 | 61 | Copyright [yyyy] [name of copyright owner] 62 | 63 | Licensed under the Apache License, Version 2.0 (the "License"); 64 | you may not use this file except in compliance with the License. 65 | You may obtain a copy of the License at 66 | 67 | http://www.apache.org/licenses/LICENSE-2.0 68 | 69 | Unless required by applicable law or agreed to in writing, software 70 | distributed under the License is distributed on an "AS IS" BASIS, 71 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 72 | See the License for the specific language governing permissions and 73 | limitations under the License. 74 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Common Device configuration for Lineage ATV devices 2 | 3 | ## Copyright 4 | 5 | ``` 6 | # 7 | # SPDX-FileCopyrightText: 2019 The LineageOS Project 8 | # SPDX-License-Identifier: Apache-2.0 9 | # 10 | ``` 11 | -------------------------------------------------------------------------------- /apps/NetflixConfig/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // SPDX-FileCopyrightText: 2021-2022 The LineageOS Project 3 | // SPDX-License-Identifier: Apache-2.0 4 | // 5 | 6 | android_app { 7 | name: "NetflixConfig", 8 | product_specific: true, 9 | sdk_version: "current", 10 | srcs: ["src/**/*.java"], 11 | certificate: "platform", 12 | } 13 | -------------------------------------------------------------------------------- /apps/NetflixConfig/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /apps/NetflixConfig/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /apps/NetflixConfig/res/xml/overlayable.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /apps/NetflixConfig/src/org/lineage/netflixconfig/NetflixBroadcastReceiver.java: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2021-2023 The LineageOS Project 3 | * SPDX-License-Identifier: Apache-2.0 4 | */ 5 | 6 | package org.lineageos.netflixconfig; 7 | 8 | import android.content.Context; 9 | import android.content.BroadcastReceiver; 10 | import android.content.Intent; 11 | import android.content.SharedPreferences; 12 | import android.os.Build; 13 | import android.preference.PreferenceManager; 14 | import android.provider.Settings; 15 | import android.text.TextUtils; 16 | import android.util.Log; 17 | 18 | public class NetflixBroadcastReceiver extends BroadcastReceiver { 19 | private static final String TAG = "NetflixBroadcastReceiver"; 20 | 21 | // Setting name 22 | private static final String NRDP_PLATFORM_CAP = "nrdp_platform_capabilities"; 23 | private static final String NRDP_AUDIO_CAP = "nrdp_audio_platform_capabilities"; 24 | private static final String NRDP_VIDEO_CAP = "nrdp_video_platform_capabilities"; 25 | 26 | // Shared preference name 27 | private static final String SAVED_BUILD_DATE = "saved_build_date"; 28 | 29 | @Override 30 | public void onReceive(Context context, Intent intent) { 31 | String buildDate = Build.VERSION.INCREMENTAL; 32 | boolean needUpdate = !buildDate.equals(getSavedBuildDate(context)); 33 | 34 | // This also includes first boot 35 | if (needUpdate) { 36 | setNrdpCapabilites(context, NRDP_PLATFORM_CAP, 37 | context.getString(R.string.nrdp_platform_capabilities)); 38 | setNrdpCapabilites(context, NRDP_AUDIO_CAP, 39 | context.getString(R.string.nrdp_audio_platform_capabilities)); 40 | setNrdpCapabilites(context, NRDP_VIDEO_CAP, 41 | context.getString(R.string.nrdp_video_platform_capabilities)); 42 | setSavedBuildDate(context, buildDate); 43 | } 44 | } 45 | 46 | private static String getSavedBuildDate(Context ctx) { 47 | SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(ctx); 48 | return sp.getString(SAVED_BUILD_DATE, ""); 49 | } 50 | 51 | private static void setSavedBuildDate(Context ctx, String date) { 52 | SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(ctx); 53 | SharedPreferences.Editor editor = sp.edit(); 54 | editor.putString(SAVED_BUILD_DATE, date); 55 | editor.apply(); 56 | } 57 | 58 | private void setNrdpCapabilites(Context ctx, String setting, String cap) { 59 | Settings.Global.putString(ctx.getContentResolver(), setting, cap); 60 | Log.i(TAG, setting + ": " + cap); 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /idc/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // SPDX-FileCopyrightText: 2024 The LineageOS Project 3 | // SPDX-License-Identifier: Apache-2.0 4 | // 5 | 6 | prebuilt_usr_idc { 7 | name: "Vendor_0110_Product_0508.idc", 8 | src: "Vendor_0110_Product_0508.idc", 9 | vendor: true, 10 | } 11 | 12 | prebuilt_usr_idc { 13 | name: "Vendor_0955_Product_7212.idc", 14 | src: "Vendor_0955_Product_7212.idc", 15 | vendor: true, 16 | } 17 | 18 | prebuilt_usr_idc { 19 | name: "Vendor_0955_Product_7213.idc", 20 | src: "Vendor_0955_Product_7213.idc", 21 | vendor: true, 22 | } 23 | 24 | prebuilt_usr_idc { 25 | name: "Vendor_0955_Product_7214.idc", 26 | src: "Vendor_0955_Product_7214.idc", 27 | vendor: true, 28 | } 29 | 30 | prebuilt_usr_idc { 31 | name: "Vendor_0955_Product_7217.idc", 32 | src: "Vendor_0955_Product_7217.idc", 33 | vendor: true, 34 | } 35 | 36 | prebuilt_usr_idc { 37 | name: "Vendor_0957_Product_0005.idc", 38 | src: "Vendor_0957_Product_0005.idc", 39 | vendor: true, 40 | } 41 | 42 | prebuilt_usr_idc { 43 | name: "Vendor_18d1_Product_9450.idc", 44 | src: "Vendor_18d1_Product_9450.idc", 45 | vendor: true, 46 | } 47 | 48 | prebuilt_usr_idc { 49 | name: "Vendor_000d_Product_3838.idc", 50 | src: "Vendor_000d_Product_3838.idc", 51 | vendor: true, 52 | } 53 | 54 | prebuilt_usr_idc { 55 | name: "Vendor_000d_Product_3839.idc", 56 | src: "Vendor_000d_Product_3839.idc", 57 | vendor: true, 58 | } 59 | 60 | prebuilt_usr_idc { 61 | name: "Vendor_7545_Product_0021.idc", 62 | src: "Vendor_7545_Product_0021.idc", 63 | vendor: true, 64 | } 65 | 66 | prebuilt_usr_idc { 67 | name: "Vendor_0508_Product_0110.idc", 68 | src: "Vendor_0508_Product_0110.idc", 69 | vendor: true, 70 | } 71 | 72 | prebuilt_usr_idc { 73 | name: "Vendor_0957_Product_0004.idc", 74 | src: "Vendor_0957_Product_0004.idc", 75 | vendor: true, 76 | } 77 | 78 | prebuilt_usr_idc { 79 | name: "Vendor_1d5a_Product_c082.idc", 80 | src: "Vendor_1d5a_Product_c082.idc", 81 | vendor: true, 82 | } 83 | 84 | prebuilt_usr_idc { 85 | name: "Vendor_248a_Product_8266.idc", 86 | src: "Vendor_248a_Product_8266.idc", 87 | vendor: true, 88 | } 89 | 90 | prebuilt_usr_idc { 91 | name: "Vendor_7545_Product_0180.idc", 92 | src: "Vendor_7545_Product_0180.idc", 93 | vendor: true, 94 | } 95 | -------------------------------------------------------------------------------- /idc/Vendor_000d_Product_3838.idc: -------------------------------------------------------------------------------- 1 | # Copyright 2020 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 | # Input Device Configuration for B016 Remote. 17 | # 18 | 19 | keyboard.doNotWakeByDefault = 1 20 | audio.mic = 1 21 | -------------------------------------------------------------------------------- /idc/Vendor_000d_Product_3839.idc: -------------------------------------------------------------------------------- 1 | # Copyright 2020 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 | # Input Device Configuration for B017 Remote. 17 | # 18 | 19 | keyboard.doNotWakeByDefault = 1 20 | audio.mic = 1 21 | -------------------------------------------------------------------------------- /idc/Vendor_0110_Product_0508.idc: -------------------------------------------------------------------------------- 1 | keyboard.doNotWakeByDefault = 1 2 | audio.mic = 1 3 | -------------------------------------------------------------------------------- /idc/Vendor_0508_Product_0110.idc: -------------------------------------------------------------------------------- 1 | keyboard.doNotWakeByDefault = 1 2 | audio.mic = 1 3 | -------------------------------------------------------------------------------- /idc/Vendor_0955_Product_7212.idc: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved. 2 | 3 | keyboard.doNotWakeByDefault = 1 4 | audio.mic = 1 5 | -------------------------------------------------------------------------------- /idc/Vendor_0955_Product_7213.idc: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved. 2 | 3 | keyboard.doNotWakeByDefault = 1 4 | audio.mic = 1 5 | -------------------------------------------------------------------------------- /idc/Vendor_0955_Product_7214.idc: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved. 2 | 3 | audio.mic = 1 4 | -------------------------------------------------------------------------------- /idc/Vendor_0955_Product_7217.idc: -------------------------------------------------------------------------------- 1 | keyboard.doNotWakeByDefault = 1 2 | audio.mic = 1 3 | -------------------------------------------------------------------------------- /idc/Vendor_0957_Product_0004.idc: -------------------------------------------------------------------------------- 1 | keyboard.doNotWakeByDefault = 1 2 | audio.mic = 1 3 | -------------------------------------------------------------------------------- /idc/Vendor_0957_Product_0005.idc: -------------------------------------------------------------------------------- 1 | keyboard.doNotWakeByDefault = 1 2 | audio.mic = 1 3 | -------------------------------------------------------------------------------- /idc/Vendor_18d1_Product_9450.idc: -------------------------------------------------------------------------------- 1 | # Copyright 2020 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 | # Input Device Configuration for Abbey Remote 17 | # 18 | 19 | keyboard.doNotWakeByDefault = 1 20 | audio.mic = 1 21 | 22 | -------------------------------------------------------------------------------- /idc/Vendor_1d5a_Product_c082.idc: -------------------------------------------------------------------------------- 1 | keyboard.doNotWakeByDefault = 1 2 | audio.mic = 1 3 | -------------------------------------------------------------------------------- /idc/Vendor_248a_Product_8266.idc: -------------------------------------------------------------------------------- 1 | keyboard.doNotWakeByDefault = 1 2 | audio.mic = 1 3 | -------------------------------------------------------------------------------- /idc/Vendor_7545_Product_0021.idc: -------------------------------------------------------------------------------- 1 | # Copyright 2021 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 | # Input Device Configuration for B06 Remote. 17 | # 18 | 19 | keyboard.doNotWakeByDefault = 1 20 | audio.mic = 1 21 | -------------------------------------------------------------------------------- /idc/Vendor_7545_Product_0180.idc: -------------------------------------------------------------------------------- 1 | keyboard.doNotWakeByDefault = 1 2 | audio.mic = 1 3 | -------------------------------------------------------------------------------- /initfiles/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // SPDX-FileCopyrightText: 2024 The LineageOS Project 3 | // SPDX-License-Identifier: Apache-2.0 4 | // 5 | 6 | prebuilt_etc { 7 | name: "init.lineage.atv.rc", 8 | src: "init.lineage.atv.rc", 9 | sub_dir: "init", 10 | product_specific: true, 11 | } 12 | 13 | prebuilt_etc { 14 | name: "init.lineage.atv.scaling.rc", 15 | src: "init.lineage.atv.scaling.rc", 16 | sub_dir: "init", 17 | product_specific: true, 18 | } 19 | -------------------------------------------------------------------------------- /initfiles/init.lineage.atv.rc: -------------------------------------------------------------------------------- 1 | # 2 | # SPDX-FileCopyrightText: 2019-2024 The LineageOS Project 3 | # SPDX-License-Identifier: Apache-2.0 4 | # 5 | 6 | on property:service.adb.tcp.port=5555 7 | stop adbd 8 | start adbd 9 | 10 | on property:service.adb.tcp.port=-1 11 | stop adbd 12 | start adbd 13 | -------------------------------------------------------------------------------- /initfiles/init.lineage.atv.scaling.rc: -------------------------------------------------------------------------------- 1 | # 2 | # SPDX-FileCopyrightText: 2019-2024 The LineageOS Project 3 | # SPDX-License-Identifier: Apache-2.0 4 | # 5 | 6 | on fs 7 | setprop ro.config.size_override 1920,1080 8 | setprop ro.config.density_override 320 9 | 10 | on post-fs-data 11 | setprop persist.sys.display.resolution 1920x1080 12 | setprop persist.vendor.sys.display.resolution 1920x1080 13 | -------------------------------------------------------------------------------- /keylayout/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // SPDX-FileCopyrightText: 2024 The LineageOS Project 3 | // SPDX-License-Identifier: Apache-2.0 4 | // 5 | 6 | prebuilt_usr_keylayout { 7 | name: "Vendor_0110_Product_0508.kl", 8 | src: "Vendor_0110_Product_0508.kl", 9 | vendor: true, 10 | } 11 | 12 | prebuilt_usr_keylayout { 13 | name: "Vendor_045e_Product_0b05.kl", 14 | src: "Vendor_045e_Product_0b05.kl", 15 | vendor: true, 16 | } 17 | 18 | prebuilt_usr_keylayout { 19 | name: "Vendor_045e_Product_0b13.kl", 20 | src: "Vendor_045e_Product_0b13.kl", 21 | vendor: true, 22 | } 23 | 24 | prebuilt_usr_keylayout { 25 | name: "Vendor_0955_Product_7212.kl", 26 | src: "Vendor_0955_Product_7212.kl", 27 | vendor: true, 28 | } 29 | 30 | prebuilt_usr_keylayout { 31 | name: "Vendor_0955_Product_7213.kl", 32 | src: "Vendor_0955_Product_7213.kl", 33 | vendor: true, 34 | } 35 | 36 | prebuilt_usr_keylayout { 37 | name: "Vendor_0955_Product_7214.kl", 38 | src: "Vendor_0955_Product_7214.kl", 39 | vendor: true, 40 | } 41 | 42 | prebuilt_usr_keylayout { 43 | name: "Vendor_0955_Product_7217.kl", 44 | src: "Vendor_0955_Product_7217.kl", 45 | vendor: true, 46 | } 47 | 48 | prebuilt_usr_keylayout { 49 | name: "Vendor_0957_Product_0005.kl", 50 | src: "Vendor_0957_Product_0005.kl", 51 | vendor: true, 52 | } 53 | 54 | prebuilt_usr_keylayout { 55 | name: "Vendor_18d1_Product_9400.kl", 56 | src: "Vendor_18d1_Product_9400.kl", 57 | vendor: true, 58 | } 59 | 60 | prebuilt_usr_keylayout { 61 | name: "Vendor_18d1_Product_9450.kl", 62 | src: "Vendor_18d1_Product_9450.kl", 63 | vendor: true, 64 | } 65 | 66 | prebuilt_usr_keylayout { 67 | name: "Vendor_0002_Product_0002.kl", 68 | src: "Vendor_0002_Product_0002.kl", 69 | vendor: true, 70 | } 71 | 72 | prebuilt_usr_keylayout { 73 | name: "Vendor_000d_Product_3838.kl", 74 | src: "Vendor_000d_Product_3838.kl", 75 | vendor: true, 76 | } 77 | 78 | prebuilt_usr_keylayout { 79 | name: "Vendor_000d_Product_3839.kl", 80 | src: "Vendor_000d_Product_3839.kl", 81 | vendor: true, 82 | } 83 | 84 | prebuilt_usr_keylayout { 85 | name: "Vendor_005d_Product_0001.kl", 86 | src: "Vendor_005d_Product_0001.kl", 87 | vendor: true, 88 | } 89 | 90 | prebuilt_usr_keylayout { 91 | name: "Vendor_005d_Product_0002.kl", 92 | src: "Vendor_005d_Product_0002.kl", 93 | vendor: true, 94 | } 95 | 96 | prebuilt_usr_keylayout { 97 | name: "Vendor_0484_Product_5738.kl", 98 | src: "Vendor_0484_Product_5738.kl", 99 | vendor: true, 100 | } 101 | 102 | prebuilt_usr_keylayout { 103 | name: "Vendor_0508_Product_0110.kl", 104 | src: "Vendor_0508_Product_0110.kl", 105 | vendor: true, 106 | } 107 | 108 | prebuilt_usr_keylayout { 109 | name: "Vendor_0957_Product_0006.kl", 110 | src: "Vendor_0957_Product_0006.kl", 111 | vendor: true, 112 | } 113 | 114 | prebuilt_usr_keylayout { 115 | name: "Vendor_0c45_Product_1109.kl", 116 | src: "Vendor_0c45_Product_1109.kl", 117 | vendor: true, 118 | } 119 | 120 | prebuilt_usr_keylayout { 121 | name: "Vendor_1915_Product_0001.kl", 122 | src: "Vendor_1915_Product_0001.kl", 123 | vendor: true, 124 | } 125 | 126 | prebuilt_usr_keylayout { 127 | name: "Vendor_7045_Product_1820.kl", 128 | src: "Vendor_7045_Product_1820.kl", 129 | vendor: true, 130 | } 131 | 132 | prebuilt_usr_keylayout { 133 | name: "Vendor_7545_Product_0021.kl", 134 | src: "Vendor_7545_Product_0021.kl", 135 | vendor: true, 136 | } 137 | 138 | prebuilt_usr_keylayout { 139 | name: "Vendor_7545_Product_0180.kl", 140 | src: "Vendor_7545_Product_0180.kl", 141 | vendor: true, 142 | } 143 | 144 | prebuilt_usr_keylayout { 145 | name: "Vendor_7545_Product_0190.kl", 146 | src: "Vendor_7545_Product_0190.kl", 147 | vendor: true, 148 | } 149 | 150 | prebuilt_usr_keylayout { 151 | name: "Vendor_0957_Product_0004.kl", 152 | src: "Vendor_0957_Product_0004.kl", 153 | vendor: true, 154 | } 155 | 156 | prebuilt_usr_keylayout { 157 | name: "Vendor_1d5a_Product_c081.kl", 158 | src: "Vendor_1d5a_Product_c081.kl", 159 | vendor: true, 160 | } 161 | 162 | prebuilt_usr_keylayout { 163 | name: "Vendor_1d5a_Product_c082.kl", 164 | src: "Vendor_1d5a_Product_c082.kl", 165 | vendor: true, 166 | } 167 | 168 | prebuilt_usr_keylayout { 169 | name: "Vendor_248a_Product_8266.kl", 170 | src: "Vendor_248a_Product_8266.kl", 171 | vendor: true, 172 | } 173 | -------------------------------------------------------------------------------- /keylayout/Vendor_0002_Product_0002.kl: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2010 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 | # Generic key layout file for full alphabetic US English PC style external keyboards. 17 | # 18 | # This file is intentionally very generic and is intended to support a broad range of keyboards. 19 | # Do not edit the generic key layout to support a specific keyboard; instead, create 20 | # a new key layout file with the required keyboard configuration. 21 | # 22 | 23 | #key 1 ESCAPE 24 | key 2 1 25 | key 3 2 26 | key 4 3 27 | key 5 4 28 | key 6 5 29 | key 7 6 30 | key 8 7 31 | key 9 8 32 | key 10 9 33 | key 11 0 34 | 35 | key 28 DPAD_CENTER WAKE 36 | 37 | key 103 DPAD_UP 38 | key 108 DPAD_DOWN 39 | key 105 DPAD_LEFT 40 | key 106 DPAD_RIGHT 41 | key 113 VOLUME_MUTE 42 | key 114 VOLUME_DOWN 43 | key 115 VOLUME_UP 44 | key 116 POWER 45 | key 156 BOOKMARK 46 | key 141 SETTINGS 47 | key 217 ASSIST WAKE 48 | key 358 INFO 49 | key 471 GUIDE 50 | key 158 BACK 51 | key 138 TV_INPUT 52 | key 102 HOME 53 | key 402 CHANNEL_UP 54 | key 403 CHANNEL_DOWN 55 | 56 | key 398 PROG_RED 57 | key 399 PROG_GREEN 58 | key 400 PROG_YELLOW 59 | key 401 PROG_BLUE 60 | 61 | key 188 F1 62 | key 187 F2 63 | key 189 F3 64 | key 190 F4 65 | -------------------------------------------------------------------------------- /keylayout/Vendor_000d_Product_3838.kl: -------------------------------------------------------------------------------- 1 | # 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 | # Key Layout file for B016 Remote. 17 | # 18 | 19 | key 116 POWER 20 | key 217 ASSIST WAKE 21 | 22 | key 103 DPAD_UP 23 | key 108 DPAD_DOWN 24 | key 105 DPAD_LEFT 25 | key 106 DPAD_RIGHT 26 | key 353 DPAD_CENTER WAKE 27 | 28 | key 158 BACK 29 | key 172 HOME 30 | key 580 APP_SWITCH 31 | 32 | key 113 VOLUME_MUTE 33 | key 114 VOLUME_DOWN 34 | key 115 VOLUME_UP 35 | 36 | #removed by askey for WH-5349 ->start 37 | #key usage 0x000c0078 BUTTON_2 38 | #key usage 0x000c0077 BUTTON_3 39 | #key usage 0x000c0079 BUTTON_4 40 | #removed by askey for WH-5349 ->end 41 | 42 | #added by askey for WH-5349 ->start 43 | #NETFLIX 44 | key usage 0x0c0008 BUTTON_4 WAKE 45 | #YOUTUBE 46 | key usage 0x0c0007 BUTTON_3 WAKE 47 | #GOOGLE PLAY 48 | key usage 0x0c0009 BUTTON_8 WAKE 49 | #ALL APPS 50 | key usage 0x0c01A2 F9 51 | #NETFLIX 52 | key usage 0x0c0077 BUTTON_4 WAKE 53 | #YOUTUBE 54 | key usage 0x0c0078 BUTTON_3 WAKE 55 | #GOOGLE PLAY 56 | key usage 0x0c0079 BUTTON_8 WAKE 57 | #added by askey for WH-5349 ->end 58 | -------------------------------------------------------------------------------- /keylayout/Vendor_000d_Product_3839.kl: -------------------------------------------------------------------------------- 1 | # 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 | # Key Layout file for B017 Remote. 17 | # 18 | 19 | key 116 POWER 20 | key 217 ASSIST WAKE 21 | 22 | key 103 DPAD_UP 23 | key 108 DPAD_DOWN 24 | key 105 DPAD_LEFT 25 | key 106 DPAD_RIGHT 26 | key 353 DPAD_CENTER WAKE 27 | 28 | key 158 BACK 29 | key 172 HOME 30 | key 580 APP_SWITCH 31 | 32 | key 113 VOLUME_MUTE 33 | key 114 VOLUME_DOWN 34 | key 115 VOLUME_UP 35 | 36 | key usage 0x000c0078 BUTTON_2 WAKE # Live TV 37 | key usage 0x000c0077 BUTTON_3 WAKE # YouTube 38 | key usage 0x000c0079 BUTTON_4 WAKE # Netflix 39 | -------------------------------------------------------------------------------- /keylayout/Vendor_005d_Product_0001.kl: -------------------------------------------------------------------------------- 1 | # bt remote map 2 | key 1 BACK 3 | key 2 1 4 | key 3 2 5 | key 4 3 6 | key 5 4 7 | key 6 5 8 | key 7 6 9 | key 8 7 10 | key 9 8 11 | key 10 9 12 | key 11 0 13 | key 217 ASSIST WAKE 14 | key 158 BACK 15 | key 353 DPAD_CENTER WAKE 16 | key 108 DPAD_DOWN 17 | key 103 DPAD_UP 18 | key 172 HOME 19 | key 105 DPAD_LEFT 20 | key 106 DPAD_RIGHT 21 | key 115 VOLUME_UP 22 | key 114 VOLUME_DOWN 23 | key 116 POWER 24 | 25 | #key usage 0x0c00b3 MEDIA_FAST_FORWARD 26 | #key usage 0x0c00cd MEDIA_PLAY_PAUSE 27 | #key usage 0x0c00b4 MEDIA_REWIND 28 | 29 | -------------------------------------------------------------------------------- /keylayout/Vendor_005d_Product_0002.kl: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2010 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 | # Generic key layout file for full alphabetic US English PC style external keyboards. 17 | # 18 | # This file is intentionally very generic and is intended to support a broad rang of keyboards. 19 | # Do not edit the generic key layout to support a specific keyboard; instead, create 20 | # a new key layout file with the required keyboard configuration. 21 | # 22 | key 1 BACK 23 | key 2 1 24 | key 3 2 25 | key 4 3 26 | key 5 4 27 | key 6 5 28 | key 7 6 29 | key 8 7 30 | key 9 8 31 | key 10 9 32 | key 11 0 33 | key 28 DPAD_CENTER WAKE 34 | key 59 HOME 35 | key 60 TV_INPUT 36 | key 62 INFO 37 | key 103 DPAD_UP 38 | key 104 MEDIA_PREVIOUS 39 | key 105 DPAD_LEFT 40 | key 106 DPAD_RIGHT 41 | key 108 DPAD_DOWN 42 | key 109 MEDIA_NEXT 43 | key 113 VOLUME_MUTE 44 | key 114 VOLUME_DOWN 45 | key 115 VOLUME_UP 46 | key 116 POWER 47 | key 130 MENU 48 | key 217 ASSIST WAKE 49 | -------------------------------------------------------------------------------- /keylayout/Vendor_0110_Product_0508.kl: -------------------------------------------------------------------------------- 1 | # bt remote map 2 | key 1 BACK 3 | key 2 1 4 | key 3 2 5 | key 4 3 6 | key 5 4 7 | key 6 5 8 | key 7 6 9 | key 8 7 10 | key 9 8 11 | key 10 9 12 | key 11 0 13 | key 217 ASSIST WAKE 14 | key 158 BACK 15 | key 353 DPAD_CENTER WAKE 16 | key 108 DPAD_DOWN 17 | key 103 DPAD_UP 18 | key 172 HOME 19 | key 105 DPAD_LEFT 20 | key 106 DPAD_RIGHT 21 | key 115 VOLUME_UP 22 | key 114 VOLUME_DOWN 23 | key 116 POWER 24 | key 139 MENU 25 | key 113 VOLUME_MUTE 26 | 27 | #key usage 0x0c00b3 MEDIA_FAST_FORWARD 28 | #key usage 0x0c00cd MEDIA_PLAY_PAUSE 29 | #key usage 0x0c00b4 MEDIA_REWIND 30 | 31 | #Askey BT + 32 | #NETFLIX 33 | key usage 0x0c0008 BUTTON_4 WAKE 34 | #YOUTUBE 35 | key usage 0x0c0007 BUTTON_3 WAKE 36 | #GOOGLE PLAY 37 | key usage 0x0c0009 BUTTON_7 WAKE 38 | 39 | #ALL APPS 40 | key usage 0x0c01A2 F9 41 | #NETFLIX 42 | key usage 0x0c0077 BUTTON_4 WAKE 43 | #YOUTUBE 44 | key usage 0x0c0078 BUTTON_3 WAKE 45 | #GOOGLE PLAY 46 | key usage 0x0c0079 BUTTON_7 WAKE 47 | -------------------------------------------------------------------------------- /keylayout/Vendor_045e_Product_0b05.kl: -------------------------------------------------------------------------------- 1 | # 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 | # Microsoft X-Box One Elite Series 2 16 | # Wireless mode only 17 | 18 | key 304 BUTTON_A 19 | key 305 BUTTON_B 20 | key 307 BUTTON_X 21 | key 308 BUTTON_Y 22 | 23 | # Button "LB" maps to BUTTON_L1. 24 | key 310 BUTTON_L1 25 | # Button "RB" maps to BUTTON_R1. 26 | key 311 BUTTON_R1 27 | 28 | # Button with two overlapped windows (left of Xbox logo button). 29 | key 158 BUTTON_SELECT 30 | # Button with hamburger (right of Xbox logo button) maps to BUTTON_START. 31 | key 315 BUTTON_START 32 | # Button with Xbox logo. 33 | key 316 BUTTON_MODE 34 | 35 | # These two keycodes are for click (press from above) on analog control sticks. 36 | key 317 BUTTON_THUMBL 37 | key 318 BUTTON_THUMBR 38 | 39 | # Left and right stick. 40 | # The reported value for flat is 128 out of a range from -32767 to 32768, which is absurd. 41 | # This confuses applications that rely on the flat value because the joystick actually 42 | # settles in a flat range of +/- 4096 or so. 43 | axis 0x00 X flat 4096 44 | axis 0x01 Y flat 4096 45 | axis 0x02 Z flat 4096 46 | axis 0x05 RZ flat 4096 47 | 48 | # Triggers. 49 | # (Shoulder trigger buttons are reported as analog.) 50 | axis 0x09 RTRIGGER 51 | axis 0x0a LTRIGGER 52 | 53 | # Hat. 54 | # (D-pad is reported as analog. Each axis has range from -1 to 1.) 55 | axis 0x10 HAT_X 56 | axis 0x11 HAT_Y 57 | -------------------------------------------------------------------------------- /keylayout/Vendor_045e_Product_0b13.kl: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2022 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 | # Microsoft Xbox Series X/S Wireless Controller 16 | 17 | key 304 BUTTON_A 18 | key 305 BUTTON_B 19 | key 307 BUTTON_X 20 | key 308 BUTTON_Y 21 | 22 | # Button "LB" maps to BUTTON_L1. 23 | key 310 BUTTON_L1 24 | # Button "RB" maps to BUTTON_R1. 25 | key 311 BUTTON_R1 26 | 27 | # Button with two overlapping rectangles 28 | key 314 BUTTON_SELECT 29 | # Button with three parallel horizontal lines (hamburger menu) 30 | key 315 BUTTON_START 31 | # Button with Xbox logo 32 | key 316 BUTTON_MODE 33 | # Button below the Xbox logo (share button) 34 | key 167 MEDIA_RECORD 35 | 36 | # These two keycodes are for click (press from above) on analog control sticks. 37 | key 317 BUTTON_THUMBL 38 | key 318 BUTTON_THUMBR 39 | 40 | # Left and right stick. 41 | # The reported value for flat is 128 out of a range from -32767 to 32768, which is absurd. 42 | # This confuses applications that rely on the flat value because the joystick actually 43 | # settles in a flat range of +/- 4096 or so. 44 | axis 0x00 X flat 4096 45 | axis 0x01 Y flat 4096 46 | axis 0x02 Z flat 4096 47 | axis 0x05 RZ flat 4096 48 | 49 | # Triggers. 50 | # (Shoulder trigger buttons are reported as analog.) 51 | axis 0x09 RTRIGGER 52 | axis 0x0a LTRIGGER 53 | 54 | # Hat. 55 | # (D-pad is reported as analog. Each axis has range from -1 to 1.) 56 | axis 0x10 HAT_X 57 | axis 0x11 HAT_Y 58 | 59 | -------------------------------------------------------------------------------- /keylayout/Vendor_0484_Product_5738.kl: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2010 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 | # Generic key layout file for full alphabetic US English PC style external keyboards. 17 | # 18 | # This file is intentionally very generic and is intended to support a broad rang of keyboards. 19 | # Do not edit the generic key layout to support a specific keyboard; instead, create 20 | # a new key layout file with the required keyboard configuration. 21 | # 22 | 23 | key 1 ESCAPE 24 | key 2 1 25 | key 3 2 26 | key 4 3 27 | key 5 4 28 | key 6 5 29 | key 7 6 30 | key 8 7 31 | key 9 8 32 | key 10 9 33 | key 11 0 34 | key 12 MINUS 35 | key 13 EQUALS 36 | key 14 DEL 37 | key 15 TAB 38 | key 16 Q 39 | key 17 W 40 | key 18 E 41 | key 19 R 42 | key 20 T 43 | key 21 Y 44 | key 22 U 45 | key 23 I 46 | key 24 O 47 | key 25 P 48 | key 26 LEFT_BRACKET 49 | key 27 RIGHT_BRACKET 50 | key 28 DPAD_CENTER WAKE 51 | key 29 CTRL_LEFT 52 | key 30 A 53 | key 31 S 54 | key 32 D 55 | key 33 F 56 | key 34 G 57 | key 35 H 58 | key 36 J 59 | key 37 K 60 | key 38 L 61 | key 39 SEMICOLON 62 | key 40 APOSTROPHE 63 | key 41 GRAVE 64 | key 42 SHIFT_LEFT 65 | key 43 BACKSLASH 66 | key 44 Z 67 | key 45 X 68 | key 46 C 69 | key 47 V 70 | key 48 B 71 | key 49 N 72 | key 50 M 73 | key 51 COMMA 74 | key 52 PERIOD 75 | key 53 SLASH 76 | key 54 SHIFT_RIGHT 77 | key 55 NUMPAD_MULTIPLY 78 | key 56 ALT_LEFT 79 | key 57 SPACE 80 | key 58 CAPS_LOCK 81 | key 59 F1 82 | key 60 F2 83 | key 61 F3 84 | key 62 F4 85 | key 63 F5 86 | key 64 F6 87 | key 65 BUTTON_6 88 | key 66 BUTTON_7 89 | key 67 F9 90 | key 68 BUTTON_3 91 | key 69 NUM_LOCK 92 | key 70 SCROLL_LOCK 93 | key 71 NUMPAD_7 94 | key 72 NUMPAD_8 95 | key 73 NUMPAD_9 96 | key 74 NUMPAD_SUBTRACT 97 | key 75 NUMPAD_4 98 | key 76 NUMPAD_5 99 | key 77 NUMPAD_6 100 | key 78 NUMPAD_ADD 101 | key 79 NUMPAD_1 102 | key 80 NUMPAD_2 103 | key 81 NUMPAD_3 104 | key 82 NUMPAD_0 105 | key 83 NUMPAD_DOT 106 | # key 84 (undefined) 107 | key 85 ZENKAKU_HANKAKU 108 | key 86 BACKSLASH 109 | key 87 BUTTON_4 110 | key 88 BUTTON_8 111 | key 89 RO 112 | # key 90 "KEY_KATAKANA" 113 | # key 91 "KEY_HIRAGANA" 114 | key 92 HENKAN 115 | key 93 KATAKANA_HIRAGANA 116 | key 94 MUHENKAN 117 | key 95 NUMPAD_COMMA 118 | key 96 NUMPAD_ENTER 119 | key 97 CTRL_RIGHT 120 | key 98 NUMPAD_DIVIDE 121 | key 99 SYSRQ 122 | key 100 ALT_RIGHT 123 | # key 101 "KEY_LINEFEED" 124 | key 102 MOVE_HOME 125 | key 103 DPAD_UP 126 | key 104 PAGE_UP 127 | key 105 DPAD_LEFT 128 | key 106 DPAD_RIGHT 129 | key 107 MOVE_END 130 | key 108 DPAD_DOWN 131 | key 109 PAGE_DOWN 132 | key 110 INSERT 133 | key 111 FORWARD_DEL 134 | # key 112 "KEY_MACRO" 135 | key 113 VOLUME_MUTE 136 | key 114 VOLUME_DOWN 137 | key 115 VOLUME_UP 138 | key 116 POWER 139 | key 117 NUMPAD_EQUALS 140 | # key 118 "KEY_KPPLUSMINUS" 141 | key 119 BREAK 142 | # key 120 (undefined) 143 | key 121 NUMPAD_COMMA 144 | key 122 KANA 145 | key 123 EISU 146 | key 124 YEN 147 | key 125 META_LEFT 148 | key 126 META_RIGHT 149 | key 127 MENU 150 | key 128 MEDIA_STOP 151 | # key 129 "KEY_AGAIN" 152 | # key 130 "KEY_PROPS" 153 | # key 131 "KEY_UNDO" 154 | # key 132 "KEY_FRONT" 155 | # key 133 "KEY_COPY" 156 | # key 134 "KEY_OPEN" 157 | # key 135 "KEY_PASTE" 158 | # key 136 "KEY_FIND" 159 | # key 137 "KEY_CUT" 160 | # key 138 "KEY_HELP" 161 | key 139 MENU 162 | key 140 CALCULATOR 163 | # key 141 "KEY_SETUP" 164 | key 142 SLEEP 165 | key 143 WAKEUP 166 | # key 144 "KEY_FILE" 167 | # key 145 "KEY_SENDFILE" 168 | # key 146 "KEY_DELETEFILE" 169 | # key 147 "KEY_XFER" 170 | # key 148 "KEY_PROG1" 171 | # key 149 "KEY_PROG2" 172 | key 150 EXPLORER 173 | # key 151 "KEY_MSDOS" 174 | key 152 POWER 175 | # key 153 "KEY_DIRECTION" 176 | # key 154 "KEY_CYCLEWINDOWS" 177 | key 155 ENVELOPE 178 | key 156 BOOKMARK 179 | # key 157 "KEY_COMPUTER" 180 | key 158 BACK 181 | key 159 FORWARD 182 | key 160 MEDIA_CLOSE 183 | key 161 MEDIA_EJECT 184 | key 162 MEDIA_EJECT 185 | key 163 MEDIA_NEXT 186 | key 164 MEDIA_PLAY_PAUSE 187 | key 165 MEDIA_PREVIOUS 188 | key 166 MEDIA_STOP 189 | key 167 MEDIA_RECORD 190 | key 168 MEDIA_REWIND 191 | key 169 CALL 192 | # key 170 "KEY_ISO" 193 | key 171 MUSIC 194 | key 172 HOME 195 | # key 173 "KEY_REFRESH" 196 | # key 174 "KEY_EXIT" 197 | # key 175 "KEY_MOVE" 198 | # key 176 "KEY_EDIT" 199 | key 177 PAGE_UP 200 | key 178 PAGE_DOWN 201 | key 179 NUMPAD_LEFT_PAREN 202 | key 180 NUMPAD_RIGHT_PAREN 203 | # key 181 "KEY_NEW" 204 | # key 182 "KEY_REDO" 205 | # key 183 F13 206 | # key 184 F14 207 | # key 185 F15 208 | # key 186 F16 209 | # key 187 F17 210 | # key 188 F18 211 | # key 189 F19 212 | # key 190 F20 213 | # key 191 F21 214 | # key 192 F22 215 | # key 193 F23 216 | # key 194 F24 217 | # key 195 (undefined) 218 | # key 196 (undefined) 219 | # key 197 (undefined) 220 | # key 198 (undefined) 221 | # key 199 (undefined) 222 | key 200 MEDIA_PLAY 223 | key 201 MEDIA_PAUSE 224 | # key 202 "KEY_PROG3" 225 | # key 203 "KEY_PROG4" 226 | # key 204 (undefined) 227 | # key 205 "KEY_SUSPEND" 228 | # key 206 "KEY_CLOSE" 229 | key 207 MEDIA_PLAY 230 | key 208 MEDIA_FAST_FORWARD 231 | # key 209 "KEY_BASSBOOST" 232 | # key 210 "KEY_PRINT" 233 | # key 211 "KEY_HP" 234 | key 212 CAMERA 235 | key 213 MUSIC 236 | # key 214 "KEY_QUESTION" 237 | key 215 ENVELOPE 238 | # key 216 "KEY_CHAT" 239 | key 217 SEARCH 240 | # key 218 "KEY_CONNECT" 241 | # key 219 "KEY_FINANCE" 242 | # key 220 "KEY_SPORT" 243 | # key 221 "KEY_SHOP" 244 | # key 222 "KEY_ALTERASE" 245 | # key 223 "KEY_CANCEL" 246 | key 224 BRIGHTNESS_DOWN 247 | key 225 BRIGHTNESS_UP 248 | key 226 HEADSETHOOK 249 | 250 | key 256 BUTTON_1 251 | key 257 BUTTON_2 252 | key 258 BUTTON_3 253 | key 259 BUTTON_4 254 | key 260 BUTTON_5 255 | key 261 BUTTON_6 256 | key 262 BUTTON_7 257 | key 263 BUTTON_7 258 | key 264 BUTTON_9 259 | key 265 BUTTON_10 260 | key 266 BUTTON_11 261 | key 267 BUTTON_12 262 | key 268 BUTTON_13 263 | key 269 BUTTON_14 264 | key 270 BUTTON_15 265 | key 271 BUTTON_16 266 | 267 | key 288 BUTTON_1 268 | key 289 BUTTON_2 269 | key 290 BUTTON_3 270 | key 291 BUTTON_4 271 | key 292 BUTTON_5 272 | key 293 BUTTON_6 273 | key 294 BUTTON_7 274 | key 295 BUTTON_7 275 | key 296 BUTTON_9 276 | key 297 BUTTON_10 277 | key 298 BUTTON_11 278 | key 299 BUTTON_12 279 | key 300 BUTTON_13 280 | key 301 BUTTON_14 281 | key 302 BUTTON_15 282 | key 303 BUTTON_16 283 | 284 | 285 | key 304 BUTTON_A 286 | key 305 BUTTON_B 287 | key 306 BUTTON_C 288 | key 307 BUTTON_X 289 | key 308 BUTTON_Y 290 | key 309 BUTTON_Z 291 | key 310 BUTTON_L1 292 | key 311 BUTTON_R1 293 | key 312 BUTTON_L2 294 | key 313 BUTTON_R2 295 | key 314 BUTTON_SELECT 296 | key 315 BUTTON_START 297 | key 316 BUTTON_MODE 298 | key 317 BUTTON_THUMBL 299 | key 318 BUTTON_THUMBR 300 | 301 | 302 | # key 352 "KEY_OK" 303 | key 353 DPAD_CENTER WAKE 304 | # key 354 "KEY_GOTO" 305 | # key 355 "KEY_CLEAR" 306 | # key 356 "KEY_POWER2" 307 | # key 357 "KEY_OPTION" 308 | # key 358 "KEY_INFO" 309 | # key 359 "KEY_TIME" 310 | # key 360 "KEY_VENDOR" 311 | # key 361 "KEY_ARCHIVE" 312 | key 362 GUIDE 313 | # key 363 "KEY_CHANNEL" 314 | # key 364 "KEY_FAVORITES" 315 | # key 365 "KEY_EPG" 316 | key 366 DVR 317 | # key 367 "KEY_MHP" 318 | # key 368 "KEY_LANGUAGE" 319 | # key 369 "KEY_TITLE" 320 | # key 370 "KEY_SUBTITLE" 321 | # key 371 "KEY_ANGLE" 322 | # key 372 "KEY_ZOOM" 323 | # key 373 "KEY_MODE" 324 | # key 374 "KEY_KEYBOARD" 325 | # key 375 "KEY_SCREEN" 326 | # key 376 "KEY_PC" 327 | key 377 TV 328 | # key 378 "KEY_TV2" 329 | # key 379 "KEY_VCR" 330 | # key 380 "KEY_VCR2" 331 | # key 381 "KEY_SAT" 332 | # key 382 "KEY_SAT2" 333 | # key 383 "KEY_CD" 334 | # key 384 "KEY_TAPE" 335 | # key 385 "KEY_RADIO" 336 | # key 386 "KEY_TUNER" 337 | # key 387 "KEY_PLAYER" 338 | # key 388 "KEY_TEXT" 339 | # key 389 "KEY_DVD" 340 | # key 390 "KEY_AUX" 341 | # key 391 "KEY_MP3" 342 | # key 392 "KEY_AUDIO" 343 | # key 393 "KEY_VIDEO" 344 | # key 394 "KEY_DIRECTORY" 345 | # key 395 "KEY_LIST" 346 | # key 396 "KEY_MEMO" 347 | key 397 CALENDAR 348 | # key 398 "KEY_RED" 349 | # key 399 "KEY_GREEN" 350 | # key 400 "KEY_YELLOW" 351 | # key 401 "KEY_BLUE" 352 | key 402 CHANNEL_UP 353 | key 403 CHANNEL_DOWN 354 | # key 404 "KEY_FIRST" 355 | # key 405 "KEY_LAST" 356 | # key 406 "KEY_AB" 357 | # key 407 "KEY_NEXT" 358 | # key 408 "KEY_RESTART" 359 | # key 409 "KEY_SLOW" 360 | # key 410 "KEY_SHUFFLE" 361 | # key 411 "KEY_BREAK" 362 | # key 412 "KEY_PREVIOUS" 363 | # key 413 "KEY_DIGITS" 364 | # key 414 "KEY_TEEN" 365 | # key 415 "KEY_TWEN" 366 | 367 | key 429 CONTACTS 368 | 369 | # key 448 "KEY_DEL_EOL" 370 | # key 449 "KEY_DEL_EOS" 371 | # key 450 "KEY_INS_LINE" 372 | # key 451 "KEY_DEL_LINE" 373 | 374 | 375 | key 464 FUNCTION 376 | key 465 ESCAPE FUNCTION 377 | key 466 F1 FUNCTION 378 | key 467 F2 FUNCTION 379 | key 468 F3 FUNCTION 380 | key 469 F4 FUNCTION 381 | key 470 F5 FUNCTION 382 | key 471 F6 FUNCTION 383 | key 472 BUTTON_6 FUNCTION 384 | key 473 BUTTON_7 FUNCTION 385 | key 474 F9 FUNCTION 386 | key 475 BUTTON_3 FUNCTION 387 | key 476 BUTTON_4 FUNCTION 388 | key 477 BUTTON_8 FUNCTION 389 | key 478 1 FUNCTION 390 | key 479 2 FUNCTION 391 | key 480 D FUNCTION 392 | key 481 E FUNCTION 393 | key 482 F FUNCTION 394 | key 483 S FUNCTION 395 | key 484 B FUNCTION 396 | 397 | 398 | # key 497 KEY_BRL_DOT1 399 | # key 498 KEY_BRL_DOT2 400 | # key 499 KEY_BRL_DOT3 401 | # key 500 KEY_BRL_DOT4 402 | # key 501 KEY_BRL_DOT5 403 | # key 502 KEY_BRL_DOT6 404 | # key 503 KEY_BRL_DOT7 405 | # key 504 KEY_BRL_DOT8 406 | 407 | key 580 APP_SWITCH 408 | key 582 ASSIST WAKE 409 | 410 | # Keys defined by HID usages 411 | key usage 0x0c006F BRIGHTNESS_UP 412 | key usage 0x0c0070 BRIGHTNESS_DOWN 413 | 414 | # Joystick and game controller axes. 415 | # Axes that are not mapped will be assigned generic axis numbers by the input subsystem. 416 | axis 0x00 X 417 | axis 0x01 Y 418 | axis 0x02 Z 419 | axis 0x03 RX 420 | axis 0x04 RY 421 | axis 0x05 RZ 422 | axis 0x06 THROTTLE 423 | axis 0x07 RUDDER 424 | axis 0x08 WHEEL 425 | axis 0x09 GAS 426 | axis 0x0a BRAKE 427 | axis 0x10 HAT_X 428 | axis 0x11 HAT_Y 429 | 430 | # LEDs 431 | led 0x00 NUM_LOCK 432 | led 0x01 CAPS_LOCK 433 | led 0x02 SCROLL_LOCK 434 | led 0x03 COMPOSE 435 | led 0x04 KANA 436 | led 0x05 SLEEP 437 | led 0x06 SUSPEND 438 | led 0x07 MUTE 439 | led 0x08 MISC 440 | led 0x09 MAIL 441 | led 0x0a CHARGING 442 | -------------------------------------------------------------------------------- /keylayout/Vendor_0508_Product_0110.kl: -------------------------------------------------------------------------------- 1 | # bt remote map 2 | key 1 BACK 3 | key 2 1 4 | key 3 2 5 | key 4 3 6 | key 5 4 7 | key 6 5 8 | key 7 6 9 | key 8 7 10 | key 9 8 11 | key 10 9 12 | key 11 0 13 | key 217 ASSIST WAKE 14 | key 158 BACK 15 | key 353 DPAD_CENTER WAKE 16 | key 108 DPAD_DOWN 17 | key 103 DPAD_UP 18 | key 172 HOME 19 | key 105 DPAD_LEFT 20 | key 106 DPAD_RIGHT 21 | key 115 VOLUME_UP 22 | key 114 VOLUME_DOWN 23 | key 116 POWER 24 | key 139 MENU 25 | 26 | #key usage 0x0c00b3 MEDIA_FAST_FORWARD 27 | #key usage 0x0c00cd MEDIA_PLAY_PAUSE 28 | #key usage 0x0c00b4 MEDIA_REWIND 29 | 30 | -------------------------------------------------------------------------------- /keylayout/Vendor_0955_Product_7212.kl: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2016-2018, NVIDIA CORPORATION. All rights reserved. 2 | 3 | # NVIDIA Shield Remote (2015 edition) 4 | 5 | key 158 BACK 6 | key 172 HOME 7 | 8 | key 114 VOLUME_DOWN 9 | key 115 VOLUME_UP 10 | 11 | key 164 MEDIA_PLAY_PAUSE 12 | 13 | # Hat. 14 | # (D-pad is reported as individual buttons.) 15 | key 103 DPAD_UP 16 | key 105 DPAD_LEFT 17 | key 106 DPAD_RIGHT 18 | key 108 DPAD_DOWN 19 | key 353 DPAD_CENTER WAKE 20 | 21 | key 217 ASSIST WAKE 22 | 23 | # Double tap on volume slider 24 | key usage 0x000c00cd VOLUME_MUTE 25 | -------------------------------------------------------------------------------- /keylayout/Vendor_0955_Product_7213.kl: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2016-2018, NVIDIA CORPORATION. All rights reserved. 2 | 3 | # NVIDIA Shield Remote (2017 edition) 4 | 5 | key 158 BACK 6 | key 172 HOME 7 | 8 | key 114 VOLUME_DOWN 9 | key 115 VOLUME_UP 10 | 11 | key 713 BUTTON_14 12 | key 714 BUTTON_15 13 | 14 | key 164 MEDIA_PLAY_PAUSE 15 | 16 | # Hat. 17 | # (D-pad is reported as individual buttons.) 18 | key 103 DPAD_UP 19 | key 105 DPAD_LEFT 20 | key 106 DPAD_RIGHT 21 | key 108 DPAD_DOWN 22 | key 353 DPAD_CENTER WAKE 23 | 24 | key 217 ASSIST WAKE 25 | 26 | # Double tap on volume slider 27 | key usage 0x000c00cd VOLUME_MUTE 28 | -------------------------------------------------------------------------------- /keylayout/Vendor_0955_Product_7214.kl: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2016-2018, NVIDIA CORPORATION. All rights reserved. 2 | 3 | # NVIDIA Shield controller (rev. 2017) 4 | 5 | key 304 BUTTON_A 6 | key 305 BUTTON_B 7 | key 307 BUTTON_X 8 | key 308 BUTTON_Y 9 | 10 | key 310 BUTTON_L1 11 | key 311 BUTTON_R1 12 | 13 | key 158 BACK 14 | key 315 BUTTON_START 15 | key 172 HOME 16 | 17 | # These two keycodes are for click (press from above) on analog control sticks. 18 | key 317 BUTTON_THUMBL 19 | key 318 BUTTON_THUMBR 20 | 21 | key 115 VOLUME_UP 22 | key 114 VOLUME_DOWN 23 | 24 | key 164 MEDIA_PLAY_PAUSE 25 | 26 | # Vendor-specific codes 27 | key 217 BUTTON_16 28 | 29 | # Vendor-specific codes 30 | key 715 BUTTON_13 31 | key 716 BUTTON_14 32 | key 717 BUTTON_15 33 | 34 | # NVIDIA gamepad generates 16-bit values for the 6 axes (?) 35 | # Flat value of 2 is expected because this gamepad's axes 36 | # get correctly clipped before they reach the frameworks/base code. 37 | 38 | # Left (0x00, 0x01) and right (0x02, 0x05) analog control stick. 39 | axis 0x00 X flat 2 40 | axis 0x01 Y flat 2 41 | axis 0x02 Z flat 2 42 | axis 0x05 RZ flat 2 43 | 44 | # Triggers (0x0a, 0x09). 45 | axis 0x0a LTRIGGER flat 2 46 | axis 0x09 RTRIGGER flat 2 47 | 48 | # Hat. 49 | # (D-pad is reported as analog. Each axis has range from -1 to 1.) 50 | axis 0x10 HAT_X 51 | axis 0x11 HAT_Y 52 | 53 | # Double tap on volume slider 54 | key usage 0x000c00cd VOLUME_MUTE 55 | -------------------------------------------------------------------------------- /keylayout/Vendor_0955_Product_7217.kl: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2019, NVIDIA CORPORATION. All rights reserved. 2 | 3 | # NVIDIA Shield Remote (2019 edition) 4 | 5 | key 116 POWER 6 | # The menu button is mapped to settings by default 7 | key 139 SETTINGS 8 | 9 | # (D-pad is reported as individual buttons.) 10 | key 103 DPAD_UP 11 | key 105 DPAD_LEFT 12 | key 106 DPAD_RIGHT 13 | key 108 DPAD_DOWN 14 | key 353 DPAD_CENTER WAKE 15 | 16 | key 158 BACK 17 | key 172 HOME 18 | 19 | key 217 ASSIST WAKE 20 | 21 | key 114 VOLUME_DOWN 22 | key 115 VOLUME_UP 23 | 24 | key 208 MEDIA_FAST_FORWARD 25 | key 164 MEDIA_PLAY_PAUSE 26 | key 168 MEDIA_REWIND 27 | 28 | # The netflix button is mapped to button_12 29 | key 393 BUTTON_4 WAKE 30 | -------------------------------------------------------------------------------- /keylayout/Vendor_0957_Product_0004.kl: -------------------------------------------------------------------------------- 1 | # 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 | # Key Layout file for B016 Remote. 17 | # 18 | 19 | key 116 POWER 20 | key 240 TV_INPUT 21 | 22 | key 156 BOOKMARK 23 | key 217 ASSIST WAKE 24 | key 384 SETTINGS 25 | 26 | key 103 DPAD_UP 27 | key 108 DPAD_DOWN 28 | key 105 DPAD_LEFT 29 | key 106 DPAD_RIGHT 30 | key 353 DPAD_CENTER WAKE 31 | 32 | key 158 BACK 33 | key 172 HOME 34 | key 362 GUIDE 35 | 36 | key 113 VOLUME_MUTE 37 | key 114 VOLUME_DOWN 38 | key 115 VOLUME_UP 39 | 40 | key 402 CHANNEL_UP 41 | key 403 CHANNEL_DOWN 42 | 43 | key usage 0x000c0077 BUTTON_3 WAKE #YouTube 44 | key usage 0x000c0078 BUTTON_4 WAKE #Netflix 45 | key usage 0x000c0079 BUTTON_6 WAKE #Disney+ 46 | key usage 0x000c007a BUTTON_7 WAKE #HBOmax 47 | -------------------------------------------------------------------------------- /keylayout/Vendor_0957_Product_0005.kl: -------------------------------------------------------------------------------- 1 | # 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 | # Key Layout file for B016 Remote. 17 | # 18 | 19 | key 116 POWER 20 | key 217 ASSIST WAKE 21 | 22 | key 103 DPAD_UP 23 | key 108 DPAD_DOWN 24 | key 105 DPAD_LEFT 25 | key 106 DPAD_RIGHT 26 | key 353 DPAD_CENTER WAKE 27 | 28 | key 158 BACK 29 | key 172 HOME 30 | 31 | key 113 VOLUME_MUTE 32 | key 114 VOLUME_DOWN 33 | key 115 VOLUME_UP 34 | 35 | key 30 1 36 | key 31 2 37 | key 32 3 38 | key 33 4 39 | key 34 5 40 | key 35 6 41 | key 36 7 42 | key 37 8 43 | key 38 9 44 | key 39 0 45 | 46 | key usage 0x000c01BB TV_INPUT 47 | key usage 0x000c022A BOOKMARK 48 | key usage 0x000c0096 SETTINGS 49 | key usage 0x000c0097 NOTIFICATION 50 | key usage 0x000c008D GUIDE 51 | key usage 0x000c0089 TV 52 | key usage 0x000c009C CHANNEL_UP 53 | key usage 0x000c009D CHANNEL_DOWN 54 | key usage 0x000c00CD MEDIA_PLAY_PAUSE 55 | key usage 0x000c00B4 MEDIA_SKIP_BACKWARD 56 | key usage 0x000c00B3 MEDIA_SKIP_FORWARD 57 | key usage 0x000c0226 MEDIA_STOP 58 | 59 | key usage 0x000c0077 BUTTON_3 WAKE #YouTube 60 | key usage 0x000c0078 BUTTON_4 WAKE #Netflix 61 | key usage 0x000c0079 BUTTON_6 WAKE #Disney+ 62 | key usage 0x000c007A BUTTON_7 WAKE #HBOmax 63 | 64 | key usage 0x000c01BD INFO 65 | key usage 0x000c0061 CAPTIONS 66 | key usage 0x000c0185 TV_TELETEXT 67 | key usage 0x000c0069 PROG_RED 68 | key usage 0x000c006A PROG_GREEN 69 | key usage 0x000c006B PROG_BLUE 70 | key usage 0x000c006C PROG_YELLOW 71 | 72 | key usage 0x0c0008 BUTTON_4 WAKE #NETFLIX 73 | key usage 0x0c0007 BUTTON_3 WAKE #YOUTUBE 74 | key usage 0x0c0009 BUTTON_7 WAKE #GOOGLE PLAY 75 | key usage 0x0c01A2 F9 WAKE #ALL APPS 76 | -------------------------------------------------------------------------------- /keylayout/Vendor_0957_Product_0006.kl: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2010 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 | # Generic key layout file for full alphabetic US English PC style external keyboards. 17 | # 18 | # This file is intentionally very generic and is intended to support a broad rang of keyboards. 19 | # Do not edit the generic key layout to support a specific keyboard; instead, create 20 | # a new key layout file with the required keyboard configuration. 21 | # 22 | 23 | key 116 POWER 24 | key usage 0x0c01bb TV_INPUT 25 | key 156 BOOKMARK 26 | key 217 ASSIST WAKE 27 | key 384 SETTINGS 28 | key 103 DPAD_UP 29 | key 105 DPAD_LEFT 30 | key 353 DPAD_CENTER WAKE 31 | key 106 DPAD_RIGHT 32 | key 108 DPAD_DOWN 33 | key 158 BACK 34 | key 172 HOME 35 | key 362 GUIDE 36 | key 114 VOLUME_DOWN 37 | key 115 VOLUME_UP 38 | key 113 VOLUME_MUTE 39 | key 402 CHANNEL_UP 40 | key 403 CHANNEL_DOWN 41 | key usage 0x0c0077 NES_SHORTCUT_04 42 | key usage 0x0c0078 NES_SHORTCUT_03 43 | key usage 0x0c0079 NES_SHORTCUT_02 44 | key usage 0x0c007a NES_SHORTCUT_08 45 | -------------------------------------------------------------------------------- /keylayout/Vendor_0c45_Product_1109.kl: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2010 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 | # Generic key layout file for full alphabetic US English PC style external keyboards. 17 | # 18 | # This file is intentionally very generic and is intended to support a broad rang of keyboards. 19 | # Do not edit the generic key layout to support a specific keyboard; instead, create 20 | # a new key layout file with the required keyboard configuration. 21 | # 22 | 23 | key 1 BACK 24 | key 28 DPAD_CENTER WAKE 25 | key 102 HOME 26 | 27 | key 103 DPAD_UP 28 | key 105 DPAD_LEFT 29 | key 106 DPAD_RIGHT 30 | key 108 DPAD_DOWN 31 | 32 | key 113 VOLUME_MUTE 33 | key 114 VOLUME_DOWN 34 | key 115 VOLUME_UP 35 | 36 | key 142 POWER 37 | -------------------------------------------------------------------------------- /keylayout/Vendor_18d1_Product_9400.kl: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2021, NVIDIA CORPORATION. All rights reserved. 2 | # 3 | # NVIDIA Corporation and its licensors retain all intellectual property and 4 | # proprietary rights in and to this software and related documentation. Any 5 | # use, reproduction, disclosure or distribution of this software and related 6 | # documentation without an express license agreement from NVIDIA Corporation 7 | # is strictly prohibited. 8 | 9 | # 10 | # Google Stadia Controller - USB 11 | # 12 | # Reports itself as vid:pid 18d1:9400 13 | # Official website - https://support.google.com/stadia/answer/9565956?hl=en&ref_topic=9495415 14 | # 15 | 16 | # Adapted for Nvidia normalized layout 17 | 18 | key 304 BUTTON_A 19 | key 305 BUTTON_B 20 | key 307 BUTTON_X 21 | key 308 BUTTON_Y 22 | 23 | key 310 BUTTON_L1 24 | key 311 BUTTON_R1 25 | 26 | # Three dots 27 | key 314 BUTTON_SELECT 28 | # Hamburger - 3 parallel lines 29 | key 315 BUTTON_START 30 | # Stadia logo key 31 | key 316 BUTTON_MODE 32 | 33 | key 317 BUTTON_THUMBL 34 | key 318 BUTTON_THUMBR 35 | 36 | # Left and right sticks (min=-1.000, max=1.000, flat=0.118) 37 | # no flat value mentioned explicitly for now, since some controllers handle it internally 38 | # if drift is observed in games we can adjust the flat value 39 | axis 0x00 X 40 | axis 0x01 Y 41 | axis 0x02 Z 42 | axis 0x05 RZ 43 | 44 | # Triggers (0x0a, 0x09) (min=0.000, max=1.000, flat=0.059) 45 | # no flat value mentioned explicitly for now, since some controllers handle it internally 46 | # if drift is observed in games we can adjust the flat value 47 | axis 0x0a LTRIGGER 48 | axis 0x09 RTRIGGER 49 | 50 | # Hat / D-pad (min=-1.000, max=1.000, flat=0.000) 51 | axis 0x10 HAT_X 52 | axis 0x11 HAT_Y 53 | 54 | # Google Assistant 55 | key 704 ASSIST 56 | 57 | # Capture - Looks like a square (unmapped for now) 58 | # key 705 59 | -------------------------------------------------------------------------------- /keylayout/Vendor_18d1_Product_9450.kl: -------------------------------------------------------------------------------- 1 | # 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 | # Key Layout file for Abbey Remote. 17 | # 18 | 19 | key 103 DPAD_UP 20 | key 108 DPAD_DOWN 21 | key 105 DPAD_LEFT 22 | key 106 DPAD_RIGHT 23 | key 353 DPAD_CENTER WAKE 24 | 25 | key 158 BACK 26 | key 172 HOME 27 | 28 | key 152 POWER 29 | key 164 MEDIA_PLAY_PAUSE 30 | key 217 ASSIST WAKE 31 | 32 | key 113 VOLUME_MUTE 33 | key 114 VOLUME_DOWN 34 | key 115 VOLUME_UP 35 | 36 | # custom buttons 37 | key usage 0x000c0077 BUTTON_3 WAKE # Youtube 38 | key usage 0x000c0078 BUTTON_4 WAKE # Netflix 39 | key usage 0x000c0079 BUTTON_2 WAKE # Magic button 40 | key usage 0x000c0089 TV_INPUT WAKE 41 | -------------------------------------------------------------------------------- /keylayout/Vendor_1915_Product_0001.kl: -------------------------------------------------------------------------------- 1 | # bt remote map 2 | key 1 BACK 3 | key 2 1 4 | key 3 2 5 | key 4 3 6 | key 5 4 7 | key 6 5 8 | key 7 6 9 | key 8 7 10 | key 9 8 11 | key 10 9 12 | key 11 0 13 | key 217 ASSIST WAKE 14 | key 158 BACK 15 | key 353 DPAD_CENTER WAKE 16 | key 108 DPAD_DOWN 17 | key 103 DPAD_UP 18 | key 172 HOME 19 | key 105 DPAD_LEFT 20 | key 106 DPAD_RIGHT 21 | key 115 VOLUME_UP 22 | key 114 VOLUME_DOWN 23 | key 116 POWER 24 | 25 | key usage 0x0c00b3 MEDIA_FAST_FORWARD 26 | key usage 0x0c00cd MEDIA_PLAY_PAUSE 27 | key usage 0x0c00b4 MEDIA_REWIND 28 | 29 | -------------------------------------------------------------------------------- /keylayout/Vendor_1d5a_Product_c081.kl: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2010 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 | # Generic key layout file for full alphabetic US English PC style external keyboards. 17 | # 18 | # This file is intentionally very generic and is intended to support a broad rang of keyboards. 19 | # Do not edit the generic key layout to support a specific keyboard; instead, create 20 | # a new key layout file with the required keyboard configuration. 21 | # 22 | 23 | key 116 POWER 24 | key 103 DPAD_UP 25 | key 108 DPAD_DOWN 26 | key 105 DPAD_LEFT 27 | key 106 DPAD_RIGHT 28 | key 28 DPAD_CENTER WAKE 29 | key 1 BACK 30 | key 60 HOME 31 | key 102 MENU 32 | key 115 VOLUME_UP 33 | key 63 ASSIST WAKE 34 | key 114 VOLUME_DOWN 35 | 36 | 37 | 38 | 39 | key 353 DPAD_CENTER WAKE 40 | key 158 BACK 41 | key 172 HOME 42 | key 127 MENU 43 | key 217 ASSIST WAKE 44 | 45 | key 190 BUTTON_8 WAKE 46 | key 580 BUTTON_8 WAKE 47 | -------------------------------------------------------------------------------- /keylayout/Vendor_1d5a_Product_c082.kl: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2010 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 | # Generic key layout file for full alphabetic US English PC style external keyboards. 17 | # 18 | # This file is intentionally very generic and is intended to support a broad rang of keyboards. 19 | # Do not edit the generic key layout to support a specific keyboard; instead, create 20 | # a new key layout file with the required keyboard configuration. 21 | # 22 | 23 | key 116 POWER 24 | key 240 ALL_APPS 25 | key 580 ALL_APPS 26 | key 103 DPAD_UP 27 | key 108 DPAD_DOWN 28 | key 105 DPAD_LEFT 29 | key 106 DPAD_RIGHT 30 | key 353 DPAD_CENTER WAKE 31 | key 158 BACK 32 | key 217 ASSIST WAKE 33 | key 172 HOME 34 | key 115 VOLUME_UP 35 | key 114 VOLUME_DOWN 36 | key 194 F5 37 | key 193 F1 38 | key 134 F3 39 | key 138 F4 40 | -------------------------------------------------------------------------------- /keylayout/Vendor_248a_Product_8266.kl: -------------------------------------------------------------------------------- 1 | # 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 | # Key Layout file for B016 Remote. 17 | # 18 | key 116 POWER 19 | key 240 TV_INPUT 20 | 21 | key 156 BOOKMARK 22 | key 217 ASSIST WAKE 23 | key 384 SETTINGS 24 | 25 | key 103 DPAD_UP 26 | key 108 DPAD_DOWN 27 | key 105 DPAD_LEFT 28 | key 106 DPAD_RIGHT 29 | key 353 DPAD_CENTER WAKE 30 | 31 | key 158 BACK 32 | key 172 HOME 33 | key 362 GUIDE 34 | 35 | key 113 VOLUME_MUTE 36 | key 114 VOLUME_DOWN 37 | key 115 VOLUME_UP 38 | 39 | key 402 CHANNEL_UP 40 | key 403 CHANNEL_DOWN 41 | 42 | key usage 0x000c0077 BUTTON_3 WAKE #YouTube 43 | key usage 0x000c0078 BUTTON_4 WAKE #Netflix 44 | key usage 0x000c0079 BUTTON_6 WAKE #Disney+ 45 | key usage 0x000c007a BUTTON_7 WAKE #HBOmax 46 | -------------------------------------------------------------------------------- /keylayout/Vendor_7045_Product_1820.kl: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2010 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 | # Generic key layout file for full alphabetic US English PC style external keyboards. 17 | # 18 | # This file is intentionally very generic and is intended to support a broad rang of keyboards. 19 | # Do not edit the generic key layout to support a specific keyboard; instead, create 20 | # a new key layout file with the required keyboard configuration. 21 | # 22 | 23 | key 1 BACK 24 | key 28 DPAD_CENTER WAKE 25 | key 103 DPAD_UP 26 | key 105 DPAD_LEFT 27 | key 106 DPAD_RIGHT 28 | key 108 DPAD_DOWN 29 | key 139 MENU 30 | key 172 HOME 31 | key 194 ASSIST WAKE 32 | key 114 VOLUME_DOWN 33 | key 115 VOLUME_UP 34 | key 116 POWER 35 | -------------------------------------------------------------------------------- /keylayout/Vendor_7545_Product_0021.kl: -------------------------------------------------------------------------------- 1 | # 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 | # Key Layout file for B06 Remote. 17 | # 18 | 19 | key 116 POWER 20 | key 217 ASSIST WAKE 21 | 22 | key 103 DPAD_UP 23 | key 108 DPAD_DOWN 24 | key 105 DPAD_LEFT 25 | key 106 DPAD_RIGHT 26 | key 353 DPAD_CENTER WAKE 27 | 28 | key 158 BACK 29 | key 172 HOME 30 | key 130 ALL_APPS 31 | 32 | key 113 VOLUME_MUTE 33 | key 114 VOLUME_DOWN 34 | key 115 VOLUME_UP 35 | 36 | key usage 0x000c0078 BUTTON_2 WAKE 37 | key usage 0x000c0077 BUTTON_3 WAKE 38 | key usage 0x000c0079 BUTTON_4 WAKE 39 | -------------------------------------------------------------------------------- /keylayout/Vendor_7545_Product_0180.kl: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2010 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 | # Generic key layout file for full alphabetic US English PC style external keyboards. 17 | # 18 | # This file is intentionally very generic and is intended to support a broad rang of keyboards. 19 | # Do not edit the generic key layout to support a specific keyboard; instead, create 20 | # a new key layout file with the required keyboard configuration. 21 | # 22 | 23 | key 116 POWER 24 | key 113 VOLUME_MUTE 25 | key 362 GUIDE 26 | key 167 MEDIA_RECORD 27 | key 168 MEDIA_REWIND 28 | key 164 MEDIA_PLAY_PAUSE 29 | key 208 MEDIA_FAST_FORWARD 30 | key 115 VOLUME_UP 31 | key 402 CHANNEL_UP 32 | key 103 DPAD_UP 33 | key 108 DPAD_DOWN 34 | key 105 DPAD_LEFT 35 | key 106 DPAD_RIGHT 36 | key 353 DPAD_CENTER WAKE 37 | key 114 VOLUME_DOWN 38 | key 403 CHANNEL_DOWN 39 | key 158 BACK 40 | key 217 ASSIST WAKE 41 | key 172 HOME 42 | 43 | #youtube 44 | key usage 0x0c000d BUTTON_3 WAKE 45 | #netflix key 46 | key usage 0x0c000e BUTTON_4 WAKE 47 | 48 | #num 49 | key usage 0x0c0037 1 50 | key usage 0x0c0038 2 51 | key usage 0x0c0039 3 52 | key usage 0x0c003a 4 53 | key usage 0x0c003b 5 54 | key usage 0x0c003c 6 55 | key usage 0x0c003d 7 56 | key usage 0x0c003e 8 57 | key usage 0x0c003f 9 58 | key usage 0x0c0007 SETTINGS 59 | key usage 0x0c000f 0 60 | key usage 0x0c0008 MENU 61 | key usage 0x0c0009 PROG_RED 62 | key usage 0x0c000a PROG_GREEN 63 | key usage 0x0c000b PROG_YELLOW 64 | key usage 0x0c000c PROG_BLUE 65 | 66 | 67 | -------------------------------------------------------------------------------- /keylayout/Vendor_7545_Product_0190.kl: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2010 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 | # Generic key layout file for full alphabetic US English PC style external keyboards. 17 | # 18 | # This file is intentionally very generic and is intended to support a broad rang of keyboards. 19 | # Do not edit the generic key layout to support a specific keyboard; instead, create 20 | # a new key layout file with the required keyboard configuration. 21 | # 22 | 23 | key 116 POWER 24 | key 113 MEDIA_STOP 25 | key 362 MEDIA_PLAY_PAUSE 26 | key 167 F6 27 | key 168 VOLUME_UP 28 | key 164 INFO 29 | key 208 CHANNEL_UP 30 | key 115 VOLUME_DOWN 31 | key 103 DPAD_UP 32 | key 402 CHANNEL_DOWN 33 | key 105 DPAD_LEFT 34 | key 353 DPAD_CENTER WAKE 35 | key 106 DPAD_RIGHT 36 | key 114 MENU 37 | key 108 DPAD_DOWN 38 | key 403 GUIDE 39 | key 158 BACK 40 | key 217 ASSIST WAKE 41 | key 172 HOME 42 | 43 | #youtube 44 | key usage 0x0c000d BUTTON_3 WAKE 45 | #watcgo 46 | key usage 0x0c000e BUTTON_3 WAKE 47 | 48 | #num 49 | key usage 0x0c0037 1 50 | key usage 0x0c0038 2 51 | key usage 0x0c0039 3 52 | key usage 0x0c003a 4 53 | key usage 0x0c003b 5 54 | key usage 0x0c003c 6 55 | key usage 0x0c003d 7 56 | key usage 0x0c003e 8 57 | key usage 0x0c003f 9 58 | key usage 0x0c0007 MEDIA_RECORD 59 | key usage 0x0c000f 0 60 | key usage 0x0c0008 TV_INPUT_HDMI_3 61 | key usage 0x0c0009 PROG_RED 62 | key usage 0x0c000a PROG_GREEN 63 | key usage 0x0c000b PROG_YELLOW 64 | key usage 0x0c000c PROG_BLUE 65 | 66 | 67 | -------------------------------------------------------------------------------- /lineage_atv.mk: -------------------------------------------------------------------------------- 1 | # 2 | # SPDX-FileCopyrightText: 2019-2024 The LineageOS Project 3 | # SPDX-License-Identifier: Apache-2.0 4 | # 5 | 6 | # System properties 7 | include $(LOCAL_PATH)/system_prop.mk 8 | 9 | # Overlays 10 | PRODUCT_PACKAGE_OVERLAYS += \ 11 | device/lineage/atv/overlay 12 | 13 | # Init files 14 | PRODUCT_PACKAGES += \ 15 | init.lineage.atv.rc 16 | 17 | ifneq ($(TARGET_ATV_FORCE_1080_SCALING),false) 18 | PRODUCT_PACKAGES += \ 19 | init.lineage.atv.scaling.rc 20 | endif 21 | 22 | # Dynalink 4k 23 | PRODUCT_PACKAGES += \ 24 | Vendor_0110_Product_0508.idc \ 25 | Vendor_0110_Product_0508.kl 26 | 27 | # Onn remote 28 | PRODUCT_PACKAGES += \ 29 | Vendor_0957_Product_0005.idc \ 30 | Vendor_0957_Product_0005.kl 31 | 32 | # Sabrina remote 33 | PRODUCT_PACKAGES += \ 34 | Vendor_18d1_Product_9450.idc \ 35 | Vendor_18d1_Product_9450.kl 36 | 37 | # Stadia controller 38 | PRODUCT_PACKAGES += \ 39 | Vendor_18d1_Product_9400.kl 40 | 41 | # IDCs for shield controllers 42 | PRODUCT_PACKAGES += \ 43 | Vendor_0955_Product_7212.idc \ 44 | Vendor_0955_Product_7213.idc \ 45 | Vendor_0955_Product_7214.idc \ 46 | Vendor_0955_Product_7217.idc 47 | 48 | # Key layouts for shield controllers 49 | PRODUCT_PACKAGES += \ 50 | Vendor_0955_Product_7212.kl \ 51 | Vendor_0955_Product_7213.kl \ 52 | Vendor_0955_Product_7214.kl \ 53 | Vendor_0955_Product_7217.kl 54 | 55 | # Steam Controller Wireless Adapter and BLE 56 | PRODUCT_COPY_FILES += \ 57 | frameworks/base/data/keyboards/Vendor_28de_Product_1102.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/Vendor_28de_Product_1106.kl \ 58 | frameworks/base/data/keyboards/Vendor_28de_Product_1102.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/Vendor_28de_Product_1142.kl 59 | 60 | # Key layouts for xbox controllers 61 | PRODUCT_PACKAGES += \ 62 | Vendor_045e_Product_0b05.kl \ 63 | Vendor_045e_Product_0b13.kl 64 | 65 | # ADT-2/3 reference remote idcs 66 | PRODUCT_PACKAGES += \ 67 | Vendor_000d_Product_3838.idc \ 68 | Vendor_000d_Product_3839.idc \ 69 | Vendor_7545_Product_0021.idc 70 | 71 | # ADT-2/3 reference remote keylayouts 72 | PRODUCT_PACKAGES += \ 73 | Vendor_000d_Product_3838.kl \ 74 | Vendor_000d_Product_3839.kl \ 75 | Vendor_7545_Product_0021.kl 76 | 77 | # Assorted remote keylayouts from ADT-3 build 78 | PRODUCT_PACKAGES += \ 79 | Vendor_0002_Product_0002.kl \ 80 | Vendor_005d_Product_0001.kl \ 81 | Vendor_005d_Product_0002.kl \ 82 | Vendor_0484_Product_5738.kl \ 83 | Vendor_0508_Product_0110.kl \ 84 | Vendor_0957_Product_0006.kl \ 85 | Vendor_0c45_Product_1109.kl \ 86 | Vendor_1915_Product_0001.kl \ 87 | Vendor_7045_Product_1820.kl \ 88 | Vendor_7545_Product_0180.kl \ 89 | Vendor_7545_Product_0190.kl 90 | 91 | # Assorted idc's from ONN 2021 build 92 | PRODUCT_PACKAGES += \ 93 | Vendor_0508_Product_0110.idc \ 94 | Vendor_0957_Product_0004.idc \ 95 | Vendor_1d5a_Product_c082.idc \ 96 | Vendor_248a_Product_8266.idc \ 97 | Vendor_7545_Product_0180.idc 98 | 99 | # Assorted remote keylayouts from ONN 2021 build 100 | PRODUCT_PACKAGES += \ 101 | Vendor_0957_Product_0004.kl \ 102 | Vendor_1d5a_Product_c081.kl \ 103 | Vendor_1d5a_Product_c082.kl \ 104 | Vendor_248a_Product_8266.kl 105 | 106 | # GMS RROs 107 | PRODUCT_PACKAGES += \ 108 | LineageGoogleSetupWraithOverlay \ 109 | LineageGoogleSetupWraithPairingOverlay 110 | 111 | # Settings 112 | PRODUCT_PACKAGES += \ 113 | TvSettingsTwoPanel 114 | 115 | # priv-app permissions 116 | PRODUCT_COPY_FILES +=\ 117 | device/lineage/atv/permissions/privapp-permissions-lineage-atv.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/privapp-permissions-lineage-atv.xml 118 | 119 | # Soong namespaces 120 | PRODUCT_SOONG_NAMESPACES += \ 121 | $(LOCAL_PATH) 122 | -------------------------------------------------------------------------------- /overlay/frameworks/base/core/res/res/values/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 2 9 | 10 | 13 | com.android.systemui/com.android.systemui.tv.usb.TvUsbDebuggingActivity 15 | 16 | -------------------------------------------------------------------------------- /overlay/lineage-sdk/lineage/res/res/values/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | /system_ext/priv-app/LineageParts/LineageParts.apk 10 | /system_ext/priv-app/LineageParts/LineageParts.apk 11 | 12 | 13 | 14 | org.lineageos.lineageparts.gestures.KeyHandler 15 | org.lineageos.lineageparts.atv.KeyHandler 16 | 17 | 18 | -------------------------------------------------------------------------------- /permissions/privapp-permissions-lineage-atv.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /rro/LineageGoogleSetupWraithOverlay/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // SPDX-FileCopyrightText: 2024 The LineageOS Project 3 | // SPDX-License-Identifier: Apache-2.0 4 | // 5 | 6 | runtime_resource_overlay { 7 | name: "LineageGoogleSetupWraithOverlay", 8 | theme: "LineageGoogleSetupWraithOverlay", 9 | sdk_version: "current", 10 | product_specific: true 11 | } 12 | -------------------------------------------------------------------------------- /rro/LineageGoogleSetupWraithOverlay/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 10 | 11 | 15 | 16 | -------------------------------------------------------------------------------- /rro/LineageGoogleSetupWraithOverlay/res/values/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | true 8 | true 9 | 10 | -------------------------------------------------------------------------------- /rro/LineageGoogleSetupWraithPairingOverlay/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // SPDX-FileCopyrightText: 2024 The LineageOS Project 3 | // SPDX-License-Identifier: Apache-2.0 4 | // 5 | 6 | runtime_resource_overlay { 7 | name: "LineageGoogleSetupWraithPairingOverlay", 8 | theme: "LineageGoogleSetupWraithPairingOverlay", 9 | sdk_version: "current", 10 | product_specific: true 11 | } 12 | -------------------------------------------------------------------------------- /rro/LineageGoogleSetupWraithPairingOverlay/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 10 | 11 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /rro/LineageGoogleSetupWraithPairingOverlay/res/values/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | true 8 | 9 | -------------------------------------------------------------------------------- /system_prop.mk: -------------------------------------------------------------------------------- 1 | # 2 | # SPDX-FileCopyrightText: 2020-2024 The LineageOS Project 3 | # SPDX-License-Identifier: Apache-2.0 4 | # 5 | 6 | # ABI Checks 7 | PRODUCT_PROPERTY_OVERRIDES += \ 8 | debug.wm.disable_deprecated_abi_dialog=true 9 | 10 | # Logging 11 | ifneq ($(TARGET_BUILD_VARIANT),eng) 12 | PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ 13 | log.tag.cast_ClientAuthCredsWidevine=S \ 14 | log.tag.cast_shell=S \ 15 | log.tag.cast_VolumeControlAndroid=S \ 16 | log.tag.katniss_interactor_CastIdFetcher=S \ 17 | log.tag.katniss_interactor_CastServiceInfoImpl=S \ 18 | log.tag.katniss_interactor_LoadCastServiceInfoTaskImpl=S \ 19 | log.tag.katniss_search_LoadCastServiceInfoTaskImpl=S 20 | endif 21 | 22 | # Media volume 23 | PRODUCT_PROPERTY_OVERRIDES += \ 24 | ro.config.media_vol_default=20 \ 25 | ro.config.media_vol_steps=25 26 | --------------------------------------------------------------------------------