LIRC Device Examples
Related articles
This article includes device specific examples of LIRC function configurations.
Contents
Asus DH Deluxe series motherboard
Check the output of:
$ cat /dev/usb/hiddevX
where X is 0,1 or bigger, and press some buttons on remote. If characters result, then the device is working, follow steps:
1. In file /etc/conf.d/lircd.conf add:
LIRC_DRIVER="dvico"
2. Restart lirc.service.
ASRock ION series (Nuvoton) quickstart
$ ln -s /usr/share/lirc/remotes/lirc_wb677/lircd.conf.wb677 /etc/lirc/lircd.conf # systemctl restart lirc
Logitech Wireless Presenter R400
The R400 Presenter can be used with default configuration from devinput. Follow the following steps to be able to use the following buttons: KEY_PAGEDOWN KEY_PAGEUP KEY_DISPLAYTOGGLE KEY_PRESENTATION.
1. Copy the default devinput configuration which should work out of the box for the R400:
# cp /usr/share/lirc/devinput/lircd.conf.devinput /etc/lirc/lircd.conf
2. Create the following Udev rule to create the correct symlink whenever you connect your presenter:
/etc/udev/rules.d/99-logitech-r400-lirc.rules
[Service] ExecStart= ExecStart=/usr/bin/lircd --driver=devinput --device=/dev/input/ir
3. Create the lirc service configuration file to start the lirc service with the correct settings for your presenter whenever you want to transform it into a remote control:
/etc/systemd/system/lirc.service.d/logitech-r400.conf
[Service] ExecStart= ExecStart=/usr/bin/lircd --driver=devinput --device=/dev/input/ir
3. Start lirc and use irw to test whether your keys are recognised:
$ irw 000000008001006d 00 KEY_PAGEDOWN devinput 0000000080010068 00 KEY_PAGEUP devinput 00000000800101af 00 KEY_DISPLAYTOGGLE devinput 00000000800101a9 00 KEY_PRESENTATION devinput
4. Create your program-specific configurations as described here.
Serial Port "Home Brew" IR Receiver
1. Create a udev rule to give non-privleged users read/write access to the serial port. In this example, ttyS0 is used.
/etc/udev/rules.d/z98-serial.rules
# For serial port ttyS0 and LIRC KERNEL=="ttyS0",SUBSYSTEM=="tty",DRIVERS=="serial",MODE="0666"
2. Create the needed modprobe configs
/etc/modules-load.d/lirc_serial.conf
lirc_serial
/etc/modprobe.d/lirc_serial.conf
install lirc_serial /usr/bin/setserial /dev/ttyS0 uart none && /sbin/modprobe --first-time --ignore-install lirc_serial options lirc_serial type=0 remove lirc_serial /sbin/modprobe -r --first-time --ignore-remove lirc_serial && /sbin/modprobe -r lirc_dev
3. Install a custom systemd service file.
/etc/systemd/system/lirc.service
[Unit] Description=Linux Infrared Remote Control After=network.target [Service] Type=simple PIDFile=/run/lirc/lircd.pid ExecStartPre=/bin/rm -f /dev/lirc /dev/lircd /var/run/lirc/lircd ExecStart=/usr/sbin/lircd -n -r -P /run/lirc/lircd.pid -d /dev/lirc0 -o /run/lirc/lircd ExecStartPost=/usr/bin/ln -sf /run/lirc/lircd /dev/lircd ExecStartPost=/usr/bin/ln -sf /dev/lirc0 /dev/lirc ExecReload=/bin/kill -SIGHUP $MAINPID [Install] WantedBy=multi-user.target
4. We still need the default tmpfiles to be created, so copy that config file to /etc/tmpfiles.d/lirc.conf.
# cp -a /usr/lib/tmpfiles.d/lirc.conf /etc/tmpfiles.d/lirc.conf
5. Create a ~/.lircrc or a /etc/lirc/lircrc file for system wide use.
6. Enable lirc.service and reboot or load the lirc_serial kernel module and start lirc.service.
PS3 Bluetooth BD remote controller
1. Create a udev rule to symlink /dev/input/bdremote -> /dev/input/event*. Input devices like /dev/input/event12 might come up as another device after a reboot.
/etc/udev/rules.d/95-bd-remote.rules
# symlink to /dev/input/event*
KERNEL=="event*",SUBSYSTEM=="input",ATTRS{name}=="BD Remote Control",SYMLINK+="input/bdremote"
2. Reload udev rules.
# udevadm control --reload-rules
3.Edit lirc service parameters.
/etc/conf.d/lircd.conf
# # Parameters for lirc daemon # LIRC_DEVICE="/dev/input/bdremote" LIRC_DRIVER="devinput" LIRC_EXTRAOPTS=""
4.Create keymap config file.
/etc/lirc/lircd.conf.d/ps3.bdremote.lircd.conf
# Please make this file available to others
# by sending it to <lirc@bartelmus.de>
#
# this config file was automatically generated
# using lirc-0.8.4a(devinput) on Sun May 3 19:43:29 2009
#
# contributed by
#
# brand: PS3
# model no. of remote control:
# devices being controlled by this remote:
#
begin remote
name ps3
bits 32
eps 30
aeps 100
one 0 0
zero 0 0
gap 102974
toggle_bit_mask 0x8001019C
begin codes
1 0x80010002
2 0x80010003
3 0x80010004
4 0x80010005
5 0x80010006
6 0x80010007
7 0x00010008
8 0x80010009
9 0x8001000A
0 0x8001000B
eject 0x800100A1
audio 0x80010188
angle 0x80010173
subtitle 0x80010172
clear 0x80010163
time 0x80010167
red 0x0001018E
green 0x8001018F
yellow 0x80010190
blue 0x80010191
display 0x80010166
top_menu 0x8001008B
popup 0x800101B6
return 0x80010001
options 0x80010165
back 0x8001009E
view 0x80010177
x 0x80010100
enter 0x8001001C
up 0x80010067
down 0x8001006C
left 0x00010069
right 0x8001006A
l1 0x80010136
l2 0x80010138
l3 0x8001013D
r1 0x80010137
r2 0x80010139
r3 0x8001013E
select 0x80010161
start 0x8001013B
ps 0x800100AC
rew 0x800100A8
play 0x800100CF
ffw 0x8001009F
prev 0x0001019C
stop 0x80010080
next 0x80010197
slow_rew 0x800101B4
pause 0x80010077
slow_ffw 0x800101B5
end codes
end remote
5.Restart lirc service.
# systemctl restart lirc
6. Testing the remote
# irw
000000008001009f 00 ffw ps3 000000008001001c 00 enter ps3 00000000800100a1 00 eject ps3 0000000080010005 00 4 ps3 0000000080010190 00 yellow ps3
MCEUSB
Configuration file can be found here.
Streamzap USB Remote
Configuration files for LIRC as well as mplayer, mythtv and kodi are available for this remote at graysky's github repo.
X10
There is a dedicated wiki page with information about X10