Konfigurasi LIRC

Attention: open in a new window. PDFPrintE-mail

LIRC adalah singkatan dari Linux Infrared Remote Control

Nah, jadi kira-kira definisi LIRC adalah sebuah project untuk membuat remot kontrol infra merah anda dapat dikenali dan diberdayagunakan oleh GNU/Linux. Title
Konfigurasi LIRC

Category
Drivers/Multimedia

Author
Triaji Prio Pratomo a.k.a. ov3rr|d3 a.k.a. SuSE8

Version
0.0.1

Last Update:
Dec 30, 2004

Keywords:
LIRC, www.lirc.org, Linux Infrared Remote Control

Reference:
http://www.lirc.org/

Download:
LIRC Driver
http://optusnet.dl.sourceforge.net/lirc/lirc-0.7.0.tar.bz2
LIRC GUI Config for .lircrc
http://optusnet.dl.sourceforge.net/lirc/lircrc_config-0.1.1.tar.gz
LIRC Scripts for Supported Remotes
http://www.lirc.org/remotes.tar.bz2
LIRC Script for specific card (PV951)
http://lirc.sourceforge.net/remotes/provideo/PV951
LIRC Test Suite for X
http://optusnet.dl.sourceforge.net/lirc/xirw-0.4.2.tar.bz2
http://optusnet.dl.sourceforge.net/lirc/xrc-0.6.4.tar.bz2

