赤外線デバイスドライバ

Linuxのドライバに赤外線デバイスがあるのは知ってたのだが、どのように使うのか分からなかった。調べてみるとRaspberry Piで赤外線リモコンという記事が見つかった。これによると簡単な赤外線の送受信回路を組み立てると赤外線通信ができるようになる。手持ちの部品で回路を作れそうなので実験してみることにした。

作成した回路

ご覧の通り簡単な回路だ。赤外線LEDはなるべく高輝度で駆動できるようトランジスタでスイッチを作ってる。受信側はノイズがなるべく載らないようにコンデンサを入れてある。これらは定番の回路だ。注意点としては手持ちの赤外線受信モジュールには5Vのみというものもあったので3.3V対応のものを選ぶということぐらいかな。

赤外線通信回路

赤外線通信回路

赤外線送受信モジュールの実装

ユニバーサル基板で組み立てた。

赤外線送受信モジュール(表)

赤外線送受信モジュール(表)

そしてこれが裏である。

赤外線送受信モジュール(裏)

赤外線送受信モジュール(裏)

動作テスト

これがRaspberry Piに接続してテストしているころである。

テスト中

テスト中

Raspberry Piで赤外線リモコンの手順通りにソフトやデバイスのインストールをしてテストした。

赤外線リモコン信号は、こんな感じで受信した。問題はなさそうである。

bant@raspberrypi ~ $ sudo mode2 -d /dev/lirc0
space 4266625
pulse 8983
space 4530
pulse 542
space 588
pulse 590
space 539
pulse 521
space 593
pulse 544
space 586
pulse 592
space 585
pulse 485
space 593
・
・
・

気を良くして、赤外線リモコンを学習させようとすると、エラーでアボートしてしまう。

bant@raspberrypi ~ $ sudo irrecord -n -d /dev/lirc0 /home/bant/lircd.conf
[sudo] password for bant:

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.


A proper config file for lircd is maybe the most vital part of this
package, so you should invest some time to create a working config
file. Although I put a good deal of effort in this program it is often
not possible to automatically recognize all features of a remote
control. Often short-comings of the receiver hardware make it nearly
impossible. If you have problems to create a config file READ THE
DOCUMENTATION of this package, especially section "Adding new remote
controls" for how to get help.

If there already is a remote control of the same brand available at
http://www.lirc.org/remotes/ you might also want to try using such a
remote as a template. The config files already contain all
parameters of the protocol used by remotes of a certain brand and
knowing these parameters makes the job of this program much
easier. There are also template files for the most common protocols
available in the remotes/generic/ directory of the source
distribution of this package. You can use a template files by
providing the path of the file as command line parameter.

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.


Now start pressing buttons on your remote control.

It is very important that you press many different buttons and hold them
down for approximately one second. Each button should generate at least one
dot but in no case more than ten dots of output.
Don't stop pressing buttons until two lines of dots (2x80) have been
generated.

Press RETURN now to start recording.
..........................................................................irrecord: no data for 10 secs, aborting
irrecord: gap not found, can't continue

そもそも、irrecordの使い方がよく分かってないので、何が悪いのかよく分からない。

受信は出来てるようだが、送信は分からない。とりあえず今日はここまで。