みなさんはじめまして。長南
さて、
ハードウェアの選定は慎重に
Ubuntuをリモコンで操作しようとしたときに、
そのような苦境の時代が続いていたのですが、

なお、
Ubuntuでのソフトウェアの準備
Ubuntuに限らずLinuxでリモコンを取り扱う際にはlirc
$ sudo apt-get install lirc lirc-x
インストールの途中でlircが扱うハードウェアについて質問されます。最初に使用するリモコンハードウェアについて選択するよう促されますので、

さらに送信用のハードウェアについても選択するよう促されますが、

なお、
$ sudo dpkg-reconfigure lirc
設定した内容は/etc/
受信デバイスの確認
ここでGV-MC7/
Jan 1 13:30:00 ubuntu kernel: [2816893.124204] input: Media Center Ed. eHome Infrared Remote Transceiver (0609:0353) as /devices/pci0000:00/0000:00:1d.3/usb5/5-2/5-2:1.0/rc/rc1/input3 Jan 1 13:30:00 ubuntu kernel: [2816893.124324] rc1: Media Center Ed. eHome Infrared Remote Transceiver (0609:0353) as /devices/pci0000:00/0000:00:1d.3/usb5/5-2/5-2:1.0/rc/rc1 Jan 1 13:30:00 ubuntu kernel: [2816893.128481] rc rc1: lirc_dev: driver ir-lirc-codec (mceusb) registered at minor = 0 Jan 1 13:30:00 ubuntu kernel: [2816893.128511] mceusb 5-2:1.0: Registered SMK CORPORATION WMC RECEIVER Emulator Device 2009 on usb5:22
また、
$ ls -l /dev/lirc* crw------- 1 root root 250, 0 2012-01-01 13:30 /dev/lirc0
この時ハードウェアやカーネルのバージョンによっては、
一旦lircサービスを停止させた上でmode2コマンドを使うことによって、
$ sudo service lirc stop * Stopping remote control daemon(s): LIRC [ OK ] $ sudo mode2 -d /dev/lirc0 (ここでリモコンのボタンを押して受信ユニットに信号を送信してみます) space 99750 pulse 950 space 400 pulse 350 ...(以下省略) ^C (mode2コマンドを終了する際にはCtrl+Cを入力します) $
リモコンのボタンを押すごとに受信した信号のようなものが表示されることが確認できればmceusbデバイスは正常に動作しています。
リモコンの設定
次にリモコンそのものについての設定を行います。一口にリモコンと言ってもテレビ・
lircをインストールする際に設定された内容は、
実際の設定ファイルである/etc/
#Configuration for the Windows Media Center Transceivers/Remotes (all) remote:
include "/usr/share/lirc/remotes/mceusb/lircd.conf.mceusb"
そのため、
$ cd /etc/lirc
$ sudo cp /(ダウンロードしたディレクトリ)/gvmc7_rckit.conf /etc/lirc/
$ ls -l /etc/lirc/*.conf
-rw-r--r-- 1 root root 22016 2012-01-01 13:30 gvmc7_rckit.conf
-rw-r--r-- 1 root root 488 2012-01-01 13:30 hardware.conf
-rw-r--r-- 1 root root 561 2012-01-01 13:30 lircd.conf
-rw-r--r-- 1 root root 121 2011-04-01 13:30 lircmd.conf
$ sudo nano lircd.conf
(lircd.conf を編集します)
lircd.
#Configuration for the Windows Media Center Transceivers/Remotes (all) remote:
#include "/usr/share/lirc/remotes/mceusb/lircd.conf.mceusb"
#Configuration for the IO-DATA GV-MC7/RCKIT remote controller:
include "/etc/lirc/gvmc7_rckit.conf"
ここまで作業できたところで、
$ sudo service lirc start * Starting remote control daemon(s) : LIRC [ OK ]
これでlircの設定が完成したわけですが、
$ irw (ここでリモコンの電源ボタンを押してみます) 0000000000000001 00 KEY_POWER I-O_DATA_GV-MC7_RCKIT 0000000000000001 01 KEY_POWER I-O_DATA_GV-MC7_RCKIT 0000000000000001 00 KEY_POWER I-O_DATA_GV-MC7_RCKIT 0000000000000001 01 KEY_POWER I-O_DATA_GV-MC7_RCKIT 0000000000000001 02 KEY_POWER I-O_DATA_GV-MC7_RCKIT 0000000000000001 03 KEY_POWER I-O_DATA_GV-MC7_RCKIT 0000000000000001 04 KEY_POWER I-O_DATA_GV-MC7_RCKIT (リモコンの再生ボタンを押してみます) 0000000000000009 00 KEY_PLAY I-O_DATA_GV-MC7_RCKIT 0000000000000009 00 KEY_PLAY I-O_DATA_GV-MC7_RCKIT 0000000000000009 01 KEY_PLAY I-O_DATA_GV-MC7_RCKIT 0000000000000009 02 KEY_PLAY I-O_DATA_GV-MC7_RCKIT 0000000000000009 03 KEY_PLAY I-O_DATA_GV-MC7_RCKIT ...(以下いろいろテストしてみてください) ^C (終了する場合には Ctrl+Cを押します) $
このように、
Bansheeの設定
これでようやくアプリケーションでリモコン信号を取り扱うことができるようになりました。Ubuntu標準の音楽プレーヤのBansheeをリモコンで操作できるようにしてみます。
BansheeにはChromeやFirefoxなどで良く見られるような、
$ sudo apt-get install banshee-extension-lirc
そして、

エクステンションを有効化したら一旦Bansheeは終了させます。
一方、
$ cd ~
$ nano .lircrc
(.lircrc ファイルを編集します)
しかし、
$ mkdir ~/.lirc
そして、
include ~/.lirc/banshee
また、
$ nano ~/.lirc/banshee
設定方法としては、
begin
button = KEY_HOME
remote = I-O_DATA_GV-MC7_RCKIT
prog = irexec
config = banshee
end
begin
button = KEY_PLAY
remote = I-O_DATA_GV-MC7_RCKIT
prog = banshee
config = play
end
(以下同じように設定を作ってください)
ボタンやリモコン名については、
上記の設定内容は、
ボタンを押したときに任意のコマンドを実行するような場合にはprogの部分にirexec、
現在のところBansheeのlircエキステンションではconfigにplay
今回筆者が作成したファイルをサンプル
irexecデーモンの自動起動設定
そして仕上げとして、

名前や説明については後で見返したときに分かりやすい内容を、

そしてきちんと自動起動するよう、

irexecの自動起動設定が終わったら、
$ irexec -d
Bansheeでのリモコン生活
これでようやくBansheeでリモコンを使うことができるようになりました。曲送り、
なお、
Ubuntuで君も魔法使いになろう
と、
そう、

この杖は単なるおもちゃのように見えて、
ここまで記事を読んでくださった方は多分GV-MC7/
杖の使用にあたっては正しいジェスチャを出せるように練習が必要ですので、
最終兵器・汎用リモコン
そのようなわけでUbuntu魔法使いになれたわけですが、
汎用リモコンは国内の主要メーカーのリモコンの信号が製品の中に入っていて、
今回は近くの電気屋さんに行き、

国内の家電用のリモコン信号はメーカー毎に細部の仕様が違うのですが、
- NECフォーマット
- 家製協フォーマット
- SONYフォーマット
このうち、
まずは製品マニュアルを読んで、
$ mkdir elpa_nec $ cd elpa_nec $ cp /usr/share/lirc/remote/generic/NEC.conf ELPA_NEC_2511
そして、
$ sudo service lirc stop * Stopping remote control daemon(s): LIRC [ OK ] $ sudo irrecord -n -d /dev/lirc0 ELPA_NEC_2511 irrecord - application for recording IR-codes for usage with lirc Copyright (C) 1998,1999 Christoph Bartelmus(lirc@bartelmus.de) This program will record the signals from your remote control and create a config file for lircd. (メッセージ中略) Please send the finished config files to <lirc@bartelmus.de> so that I can make them available to others. Don't forget to put all information that you can get about the remote control in the header of the file. Press RETURN to continue. (RETURNキーを押して続行するよう促されるので指示に従います) Now enter the names for the buttons. Please enter the name for the next button (press <ENTER> to finish recording) KEY_POWER (リモコンのボタンの名前を決めて入力します。何も入れずにENTERキーを押すと終了します) Now hold down button "KEY_POWER". (ここでリモコンのボタンを押して信号を学習させます) Please enter the name for the next button (press <ENTER> to finish recording) (以下、すべてのボタンについて繰り返します)
irrecordコマンドを終了させると、
$ nano ELPA_NEC_2511.conf
(内容の確認と必要であれば修正を行います。特にnameのところとボタン名を確認してください)
$ sudo cp ELPA_NEC_2511.conf /etc/lirc/elpa_nec_2511.conf
$ sudo nano /etc/lirc/lircd.conf
基本的に同じリモコンの信号を複数のリモコンで使っていて混乱する可能性がないのであれば複数のリモコンの設定を有効にしてもよいのですが、
#Configuration for the Windows Media Center Transceivers/Remotes (all) remote: #include "/usr/share/lirc/remotes/mceusb/lircd.conf.mceusb" #Configuration for the IO-DATA GV-MC7/RCKIT remote controller: #include "/etc/lirc/gvmc7_rckit.conf" #Configuration for the ELPA RC-29D NEC#2511 format: include "/etc/lirc/elpa_nec_2511.conf"
上記のように設定を変更し、
汎用リモコンでUbuntu上のBansheeを操作できるようになったら、
魔法使いになったら
余談ですが、
もちろん皆さんは