Dependencies:
Kernel > 2.2.4 untuk antarmuka SERIAL/PARAREL
Kernel > 2.4.2 untuk antarmuka TV Tuner
Precompiled (source) kernel yang sama dengan kernel anda (www.kernel.org)
Libtool > 1.3.3 (http://ftp.gnu.org/gnu/libtool/)
Versi terkini saat tulisan ini dibuat: libtool-1.5.8
GCC > 2.x (http://ftp.gnu.org/gnu/gcc/)
Versi terkini saat tulisan ini dibuat: gcc-3.4.3
Automake > 1.4 (http://ftp.gnu.org/gnu/automake/)
Versi terkini saat tulisan ini dibuat: automake-1.9.4
Autoconf > 2.13 (http://ftp.gnu.org/gnu/autoconf/)
Versi terkini saat tulisan ini dibuat: autoconf-2.59

Notes:
Versi perangkat lunak yang tercantum adalah versi terakhir tertanggal sesuai subkategori Last Update

Misc:
Dipersembahkan untuk saudara-saudaraku di Nanggroe Aceh Darussalaam yang tertimpa musibah Tsunami tanggal 26/12/2004. Kami tak akan pernah lupa luka itu, semoga Allah SWT memberikan surga bagi para syuhada-Nya


Hai,
Ketemu lagi dengan OV3RR|D3 yang cakep banget :p
Kali ini kita akan ngebahas LIRC kali yee
OK,
Pertama tama, apa itu LIRC?
LIRC adalah singkatan dari Linux Infrared Remote Control
Nah, jadi kira-kira definisi LIRC adalah sebuah project untuk membuat remot kontrol infra merah anda dapat dikenali dan diberdayagunakan oleh GNU/Linux.


Mengapa project LIRC terbentuk?
Project LIRC terbentuk karena adanya kebutuhan yang cukup mendesak (kalau tidak mau disebut krusial) akan pendayagunaan remot kontrol infra merah di GNU/Linux.
Seperti kita ketahui bersama, GNU/Linux merupakan Sistem Operasi yang saat ini merupakan trend yang banyak menyita perhatian para praktisi TI, pemula, institusi pendidikan, perusahaan, pemerintahan, dan lain lain, sebagai alternatif yang murah namun handal dalam penerapan solusi TI.

Namun sayangnya, dibalik semua kegempitaan tersebut, masih banyak vendor-vendor yang belum mengeluarkan driver-drivernya untuk GNU/Linux, diantaranya vendor-vendor yang menggunakan fasilitas remot kontrol infra merah.

Oleh karena itu, untuk mengatasi kesenjangan antara kebutuhan dengan ketersediaan driver, dibentuklah project LIRC (http://www.lirc.org/) yang dirintis oleh Christoph Bartelmus ( This e-mail address is being protected from spambots. You need JavaScript enabled to view it ).

Saya sangat menyarankan bagi anda untuk terlebih dahulu membaca-baca literatur di website resmi tersebut untuk memahami bagaimana LIRC bekerja di sistem GNU/Linux anda sebelum melanjutkan ke bagian selanjutnya.


Apa yang dibutuhkan?
Sebelum memulai pembahasan, ada baiknya anda memeriksa sistem anda terlebih dahulu, perangkat keras / lunak apa saja yang dibutuhkan agar proses ini berjalan lancar, kemudian cantumkan di sini:


    *      Infrared device =
    *      GNU/Linux distribution =
    *      Kernel version =
    *      Kernel source installed =
    *      Libtool version =
    *      GCC version =
    *      Automake version =
    *      Autoconf version =

Seperti perangkat saya sbb:


    *      Infrared device = 3DeMON TV Tuner (PV951)
    *      GNU/Linux distribution = Matrix GNU/Linux 0.2 (buatan sendiri dari LFS 5.0)
    *      Kernel version = 2.4.27-lck1
    *      Kernel source installed = ya, di /usr/src/linux
    *      Libtool version = 1.4.3
    *      GCC version = 3.3.2
    *      Automake version = 1.4-p6
    *      Autoconf version = 2.13

LIRC mendukung hampir semua antarmuka (interface) perangkat remot kontrol infra merah, baik SERIAL, PARAREL, onboard (terintegrasi dengan TV Tuner). Kecuali antarmuka USB. Jadi apabila anda memiliki TV Tuner USB, kemungkinan besar anda belum bisa memfungsikan remot kontrol infra merah anda. Tapi jangan khawatir, ada sebuah project yang menjembatani hal tersebut di http://tusb3210.sourceforge.net/. Namun saya belum mencobanya karena ketiadaan perangkat kerasnya.

LIRC juga membutuhkan kernel minimal versi 2.2.4 untuk perangkat Infrared SERIAL, atau kernel minimal versi 2.4.2 untuk perangkat infrared onboard dengan TV Tuner PCI (saya yakin anda semua memiliki kernel versi 2.4.2 atau di atasnya J)

Tidak ada distribusi GNU/Linux khusus yang tidak didudung oleh LIRC, namun pembahasan kali ini akan menitikberatkan pada instalasi dengan menggunakan source code, oleh karena itu anda membutuhkan source kernel yang diletakkan di /usr/src/linux, libtool minimal versi 1.3.3, GCC minimal versi 3.x, Autoconf minimal versi 2.13, automake minimal versi 1.4. (lihat subkategori Dependencies di header halaman ini)

Periksalah semua dependencies anda satu per satu:
Memeriksa versi kernel:
$ uname r
2.4.27-lck1

Memeriksa ada tidaknya source kernel:
$ ls al /usr/src/linux/
total 4376
drwxr-xr-x 15 573 573 4096 Nov 3 01:42 ./
drwxr-xr-x 6 root root 4096 Dec 28 15:50 ../
drwxr-xr-x 20 573 573 4096 Mar 16 2004 arch/
-rwxrwxrwx 1 root root 69 Aug 11 19:35 compile.run*
-rw-r--r-- 1 root root 50836 Feb 15 2004 config
-rw-r--r-- 1 root root 43539 Nov 3 01:05 .config
-rw-r--r-- 1 root root 50836 Nov 2 23:10 .config.old
-rw-r--r-- 1 573 573 18691 Aug 2 2002 COPYING
-rw-r--r-- 1 root root 82280 Aug 30 14:09 CREDITS
drwxr-xr-x 2 root root 4096 Nov 3 01:41 crypto/
-rw-r--r-- 1 root root 4691 Nov 3 01:06 .depend
drwxr-xr-x 32 573 573 4096 Aug 30 14:09 Documentation/
drwxr-xr-x 40 573 573 4096 Nov 3 01:05 drivers/
drwxr-xr-x 49 573 573 4096 Nov 3 01:31 fs/
-rw-r--r-- 1 root root 222295 Nov 3 01:06 .hdepend
drwxr-xr-x 29 573 573 4096 Nov 3 01:06 include/
drwxr-xr-x 2 573 573 4096 Nov 3 01:42 init/
drwxr-xr-x 2 573 573 4096 Nov 3 01:11 ipc/
drwxr-xr-x 2 573 573 4096 Nov 3 01:07 kernel/
drwxr-xr-x 4 573 573 4096 Nov 3 01:41 lib/
-rw-r--r-- 1 root root 48859 Aug 30 14:09 MAINTAINERS
-rw-rw-r-- 1 root root 19096 Aug 30 14:09 Makefile
drwxr-xr-x 2 573 573 4096 Nov 3 01:09 mm/
drwxr-xr-x 29 573 573 4096 Nov 3 01:11 net/
-rw-r--r-- 1 root root 14287 Mar 16 2004 README
-rw-r--r-- 1 root root 2818 Mar 16 2004 REPORTING-BUGS
-rw-r--r-- 1 root root 9325 Mar 16 2004 Rules.make
drwxr-xr-x 4 573 573 4096 Nov 2 23:12 scripts/
-rw-r--r-- 1 root root 600378 Nov 3 01:42 System.map
-rw-r--r-- 1 root root 2 Nov 3 01:42 .version
-rwxr-xr-x 1 root root 3190102 Nov 3 01:42 vmlinux*

Memeriksa versi libtool:
$ libtool --version
ltmain.sh (GNU libtool) 1.4.3 (1.922.2.111 2002/10/23 02:54:36)

Memeriksa versi GCC:
$ gcc version
gcc (GCC) 3.3.2
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Memeriksa versi automake:
$ automake --version
automake (GNU automake) 1.4-p6
Copyright (C) 1999, 2001 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Tom Tromey

Memeriksa versi autoconf:
$ autoconf --version
Autoconf version 2.13

Jika anda yakin kebutuhan minimal telah terpenuhi, maka kita siap untuk memulai pertempuran:
LANGKAH 1: MENDOWNLOAD PAKET-PAKET YANG DIBUTUHKAN
Ada banyak paket yang berkaitan dengan LIRC, tapi sebenarnya paket yang paling utama adalah paket LIRC itu sendiri dan paket REMOTES
untuk itu apabila anda terhubung ke internet, downloadlah paket-paket yang dimaksud dari URL berikut:
http://optusnet.dl.sourceforge.net/lirc/lirc-0.7.0.tar.bz2
http://www.lirc.org/remotes.tar.bz2
simpanlah di direktori /tmp/

LANGKAH 2: KOMPILASI
bagi yang familiar dengan source code, tentu anda tahu apa yang harus anda lakukan, tapi jika anda adalah benar benar pemula, maka ikutilah langkah-langkah berikut dengan berurutan
masuk ke direktori /tmp/
$ cd /tmp/

ekstrak dua paket tersebut
$ bunzip2 -cd lirc-0.7.0.tar.bz2 | tar xv
$ bunzip2 -cd remotes.tar.bz2 | tar xv

masuk ke direktori LIRC
$ cd lirc-0.7.0/

ketikkan perintah './configure'
$ ./configure

Maka akan terlihat tampilan sbb:

di sini anda dituntut untuk mengetahui perangkat keras yang anda miliki, terutama yang berkaitan dengan remot kontrol infra merah.

Pilih section (1) Driver configuration
maka akan tampil pilihan sbb:

pilihlah sesuai dengan perangkat keras yang anda miliki

jika telah selesai memilih, pilih untuk kembali ke menu semula, lalu pilihlah (3) Save configuration & run configure.
Langkah kompilasi telah selesai

LANGKAH 3: INSTALASI
langkah ini relatif lebih mudah yaitu dengan hanya mengetikkan tiga langkah perintah yaitu:
masuklah sebagai super user dengan mengetikkan 'su' dan disusul dengan mengetikkan kata sandi:
$ su
password: ******

Ketikkan perintah 'make'
# make

Kita harus menunggu beberapa saat sebelum proses make selesai dijalankan
lalu setelah selesai, ketikkan perintah 'make install'
# make install

Dan pekerjaan instalasi telah selesai, mudah bukan?

Sekarang waktunya perang sesungguhnya, dimana anda akan dihadapkan dengan gunung batu yang terjal dan berliku, yang bisa membuat anda patah semangat dengan dahi semakin berkerut tanda kesal.
Well, perjuangan belum usai kawan, perjalanan baru saja dimulai. :)

LANGKAH 4: KONFIGURASI
mungkin anda bingung dengan langkah ini, mengapa disebut KONFIGURASI, apa bedanya dengan ./configure? Itu akan saya jelaskan nanti jika anda telah berhasil mengontrol program TV anda dari jarak jauh :).
kini anda perhatikan, ada dua berkas baru di direktori /lib/modules//misc/

# ls -l /lib/modules/2.4.27-lck1/misc/

total 24
-rw-r--r-- 1 root root 14068 Dec 29 15:07 lirc_dev.o
-rw-r--r-- 1 root root 7980 Dec 29 15:07 lirc_i2c.o

Berkas pertama yaitu lirc_dev.o adalah modul yang mengontrol receiver anda, dan lirc_i2c.o adalah modul yang mengontrol transmitter anda.

Apa itu receiver, dan apa pula transmitter?

Bagi anda yang familiar dengan dunia radio, tentu istilah ini tak asing lagi, receiver adalah alat penerima sinyal, dan transmitter adalah alat pengirim sinyal, dalam hal ini receiver berarti perangkat keras infrared yang tertanam di CPU anda, dan transmitter adalah remot kontrolnya.

Dua berkas ini harus diload ke memory dengan perintah


# insmod /lib/modules/2.4.27-lck1/misc/lirc_dev.o
# insmod /lib/modules/2.4.27-lck1/misc/lirc_i2c.o
# depmod -a
# modprobe /lib/modules/2.4.27-lck1/misc/lirc_dev.o
# modprobe /lib/modules/2.4.27-lck1/misc/lirc_i2c.o

Agar dua modul ini diload secara otomatis ke memori setiap boot, maka kita perlu melakukan beberapa modifikasi di berkas /etc/modules dan /etc/modules.conf.
Lakukan perintah sbb:

# echo lirc_dev >> /etc/modules
# echo lirc_i2c >> /etc/modules
# echo alias char-major-61 lirc_dev >> /etc/modules.conf

Dengan adanya dua modul ini di memori, maka receiver dan transmitter siap berinteraksi lewat protokol device LIRC Daemon atau LIRCD yang terdapat di direktori /usr/local/sbin/

# ls -l /usr/local/sbin/ | grep lircd
-rwxr-xr-x 1 root root 251311 Dec 29 15:07 lircd*
-rwxr-xr-x 1 root root 251311 Dec 28 18:04 lircd.0.7.0*

Loadlah LIRC Daemon ini ke memori
# /usr/local/sbin/lircd

Juga agar daemon ini secara otomatis diload ke memori saat boot, maka kita harus membuat beberapa berkas. Dengan perintah sbb:
# echo /usr/local/sbin/lircd >> /etc/rc.d/init.d/lircd
# chmod 755 /etc/rc.d/init.d/lircd
# ln s /etc/rc.d/init.d/lircd /etc/rc3.d/s65lircd

perhatikan juga ada beberapa berkas baru di direktori /dev/
# ls -l /dev/ | grep lirc
crw-rw-rw- 1 root root 61, 0 Dec 30 09:39 lirc
srw-rw-rw- 1 root root 0 Dec 30 14:39 lircd=
prw-r--r-- 1 root root 0 Dec 30 09:39 lircm|

Berkas /dev/lirc adalah berkas CHARACTER SPECIAL FILE, berkas /dev/lircd adalah SOCKET LINK, dan berkas /dev/lircm adalah FIFO. Untuk mengetahui apa arti jenis jenis file tersebut, disarankan untuk membaca literatur terkait.

Namun intinya ketiga berkas tersebut adalah berkas-berkas yang menangani arus lalu lintas data yang dikirimkan oleh transmitter kepada receiver.
Sebelumnya kita harus mengubah permisi berkas /dev/lircd dengan menjalankan perintah:
# chmod 666 /dev/lircd

Selain itu juga di direktori /usr/local/bin/ ada beberapa berkas yang semuanya berawalan ir-
# ls -l /usr/local/bin/ | grep ir

-rwxr-xr-x 1 root root 28525 Dec 29 15:07 ircat*
-rwxr-xr-x 1 root root 29286 Dec 29 15:07 irexec*
-rwxr-xr-x 1 root root 42641 Dec 29 15:07 irpty*
-rwxr-xr-x 1 root root 248412 Dec 29 15:07 irrecord*
-rwxr-xr-x 1 root root 38753 Dec 29 15:07 irsend*
-rwxr-xr-x 1 root root 29549 Dec 29 15:07 irw*
-rwxr-xr-x 1 root root 65921 Dec 29 15:07 irxevent*

Tiap berkas memiliki di direktori ini memiliki fungsi fungsi tersendiri yang berkaitan dengan translasi kode sinyal yang dikeluarkan oleh transmitter.

LANGKAH 5: TEST!
Tentunya tak afdol jika paket yang telah berhasil kita pasang belum kita uji untuk melihat berhasil atau tidaknya jerih payah kita.
Untuk itu kita memerlukan salah satu program yang terletak di /usr/local/bin/ yaitu 'irw'
setelah irw kita jalankan, kita bisa mengarahkan remot kontrol kita ke arah receiver spot dan menekan beberapa tombol untuk memastikan semua telah berjalan dengan baik. Untuk keluar tekan tombol - secara bersamaan.

Jika anda melihat algoritma seperti yang terlihat di bawah, maka anda boleh tersenyum barang sejenak, karena anda telah berhasil menginisialisasikan perangkat anda. SELAMAT!!

# irw
0000000061d6807f
0000000061d640bf
0000000061d6c03f
0000000061d620df
0000000061d6a05f
0000000061d6609f
0000000061d6e01f
0000000061d610ef
0000000061d6906f
0000000061d600ff
0000000061d650af
0000000061d6e817
0000000061d6d02f
0000000061d68877
0000000061d6f00f
0000000061d6c837
0000000061d608f7
0000000061d69867
0000000061d66897
0000000061d628d7
0000000061d618e7
0000000061d630cf
0000000061d67887
0000000061d6d827
0000000061d6f807
0000000061d6708f
0000000061d6b847

Sekarang bagaimana caranya mengkonversi nilai nilai di atas menjadi simbol yang dimengerti?
Mudah saja, anda masih ingat dengan paket remotes.tar.bz2 yang anda download sebelumnya?
Masuklah sekali lagi ke direktori /tmp/ kemudian masuk ke direktori remotes/
# cd /tmp/remotes/

Lalu lihat-lihatlah isinya, barangkali anda tertarik dengan nama-nama vendor yang bisa jadi memproduksi remot kontrol infra merah anda :)
# ls -l

total 1108
drwxr-sr-x 2 26674 6444 4096 Nov 18 2002 3m/
drwxr-sr-x 2 26674 6444 4096 Jul 19 2003 abit/
drwxr-sr-x 2 26674 6444 4096 Nov 18 2002 provideo/
drwxr-sr-x 2 26674 6444 4096 Apr 12 2004 zenith/
drwxr-sr-x 2 26674 6444 4096 Nov 18 2002 zoltrix/

Saya melihat vendor remot kontrol infra merah saya, yaitu provideo, ini bisa saja berbeda dengan remot kontrol infra merah anda.
Oleh karena itu saya membuka direkori provideo tersebut

# cd provideo/
# ls -l

total 4
-rw-r--r-- 1 26674 6444 2468 May 27 2000 PV951

Ada sebuah berkas bernama PV951 yang merupakan berkas konfigurasi untuk remot kontrol infra merah saya, apabila saya melihat isinya, maka akan terlihat isinya sebagai berikut:

# cat PV951
#
# this config file was automatically generated
# using lirc-0.6.1 on Wed May 24 23:10:08 2000
#
# contributed by BartOwl
#
# brand: 3DeMON (from J.Sir Computer inc.) http://www.jsir.com/
# model: PV951 (http://www.jsir.com/pv951.htm)
# supported devices: Remote control for this TV-capture card
#
# The manufacturer seems to be ProVideo: http://www.provideo.com.tw
# Funny: they have Linux "drivers" for this card...
#

begin remote
name PV951
bits 16
flags SPACE_ENC|CONST_LENGTH
eps 30
aeps 100
header 9067 4482
one 597 1650
zero 597 529
ptrail 584
repeat 9068 2232
pre_data_bits 16
pre_data 0x61D6
gap 107983
repeat_bit 0
begin codes

power 0x00000000000048B7
air/cbl 0x000000000000D02F
pc/tv 0x0000000000008877
source 0x000000000000F00F
mts 0x000000000000C837
mute 0x00000000000008F7
1 0x000000000000807F
2 0x00000000000040BF
3 0x000000000000C03F
4 0x00000000000020DF
5 0x000000000000A05F
6 0x000000000000609F
7 0x000000000000E01F
8 0x00000000000010EF
9 0x000000000000906F
0 0x00000000000000FF
+100 0x00000000000050AF
ch_rtn 0x000000000000E817
ch+ 0x00000000000058A7
ch- 0x0000000000007887
vol+ 0x000000000000D827
vol- 0x000000000000F807
func 0x0000000000009867
ttx 0x000000000000B04F
pg+ 0x000000000000708F
pg- 0x000000000000B847
cc 0x0000000000006897
sync 0x00000000000028D7
ch+- 0x00000000000018E7
autoscan 0x00000000000030CF
end codes
end remote

Inilah dia translasi kode algoritma remot kontrol infra merah anda,
langkah selanjutnya adalah menyalin berkas tersebut ke direktori /etc/ dan mengganti nama PV951 menjadi 'lircd.conf'
# cp PV951 /etc/lircd.conf

Jalankan kembali irw dan ulangi lagi langkah sebelumnya dengan remot kontrol infra merah anda

# irw

0000000061d6807f 00 1 PV951
0000000061d640bf 00 2 PV951
0000000061d6c03f 00 3 PV951
0000000061d620df 00 4 PV951
0000000061d6a05f 00 5 PV951
0000000061d6609f 00 6 PV951
0000000061d6e01f 00 7 PV951
0000000061d610ef 00 8 PV951
0000000061d6906f 00 9 PV951
0000000061d600ff 00 0 PV951
0000000061d650af 00 +100 PV951
0000000061d6e817 00 ch_rtn PV951
0000000061d6d02f 00 air/cbl PV951
0000000061d68877 00 pc/tv PV951
0000000061d6f00f 00 source PV951
0000000061d6c837 00 mts PV951
0000000061d608f7 00 mute PV951
0000000061d69867 00 func PV951
0000000061d66897 00 cc PV951
0000000061d628d7 00 sync PV951
0000000061d618e7 00 ch+- PV951
0000000061d630cf 00 autoscan PV951
0000000061d67887 00 ch- PV951
0000000061d6d827 00 vol+ PV951
0000000061d6f807 00 vol- PV951
0000000061d6708f 00 pg+ PV951
0000000061d6b847 00 pg- PV951

Agak terlihat sedikit berbeda bukan? Ya, kini remot kontrol infra merah anda telah siap digunakan untuk tugas tugas yang lebih berat dari sekedar memindahkan saluran TV semata. :)


DRIVER MODEL

  |  +------------------------------------------------------+
S |  | 'gpm -t msc -m /dev/lircm' or a well configured X    |
O |  | (see section 'Configuring lircmd') for details       |
F |  +--------------+---------------------------------------+
T |                 |
W |   /dev/lircm (named pipe (FIFO) ==> one connection)
A |                 |
R |     +-----------+-----------+   +-------------------------------+
E |     | mouse daemon (lircmd) |   | tools (irexec, irxevent, ...) |
  |     | configured with       |   | configured with ~/.lircrc     |
  |     | lircmd.conf           |   |                               |
  |     +-----------+-----------+   +-----------+-------------------+
  |                 |                           |
  |                 +-------------+-------------+
  |                               |
  |                       /dev/lircd (socket ==> multiple connections)
  |                               |
S |              +----------------+--------------------------+
O |              | decoder daemon (lircd), irrecord or mode2 |    TCP/IP
F |              | lircd is configured through lircd.conf    +---  port
T | User space   |                                           |     8765
W |              +------------------+------------------------+
A |                                 |
R |                                 |
E |                                 |
  |                                 |
  |                                 |
  |                                 |
  +---------------------------------+----------------------------------
  | Kernel space                    |              (character device
  |                                 |                  driver ==>
  |                    +------------+----------+    one connection)
  |                    |                       | 
  |                /dev/lirc               /dev/ttySx
  |                    |                       |
  |       +------------+-------------+   +-----+---------------+
  |       |  LIRC device driver      |   | Linux serial driver |
  |       | (with ioctl-interface)   |   |                     |
  |       +------------+-------------+   +----------+----------+
  |                    |                            |
--+--------------------+----------------------------+------------------
  |                    |                            |
  |         +----------+------------+               |
  |         |                       |               |
  | +-------+----------------+ +----+-----+ +-------+-----------------+
H | | serial / parallel port | | TV cards | | Irman/RemoteMaster/etc. |
W | +------------------------+ +----------+ +-------------------------+
  |

APLIKASI YANG BISA DIGUNAKAN BERSAMA LIRC
sebenarnya aplikasi yang bisa disimbiosa dengan LIRC tak terbatas pada aplikasi multimedia umum seperti XMMS, Mplayer, Kradio, TV-Time, dll. Tapi juga bisa menangani aplikasi non multimedia seperti web browser, home automation program, bash scripts, men-shutdown komputer anda, dan bahkan mengeksekusi semua perintah linux!.


Anda pikir saya membual?
Mari kita buktikan sendiri. Asumsi bahwa anda telah melewati semua proses kompilasi, instalasi, dan konfigurasi dengan baik, adalah syarat mutlak :)

