電話があったときに止めたりするのに、PCから操作するのが面倒!ということで、赤外線リモコンで制御できるようにしました。送信機能はいらないのと、リモコンを別に用意しないといけない(あるものが使えればOKですが、使えないかもしれない)ので、もう少し調べてみました。こちらのサイトで、受信だけであれば特別な工作はいらないような記述があったので、とりあえずこのサイトに記載されているiMONの比較的安価なものを探し出して動かしてみることにしました。http://www.ask-corp.jp/products/RC029.html実売価格は4,000くらい。2.6.24-19やったこと)lircをインストールして、動かしてみようとしましたが、よくわからず断念。dmesgをみると、デバイスを接続したときにHIDとして認識されているようなので、lircはあきらめて、HIDとして取れるデータで何かできないか調べてみました。結論からいえば、/dev/usb/hiddev1とかを読むとリモコンのデータが取れました。/dev/usb/hiddev1とかやって、リモコンのボタンをポチポチしてみればわかります。※hiddev1のところは環境によって異なります。これで取れることがわかったので、覚えたてのpythonで簡単なスクリプトをつくって、リモコンデータ保存、リモコン制御できるようにしてみました。※今回はちゃんとpythonの教科書をみながら書いたので、少しはマシにかけました。プログラム仕様)データ保存コマンドで、リモコンデータを取得し、そのデータに名前を付けます。リモコンデーモンコマンド(マシン起動中は動かしっぱなし)の設定ファイルに、その名前と実行するコマンドの対応を書きます。ソース)各コマンドの使い方はusageにあります。手でリモコンをさえぎったりした時に、変なデータがとれてUnknownになることがあるのですが、なぜか今の環境ではいったんUnknownになるとずーっとUnknownになる、という状態に陥りました。Unknownになったらプログラムを終了するようにして、デーモンコマンドをループする次のようなシェルスクリプトを書いて対処しています。(日本代理店)LIRCでiMONlircは、レシーバーを作らなくても使えます!!LIRC12/16注記:本記事記載のプログラムですが、いったん異常なデータを取得するとiMONを抜き差ししないと復活しない問題があります。ご要望(と私の余裕)があれば解析して対処します。(たぶんリセットするようなデータをiMONに送る必要があると思います。)2010/2/13追記:コメントいただきましたので、少し詳しく使い方を書きます。mkdata.pyで、リモコンのボタンを押した時に受信したデータにわかりやすい名前をつける。1でつけた名前を使って、ボタンが押されたときに実行させたいコマンドを設定ファイルに書く。hidird.pyを起動し、実際にリモコンのボタンが押されたときに、コマンドを実行させる。リモコンデータに名前をつける。data.confを実行してください。(256バイトの場合)のように追加してください。‘play’のような文字列を入力してから、リモコンの再生ボタンを押して下さい。すると、data.confに’play’というキーワードと再生ボタンを押した時に/dev/usbmon4に出力されるデータの対応が保存されます。buttonという内容で保存します。ファイル名はircmd.confとします。--device=/dev/usbmon4を実行します。button’という表示がコンソールに出てくると思います。HDDレコーダーをつくりました。xbmc上では、BDリモコンは動作しておりますが、デスクトップでは動作しません。xbmcが安定していれば全く問題ないのですが、たまに落ちたりするので、その場合にキーボード・マウスをつないでいない環境ではどうしようもなく、またわざわざつなぐのも面倒なので、リモコンでなんとかならないかと検索しているところで、こちらへたどり着きました。/dev/usbmon4でコマンドが送信されていることを確認いたしました。非常に初心者の質問で申し訳ございませんが、このスクリプトはどのようにして使用するのですか?また、キーボードエミュレートは可能でしょうか?よろしくお願いいたします。AMうどん玉さん、コメントありがとうございます。面白そうなHackをされていますね。ご質問の件ですが、使い方のご説明の前にまず、プロセスが落ちてお困りでしたら、プロセス監視ツールみたいなものを使ってみるのも一案かと思います。いまググってみたところ、http://ubulog.blogspot.com/2009/02/ubuntu.htmlというサイトに簡単なツールがありました。使い方の説明ですが、長くなったので、本文の方に追記しました。よろしければご覧ください。本ツールの仕組みが、リモコンのボタンをなんらかのコマンドに対応付けるものになりますので、その範囲内でお考えいただければよいかと思います。AM早速のresありがとうございます。