CoreELECの赤外線リモコン

設定方法が何回か変わっていますが、現在はCoreELEC19(Matrix)用になっています。
ここではmeson-irを使った方式について記述します。
9.2.xのCoreELECもmeson-irですが設定ファイルの書式が若干違いますが
書式の違いだけで大まかな所は変わらないので参考にはなると思います。
さらに古いCoreELECやLibreELECはamremoteです。

公式Forumのスレッド

How to configure IR remote control
メジャーバージョンアップ等で設定ファイルの記述や形式に変更があると、
このスレッドが更新されます。

リモコンコードを調べる方法

予めSSHでシェルにログインしておきます。
usernameはroot 、passwordは初期値であればcoreelecになってます。

大抵のリモコンは反応します。そこらへんのテレビのリモコンとかでも反応します。
ボタンを押した時のキーコードが16進で表示されるので、各ボタンがいくらなのか控えておきます。
終了はCTRL+Cです。
終わってそのままKODIに戻る場合は止めたサービス2を再度立ち上げればOKです。

設定ファイル

/storage/.config/rc_keymaps/<任意のファイル名>.toml
/storage/.config/rc_maps.cfg
/storage/.config/udev.rules.d/98-eventlircd.rules (空でOK)
/storage/.kodi/userdata/keymaps/keymaps.xml (必要な場合のみ、後述)

以上の3または4ファイルの作成が必要です。
keymaps.xmlはリモコンで直接定義できない機能を割り当てる際、キーボードのキーに割り当てて
それを呼び出す形で実現する際に使用します。

<任意のファイル名>.toml

実際のリモコンのキーコードを何の機能に割り当てるかを記述するファイルです。
リモコン関係の定義では一番重要なファイルになります。

[[protocols]]
name = "x96mini"
protocol = "nec"
[protocols.scancodes]
0x140 = "KEY_POWER"
0x155 = "KEY_PREVIOUSSONG"
0x15A = "KEY_PLAYPAUSE"
0x152 = "KEY_STOP"
0x154 = "KEY_NEXTSONG"
0x143 = "KEY_F11"
0x10F = "KEY_F12"
0x110 = "KEY_VOLUMEDOWN"
0x118 = "KEY_VOLUMEUP"
0x111 = "KEY_HOME"
0x119 = "KEY_BACK"
0x116 = "KEY_UP"
0x11A = "KEY_DOWN"
0x151 = "KEY_LEFT"
0x150 = "KEY_RIGHT"
0x113 = "KEY_ENTER"
0x14C = "KEY_MENU"
0x100 = "BTN_MOUSE"
0x14E = "KEY_1"
0x10D = "KEY_2"
0x10C = "KEY_3"
0x14A = "KEY_4"
0x109 = "KEY_5"
0x108 = "KEY_6"
0x146 = "KEY_7"
0x105 = "KEY_8"
0x104 = "KEY_9"
0x141 = "KEY_MUTE"
0x101 = "KEY_0"
0x142 = "KEY_BACKSPACE"

nameはファイル名の拡張子を除いたものにします。
protocolは大抵necでいいですがnec以外のプロトコルのリモコンを使う場合は変えます。
(ir-keytableでNECで反応しなかったリモコン等)
16進コードはリモコンキーコード、対応する機能はhttp://ix.io/19sOを参照します。

rc_maps.cfg

meson-ir * x96mini.toml

1行でOKです。作成した*.tomlのファイル名を記述しておきます。

98-eventlircd.rules

空でOKです。viで開いて空のまま保存するなり、touchで作成するなりお好きな方法で。

keymaps.xml

使用例として、音楽や動画の再生でシャッフル、リピートの有効/無効を画面表示付で切り替えるボタンを作る場合です。
キーボードのF11とF12に割り当ててリモコン側で指定をしています。
使わなそうなキーに割り当てれば良いかと思います。

<?xml version="1.0" encoding="UTF-8"?>
<keymap>
	<global>
		<keyboard>
			<f11>PlayerControl(Random,Notify)</f11>
			<f12>PlayerControl(Repeat,Notify)</f12>
		</keyboard>
	</global>
</keymap>

リモコン設定の反映

定義を変更した場合、反映させる必要があります。
ir-keytable -a /storage/.config/rc_maps.cfg -s rc0

実行した後にkodiを起動すればリモコンが動くと思います。
反応しないボタン等があればリモコンキーコードや定義の再確認をしてください。


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS