mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
v4l-utils: create separate keymaps instead of patching rc6_mce
All locally added remote keycodes are now in separate files, one per remote, instead of adding them to rc6_mce. A new keymap, libreelec_multi, with all keycodes of the previous rc6_mce map is added in install and used by default when the remote is configured to use the rc-rc6-mce table. The default behaviour is unchanged, LE can still be controlled with MCE, xbox, ... remotes out of the box but it's now possible to configure the ir receiver to react only on the codes sent by a specific remote. This solves the issue where a xbox remote always controlled LE even when a user only wanted to control it with a MCE remote. To do this simply create a /storage/.config/rc_maps.cfg file with the following content: * rc-rc6-mce rc6_mce Signed-off-by: Matthias Reichl <hias@horus.com>
This commit is contained in:
parent
7948131c88
commit
40c68b1236
@ -45,4 +45,12 @@ post_makeinstall_target() {
|
||||
|
||||
mkdir -p $INSTALL/usr/config
|
||||
cp -PR $PKG_DIR/config/* $INSTALL/usr/config
|
||||
|
||||
(
|
||||
echo "# table libreelec_multi, type: RC6 NEC"
|
||||
for f in rc6_mce xbox_360 zotac_ad10 hp_mce xbox_one cubox_i ; do
|
||||
echo "# $f"
|
||||
grep -v "^#" $INSTALL/usr/lib/udev/rc_keymaps/$f
|
||||
done
|
||||
) > $INSTALL/usr/lib/udev/rc_keymaps/libreelec_multi
|
||||
}
|
||||
|
@ -1,13 +1,10 @@
|
||||
diff --git a/utils/keytable/rc_keymaps/rc6_mce b/utils/keytable/rc_keymaps/rc6_mce
|
||||
index d469845..c833a0c 100644
|
||||
--- a/utils/keytable/rc_keymaps/rc6_mce
|
||||
+++ b/utils/keytable/rc_keymaps/rc6_mce
|
||||
@@ -173,3 +173,69 @@
|
||||
0x8034046e KEY_GREEN
|
||||
0x8034046f KEY_YELLOW
|
||||
0x80340470 KEY_BLUE
|
||||
+
|
||||
+#HP MCE Remote
|
||||
diff --git a/utils/keytable/rc_keymaps/hp_mce b/utils/keytable/rc_keymaps/hp_mce
|
||||
new file mode 100644
|
||||
index 0000000..266dc8a
|
||||
--- /dev/null
|
||||
+++ b/utils/keytable/rc_keymaps/hp_mce
|
||||
@@ -0,0 +1,65 @@
|
||||
+# table hp_mce, type: RC6
|
||||
+0x80111200 KEY_NUMERIC_0
|
||||
+0x80111201 KEY_NUMERIC_1
|
||||
+0x80111202 KEY_NUMERIC_2
|
||||
|
@ -1,36 +0,0 @@
|
||||
diff -Naur v4l-utils-0.8.9/utils/keytable/rc_keymaps/rc6_mce v4l-utils-0.8.9.patch/utils/keytable/rc_keymaps/rc6_mce
|
||||
--- v4l-utils-0.8.9/utils/keytable/rc_keymaps/rc6_mce 2014-05-20 14:31:04.585559227 +0200
|
||||
+++ v4l-utils-0.8.9.patch/utils/keytable/rc_keymaps/rc6_mce 2014-05-20 17:47:04.341378915 +0200
|
||||
@@ -1,4 +1,4 @@
|
||||
-# table rc6_mce, type: RC6
|
||||
+# table rc6_mce, type: RC6 NEC
|
||||
0x800f0400 KEY_NUMERIC_0
|
||||
0x800f0401 KEY_NUMERIC_1
|
||||
0x800f0402 KEY_NUMERIC_2
|
||||
@@ -239,3 +239,26 @@
|
||||
0x8011129f KEY_LASTSOURCE
|
||||
0x8011128b KEY_SOURCE
|
||||
0x801112a3 KEY_SCREEN
|
||||
+
|
||||
+#XBOX One Remote (Protocol: NEC)
|
||||
+0x80d864 KEY_MEDIA
|
||||
+0x80d820 KEY_LEFT
|
||||
+0x80d821 KEY_RIGHT
|
||||
+0x80d81e KEY_UP
|
||||
+0x80d81f KEY_DOWN
|
||||
+0x80d822 KEY_OK
|
||||
+0x80d823 KEY_EXIT
|
||||
+0x80d80e KEY_MUTE
|
||||
+0x80d810 KEY_VOLUMEUP
|
||||
+0x80d811 KEY_VOLUMEDOWN
|
||||
+0x80d812 KEY_CHANNELUP
|
||||
+0x80d813 KEY_CHANNELDOWN
|
||||
+0x80d814 KEY_FASTFORWARD
|
||||
+0x80d815 KEY_REWIND
|
||||
+0x80d870 KEY_PLAYPAUSE
|
||||
+0x80d819 KEY_STOP
|
||||
+0x80d81a KEY_NEXT
|
||||
+0x80d81b KEY_PREVIOUS
|
||||
+0x80d826 KEY_INFO
|
||||
+0x80d86f KEY_EPG
|
||||
+0x80d86e KEY_ZOOM
|
@ -0,0 +1,28 @@
|
||||
diff --git a/utils/keytable/rc_keymaps/xbox_one b/utils/keytable/rc_keymaps/xbox_one
|
||||
new file mode 100644
|
||||
index 0000000..07614ee
|
||||
--- /dev/null
|
||||
+++ b/utils/keytable/rc_keymaps/xbox_one
|
||||
@@ -0,0 +1,22 @@
|
||||
+# table xbox_one, type: NEC
|
||||
+0x80d864 KEY_MEDIA
|
||||
+0x80d820 KEY_LEFT
|
||||
+0x80d821 KEY_RIGHT
|
||||
+0x80d81e KEY_UP
|
||||
+0x80d81f KEY_DOWN
|
||||
+0x80d822 KEY_OK
|
||||
+0x80d823 KEY_EXIT
|
||||
+0x80d80e KEY_MUTE
|
||||
+0x80d810 KEY_VOLUMEUP
|
||||
+0x80d811 KEY_VOLUMEDOWN
|
||||
+0x80d812 KEY_CHANNELUP
|
||||
+0x80d813 KEY_CHANNELDOWN
|
||||
+0x80d814 KEY_FASTFORWARD
|
||||
+0x80d815 KEY_REWIND
|
||||
+0x80d870 KEY_PLAYPAUSE
|
||||
+0x80d819 KEY_STOP
|
||||
+0x80d81a KEY_NEXT
|
||||
+0x80d81b KEY_PREVIOUS
|
||||
+0x80d826 KEY_INFO
|
||||
+0x80d86f KEY_EPG
|
||||
+0x80d86e KEY_ZOOM
|
@ -1,12 +1,10 @@
|
||||
diff -Nru a/utils/keytable/rc_keymaps/rc6_mce b/utils/keytable/rc_keymaps/rc6_mce
|
||||
--- a/utils/keytable/rc_keymaps/rc6_mce 2015-02-17 12:25:15.452561904 +0200
|
||||
+++ b/utils/keytable/rc_keymaps/rc6_mce 2015-05-27 13:22:28.089766130 +0300
|
||||
@@ -262,3 +262,15 @@
|
||||
0x80d826 KEY_INFO
|
||||
0x80d86f KEY_EPG
|
||||
0x80d86e KEY_ZOOM
|
||||
+
|
||||
+#CuBox-i and HummingBoard remote control
|
||||
diff --git a/utils/keytable/rc_keymaps/cuboxi b/utils/keytable/rc_keymaps/cubox_i
|
||||
new file mode 100644
|
||||
index 0000000..1063253
|
||||
--- /dev/null
|
||||
+++ b/utils/keytable/rc_keymaps/cubox_i
|
||||
@@ -0,0 +1,10 @@
|
||||
+# table cubox_i, type: RC6
|
||||
+0x1f020b0 KEY_MEDIA
|
||||
+0x1f02078 KEY_UP
|
||||
+0x1f02044 KEY_ENTER
|
||||
@ -16,4 +14,3 @@ diff -Nru a/utils/keytable/rc_keymaps/rc6_mce b/utils/keytable/rc_keymaps/rc6_mc
|
||||
+0x1f020c4 KEY_BACKSPACE
|
||||
+0x1f02068 KEY_PLAYPAUSE
|
||||
+0x1f02064 KEY_EPG
|
||||
+
|
||||
|
@ -1,11 +1,10 @@
|
||||
diff -rupN v4l-utils-0.8.3/utils/keytable/rc_keymaps/rc6_mce v4l-utils-0.8.3.patch/utils/keytable/rc_keymaps/rc6_mce
|
||||
--- v4l-utils-0.8.3/utils/keytable/rc_keymaps/rc6_mce 2011-08-19 19:08:11.000000000 +0200
|
||||
+++ v4l-utils-0.8.3.patch/utils/keytable/rc_keymaps/rc6_mce 2011-09-22 21:50:44.000000000 +0200
|
||||
@@ -60,3 +60,69 @@
|
||||
0x800f046f KEY_MEDIA
|
||||
0x800f0480 KEY_BRIGHTNESSDOWN
|
||||
0x800f0481 KEY_PLAYPAUSE
|
||||
+#xbox360 remote
|
||||
diff --git a/utils/keytable/rc_keymaps/xbox_360 b/utils/keytable/rc_keymaps/xbox_360
|
||||
new file mode 100644
|
||||
index 0000000..b90ecfd
|
||||
--- /dev/null
|
||||
+++ b/utils/keytable/rc_keymaps/xbox_360
|
||||
@@ -0,0 +1,66 @@
|
||||
+# table xbox_360, type: RC6
|
||||
+0x800f7400 KEY_NUMERIC_0
|
||||
+0x800f7401 KEY_NUMERIC_1
|
||||
+0x800f7402 KEY_NUMERIC_2
|
@ -1,12 +1,10 @@
|
||||
diff -Naur v4l-utils-0.8.3/utils/keytable/rc_keymaps/rc6_mce v4l-utils-0.8.3.patch/utils/keytable/rc_keymaps/rc6_mce
|
||||
--- v4l-utils-0.8.3/utils/keytable/rc_keymaps/rc6_mce 2013-09-22 13:54:18.609413831 +0200
|
||||
+++ v4l-utils-0.8.3.patch/utils/keytable/rc_keymaps/rc6_mce 2013-09-22 13:56:37.641651436 +0200
|
||||
@@ -126,3 +127,48 @@
|
||||
0x800f746f KEY_PLAYER
|
||||
0x800f7480 KEY_BRIGHTNESSDOWN
|
||||
0x800f7481 KEY_PLAYPAUSE
|
||||
+
|
||||
+#Zotac AD10 Remote
|
||||
diff --git a/utils/keytable/rc_keymaps/zotac_ad10 b/utils/keytable/rc_keymaps/zotac_ad10
|
||||
new file mode 100644
|
||||
index 0000000..e93fad4
|
||||
--- /dev/null
|
||||
+++ b/utils/keytable/rc_keymaps/zotac_ad10
|
||||
@@ -0,0 +1,44 @@
|
||||
+# table zotac_ad10, type: RC6
|
||||
+0x8034048e KEY_POWER
|
||||
+0x8034043d KEY_POWER
|
||||
+0x80340400 KEY_NUMERIC_0
|
@ -0,0 +1,29 @@
|
||||
diff --git a/utils/keytable/rc_maps.cfg b/utils/keytable/rc_maps.cfg
|
||||
index e69fd6a..c0fe122 100644
|
||||
--- a/utils/keytable/rc_maps.cfg
|
||||
+++ b/utils/keytable/rc_maps.cfg
|
||||
@@ -109,7 +109,9 @@
|
||||
* rc-proteus-2309 proteus_2309
|
||||
* rc-purpletv purpletv
|
||||
* rc-pv951 pv951
|
||||
-* rc-rc6-mce rc6_mce
|
||||
+# use combined multi-table on MCE receivers
|
||||
+#* rc-rc6-mce rc6_mce
|
||||
+* rc-rc6-mce libreelec_multi
|
||||
* rc-real-audio-220-32-keys real_audio_220_32_keys
|
||||
* rc-reddo reddo
|
||||
* rc-snapstream-firefly snapstream_firefly
|
||||
@@ -136,6 +138,13 @@
|
||||
* rc-videomate-tv-pvr videomate_tv_pvr
|
||||
* rc-winfast-usbii-deluxe winfast_usbii_deluxe
|
||||
* rc-winfast winfast
|
||||
+# fake tables for LibreELEC keymaps
|
||||
+* rc-cubox-i cubox-i
|
||||
+* rc-hp-mce hp_mce
|
||||
+* rc-samsung samsung
|
||||
+* rc-xbox-360 xbox_360
|
||||
+* rc-xbox-one xbox_one
|
||||
+* rc-zotac-ad10 zotac_ad10
|
||||
# * * a800 # found in a800.c
|
||||
# * * af9005 # found in af9005-remote.c
|
||||
# * * cinergyt2 # found in cinergyT2-core.c
|
Loading…
x
Reference in New Issue
Block a user