KONFIGURASI LIRCRC
Apa yang anda lakukan dengan remot kontrol infra merah, sangat tergantung pada berkas /etc/lircrc, berkas ini menentukan semua perilaku remot kontrol infra merah anda. Berkas ini belum ada jika anda belum membuatnya sendiri, karenanya buatlah sebuah berkas yang dimaksud dengan perintah:

# echo #berkas /etc/lircrc >> /etc/lircrc

Kembali beberapa langkah ke belakang sejenak untuk memikirkan program apa yang akan dijalankan dengan remot kontrol infra merah anda.
Ada ide?

Hmmm, bagaimana untuk permulaannya jika tombol satu (1) di remot kontrol infra merah anda bisa menyapa anda di konsol? Ide yang bagus bukan
Mari kita mulai. Suntinglah berkas /etc/lircrc anda dengan editor favorit anda (saya lebih menyukai vi karena kesederhanaannya)

# vi /etc/lircrc

Tekanlah huruf pada tuts keyboard untuk mulai menyunting, lalu salinlah baris berikut ini
#berkas /etc/lircrc
begin
button = 1
prog = irexec
remote = PV951
config = echo Halo!!!
end

simpanlah berkas anda dengan menekan tuts

sekarang berikan perintah ini
# irexec

Dan tekanlah tombol 1 di remot kontrol infra merah anda, dan anda akan melihat:
# irexec
Halo!!!

Tekan - untuk keluar dar program irexec
Mengapa hal di atas bisa terjadi?
Mari kita lihat kembali konfigurasi /etc/lircrc berikut penjelasannya

#berkas /etc/lircrc
begin ---> memulai argumen
button = 1 ---> tombol di remot kontrol infra merah yang digunakan
prog = irexec ---> program yang menerima perintah
remote = PV951 ---> jenis remot kontrol infra merah
config = echo Halo!!! ---> aplikasi yang akan dijalankan saat tombol ditekan
end ---> akhir argumen

Argumen 'begin' mengawali konfigurasi per tombol, dan argumen 'end' mengakhirinya.
'button' adalah tombol yang telah terkonfigurasi dalam /etc/lircd.conf
konfigurasi tombol remot kontrol infra merah PV951 jika diuraikan adalah sbb:
perhatikan kolom button, di sana terdapat bermacam tombol sesuai dengan remot kontrol infra merah anda.

Baiklah, mungkin anda bosan dengan teori dan ingin segera mengeluarkan kelinci dari topi sulap :)
mari kita sunting kembali berkas /etc/lircrc, dan berikan argumen berikut di baris 'config='
#berkas /etc/lircrc
begin
button = 1
prog = irexec
remote = PV951
config = firefox http://www.google.com/
end

Simpanlah berkas tersebut kembali

lalu jalankan kembali irexec dan tekanlah tombol 1 di remot kontrol infra merah anda, dan keajaiban akan terjadi (itu jika anda tidak mengidap penyakit jantung dan komputer anda terhubung ke internet) :)
tentu saja anda bisa menambahkan argumen argumen lain sesuka anda selama reserved button masih tersedia di remot kontrol infra merah anda, contohnya adalah sbb:

#berkas /etc/lircrc
begin
button = 1
prog = irexec
remote = PV951
config = firefox http://www.google.com/
end
begin
button = 2
prog = irexec
remote = PV951
config = xmms
end

Dan seterusnya...
demikianlah akhir tutorial konfigurasi LIRC ini semoga berguna bagi anda yang mempelajarinya
baca juga tutorial mengenai penggunaan LIRC lebih lanjut dengan aplikasi multimedia seperti XMMS, TV-Time, dan KRadio.

Let the good time rolls


Comments (0)
Only registered users can write comments!