Bonjour,
Je rencontre quelques difficultés à faire fonctionner LIRC avec ma télécommande (une STM PVR-1) et un récepteur infrarouge (par USB).
Voici ce que j'ai fait:
1)
yum install lirc lirc-remotes
2) Configurer le fichier /etc/sysconfig/lirc avec:
- LIRC_DRIVER="devinput": cas du récepteur infrarouge USB.
- LIRC_DEVICE: chemin du device lirc. Dans mon cas, c'est "/dev/input/by-id/usb-Formosa21_eHome_Infrared_Transceiver_0000DF0A-event-if00"
- LIRCD_IR_DEVICE= récupérable a partir de la commande 'dmesg |grep lirc'
[root@localhost fedora]# dmesg |grep lirc
[294434.782326] lirc_dev: IR Remote Control driver registered, major 248
[294434.784954] rc rc0: lirc_dev: driver ir-lirc-codec (mceusb) registered at minor = 0
[294972.228297] rc rc1: lirc_dev: driver ir-lirc-codec (mceusb) registered at minor = 0
[root@localhost fedora]#
[root@localhost fedora]# cat /etc/sysconfig/lirc
# Note: in addition to these parameters, you need to have working -*- sh -*-
# configuration file for lircd (and lircmd if enabled).
# Options to lircd(8). Typically, this will be empty, as which driver to use
# should be specified using the LIRC_DRIVER variable below.
LIRCD_OPTIONS=""
# The infrared receiver (and/or transmitter) driver to be used by lircd(8),
# similar to passing "-H driver" to lircd(8).
# Run "/usr/sbin/lircd -H help" to get a listing of supported drivers.
#LIRC_DRIVER="default"
LIRC_DRIVER="devinput"
# Which lirc device will be used by lircd(8).
# This is the same as passing "-d device" to lircd. It must be set.
#LIRC_DEVICE="/dev/lirc0"
LIRC_DEVICE="/dev/input/by-id/usb-Formosa21_eHome_Infrared_Transceiver_0000DF0A-event-if00"
# Options to lircmd(8). lircmd always runs with --nodaemon added
# to LIRCMD_OPTIONS.
LIRCMD_OPTIONS=""
# The infrared device used by lirc, if any. If this is set, lircd will
# enable the lirc protocol and disable kernel built-in handling using
# "echo lirc > /sys/class/rc/$LIRCD_IR_DEVICE/protocols" at startup.
# If unset, this is ignored.
# - The common case when there is just one ir device: LIRCD_IR_DEVICE="rc0".
# - Non-IR devices e. g., RF ones typically don't need this set.
# - If not set when required, the typical symptom is duobled key-presses.
# - If installing the lirc-disable-kernel-rc subpackage this setting is not
# needed.
#LIRCD_IR_DEVICE=""
LIRCD_IR_DEVICE="rc1"
[root@localhost fedora]#
3) Créer un fichier /etc/lirc/lircd.conf (je l'ai récupéré d'un fournisseur, il doit être correcte)
# contributed by angelo castello
#
# note: this config file has been deduced starting from the
# raw codes provided to run mode2 utility.
#
# brand: futarque
begin remote
name futarque
bits 8
flags SPACE_ENC|CONST_LENGTH
eps 30
aeps 100
header 8048 3898
one 555 1436
zero 555 439
gap 113123
ptrail 555
pre_data_bits 8
pre_data 0x54
pre 570 3890
begin codes
MUTE 0x70
EXIT 0xA8
POWER 0xF0
CHANNEL_UP 0x50
CHANNEL_DOWN 0xD0
VOLUME_UP 0x30
VOLUME_DOWN 0xB0
OK 0x98
FAVORITES 0x04
TEXT 0x68
EPG 0xC8
BACK 0x48
MENU 0x88
1 0x00
2 0x80
3 0x40
4 0xC0
5 0x20
6 0xA0
7 0x60
8 0xE0
9 0x10
0 0x90
PAUSE 0x84
INFO 0x38
RED 0xE8
GREEN 0x08
YELLOW 0x28
BLUE 0x78
UP 0xD8
DOWN 0xB8
REWIND 0x44
FASTFORWARD 0x24
PLAYPAUSE 0xC4
STOP 0x64
RECORD 0xA4
AUDIO 0xE4
TAPE 0x14
DVD 0x94
CAPITAL_A 0xF8
CAPITAL_B 0x54
end codes
end remote
# brand: STM PVR-1
begin remote
name stm_pvr_1
bits 16
flags SPACE_ENC|CONST_LENGTH
eps 30
aeps 150
header 9000 4500
one 572 1700
zero 572 572
ptrail 572
repeat 9000 2200
pre_data_bits 16
pre_data 0xFE
gap 41000
begin codes
POWER 0x00ff
FAVORITES 0x7887
MUTE 0x28d7
0 0x708F
1 0xc03f
2 0x40bf
3 0x807f
4 0xe01f
5 0x609f
6 0xa05f
7 0xd02f
8 0x50af
9 0x906f
INFO 0x38c7
SUBTITLE 0xe817
MENU 0x9867
EXIT 0x20df
EPG 0xa857
BACK 0x48b7
CURSOR_UP 0x58a7
CURSOR_DOWN 0xd827
CURSOR_LEFT 0x8877
CURSOR_RIGHT 0xb04f
OK 0x10ef
VOLUME_UP 0x22dd
VOLUME_DOWN 0x8a75
CHANNEL_UP 0x12ed
CHANNEL_DOWN 0x4ab5
TEXT 0xf00f
RADIO 0x926d
ZOOM 0x6897
AUDIO 0x08f7
RED 0x42bd
GREEN 0xa25d
YELLOW 0x827d
BLUE 0x02fd
CUSTOM0 0x52ad
CUSTOM1 0x30cf
PLAY 0x629d
PAUSE 0xb24d
PREVIOUS 0xc837
NEXT 0xf807
REWIND 0x32cd
FASTFORWARD 0x0af5
CUSTOM2 0x7a85
CUSTOM3 0xb847
CUSTOM4 0x3ac5
CUSTOM5 0xba45
end codes
end remote
# brand: STM DTV-2
begin remote
name stm_dtv_2
flags SHIFT_ENC|CONST_LENGTH
bits 13
aeps 150
one 850 850
zero 850 850
plead 850
gap 67800
toggle_bit 2
begin codes
POWER 0x100C
FAVORITES 0x1015
AUX 0x1038
1 0x1001
2 0x1002
3 0x1003
4 0x1004
5 0x1005
6 0x1006
7 0x1007
8 0x1008
9 0x1009
PERIOD 0x1024
0 0x103E
PREVIOUS 0x1023
MENU 0x1016
INFO 0x100F
EPG 0x101E
EXIT 0x1018
UP 0x1017
DOWN 0x101D
LEFT 0x1019
RIGHT 0x101B
OK 0x101A
VOLUME_UP 0x1010
VOLUME_DOWN 0x1011
CHANNEL_UP 0x1020
CHANNEL_DOWN 0x1021
TEXT 0x102E
SUBTITLE 0x103C
CUSTOM0 0x1014
CUSTOM1 0x102B
RED 0x1028
GREEN 0x102A
YELLOW 0x102F
BLUE 0x1030
CUSTOM2 0x1022
INTERNET 0x1027
CUSTOM3 0x102C
AUDIO 0x1025
RECORD 0x102D
PLAYPAUSE 0x1029
STOP 0x1026
SCREEN 0x101C
MUTE 0x100d
CUSTOM6 0x101F
CUSTOM7 0x100B
CUSTOM8 0x100E
end codes
end remote
4) (re)démarrer le service LIRCD
service lircd restart
J'observe les logs suivants au démarrage de du service LIRCD:
Apr 10 17:31:49 localhost systemd[1]: Starting LIRC Infrared Signal Decoder...
Apr 10 17:31:49 localhost systemd[1]: Started LIRC Infrared Signal Decoder.
Apr 10 17:31:49 localhost sh[4857]: lircd-0.9.0[4857]: min_gap_length is 0 for 'stm_pvr_1' remote
Apr 10 17:31:49 localhost lircd-0.9.0[4857]: min_gap_length is 0 for 'stm_pvr_1' remote
Apr 10 17:31:49 localhost sh[4857]: lircd-0.9.0[4857]: lircd(default) ready, using /var/run/lirc/lircd
Apr 10 17:31:49 localhost lircd-0.9.0[4857]: lircd(default) ready, using /var/run/lirc/lircd
Voici le status de lircd
[root@localhost fedora]# service lircd status
Redirecting to /bin/systemctl status lircd.service
lircd.service - LIRC Infrared Signal Decoder
Loaded: loaded (/usr/lib/systemd/system/lircd.service; disabled)
Active: active (running) since jeu. 2014-04-10 11:47:39 CEST; 3h 22min ago
Process: 30486 ExecStopPost=/bin/sh -c test -n "${LIRCD_IR_DEVICE}" && echo -lirc > /sys/class/rc/${LIRCD_IR_DEVICE}/protocols || : (code=exited, status=0/SUCCESS)
Process: 30499 ExecStartPre=/bin/sh -c test -n "${LIRCD_IR_DEVICE}" && echo lirc > /sys/class/rc/${LIRCD_IR_DEVICE}/protocols || : (code=exited, status=0/SUCCESS)
Main PID: 30501 (lircd)
CGroup: name=systemd:/system/lircd.service
└─30501 /usr/sbin/lircd --driver devinput --device /dev/input/by-id/usb-Formosa21_eHome_Infrared_Transceiver_0000DF0A-...
avril 10 14:05:20 localhost.localdomain lircd-0.9.0[30501]: removed client
avril 10 14:05:20 localhost.localdomain lircd-0.9.0[30501]: closing '/dev/input/by-id/usb-Formosa21_eHome_Infrared_Transceiv...if00'
avril 10 14:54:36 localhost.localdomain sh[30501]: lircd-0.9.0[30501]: accepted new client on /var/run/lirc/lircd
avril 10 14:54:36 localhost.localdomain sh[30501]: lircd-0.9.0[30501]: initializing '/dev/input/by-id/usb-Formosa21_eHome_I...-if00'
avril 10 14:54:36 localhost.localdomain lircd-0.9.0[30501]: accepted new client on /var/run/lirc/lircd
avril 10 14:54:36 localhost.localdomain lircd-0.9.0[30501]: initializing '/dev/input/by-id/usb-Formosa21_eHome_Infrared_Tran...if00'
avril 10 15:02:32 localhost.localdomain sh[30501]: lircd-0.9.0[30501]: removed client
avril 10 15:02:32 localhost.localdomain sh[30501]: lircd-0.9.0[30501]: closing '/dev/input/by-id/usb-Formosa21_eHome_Infrar...-if00'
avril 10 15:02:32 localhost.localdomain lircd-0.9.0[30501]: removed client
avril 10 15:02:32 localhost.localdomain lircd-0.9.0[30501]: closing '/dev/input/by-id/usb-Formosa21_eHome_Infrared_Transceiv...if00'
[root@localhost fedora]#
Quelques traces de la commande dmesg:
[294434.720031] Registered IR keymap rc-rc6-mce
[294434.720281] input: Media Center Ed. eHome Infrared Remote Transceiver (147a:e03e) as /devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1.4/2-1.4:1.0/rc/rc0/input19
[294434.720836] rc0: Media Center Ed. eHome Infrared Remote Transceiver (147a:e03e) as /devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1.4/2-1.4:1.0/rc/rc0
[294434.764589] IR JVC protocol handler initialized
[294434.767137] IR NEC protocol handler initialized
[294434.768830] IR SANYO protocol handler initialized
[294434.768887] IR RC5(x) protocol handler initialized
[294434.770038] input: MCE IR Keyboard/Mouse (mceusb) as /devices/virtual/input/input20
[294434.773465] IR MCE Keyboard/mouse protocol handler initialized
[294434.773473] IR RC6 protocol handler initialized
[294434.774251] IR Sony protocol handler initialized
[294434.782326] lirc_dev: IR Remote Control driver registered, major 248
[294434.784954] rc rc0: lirc_dev: driver ir-lirc-codec (mceusb) registered at minor = 0
[294434.784960] IR LIRC bridge handler initialized
[294434.840064] mceusb 2-1.4:1.0: Registered Formosa21 eHome Infrared Transceiver with mce emulator interface version 2
[294434.840070] mceusb 2-1.4:1.0: 0 tx ports (0x0 cabled) and 1 rx sensors (0x1 active)
[294434.840122] usbcore: registered new interface driver mceusb
[294946.868152] usb 2-1.4: USB disconnect, device number 7
[294972.133325] usb 2-1.4: new full-speed USB device number 8 using ehci-pci
[294972.222194] usb 2-1.4: New USB device found, idVendor=147a, idProduct=e03e
[294972.222203] usb 2-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[294972.222208] usb 2-1.4: Product: eHome Infrared Transceiver
[294972.222213] usb 2-1.4: Manufacturer: Formosa21
[294972.222217] usb 2-1.4: SerialNumber: 0000DF0A
[294972.225464] Registered IR keymap rc-rc6-mce
[294972.225654] input: Media Center Ed. eHome Infrared Remote Transceiver (147a:e03e) as /devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1.4/2-1.4:1.0/rc/rc1/input21
[294972.226162] rc1: Media Center Ed. eHome Infrared Remote Transceiver (147a:e03e) as /devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1.4/2-1.4:1.0/rc/rc1
[294972.226653] input: MCE IR Keyboard/Mouse (mceusb) as /devices/virtual/input/input22
[294972.228297] rc rc1: lirc_dev: driver ir-lirc-codec (mceusb) registered at minor = 0
[294972.339048] mceusb 2-1.4:1.0: Registered Formosa21 eHome Infrared Transceiver with mce emulator interface version 2
[294972.339055] mceusb 2-1.4:1.0: 0 tx ports (0x0 cabled) and 1 rx sensors (0x1 active)
[294972.341763] hid-generic 0003:147A:E03E.0009: hiddev0,hidraw3: USB HID v1.00 Device [Formosa21 eHome Infrared Transceiver] on usb-0000:00:1d.7-1.4/input1
[298008.035544] wlp4s0: deauthenticating from 00:16:b6:3a:a4:f2 by local choice (reason=3)
LIRCD est bien lancé
[root@localhost fedora]# ps aux |grep lirc
root 418 0.0 0.0 112644 924 pts/3 S+ 15:07 0:00 grep --color=auto lirc
root 30501 0.0 0.0 47996 2164 ? Ss 11:47 0:00 /usr/sbin/lircd --driver devinput --device /dev/input/by-id/usb-Formosa21_eHome_Infrared_Transceiver_0000DF0A-event-if00 --nodaemon
Voici le résultat de la commande lsmod:
[root@localhost fedora]# lsmod |grep lirc
ir_lirc_codec 13021 0
lirc_dev 19504 1 ir_lirc_codec
rc_core 26896 12 lirc_dev,ir_lirc_codec,ir_rc5_decoder,ir_nec_decoder,ir_sony_decoder,mceusb,ir_mce_kbd_decoder,ir_jvc_decoder,ir_rc6_decoder,ir_sanyo_decoder,rc_rc6_mce
[root@localhost fedora]#
Lorsque je test la gestion de l'infrarouge avec la commande evtest, je n'obtiens rien. Aucune touches de la télécommande que j'utilise n'est remontée:
[root@localhost fedora]# evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: Power Button
/dev/input/event1: Lid Switch
/dev/input/event10: HDA Intel Mic
/dev/input/event11: Chicony USB Keyboard
/dev/input/event12: Chicony USB Keyboard
/dev/input/event13: USB OPTICAL MOUSE
/dev/input/event14: Media Center Ed. eHome Infrared Remote Transceiver (147a:e03e)
/dev/input/event15: MCE IR Keyboard/Mouse (mceusb)
/dev/input/event2: Sleep Button
/dev/input/event3: Power Button
/dev/input/event4: AT Translated Set 2 keyboard
/dev/input/event5: SynPS/2 Synaptics TouchPad
/dev/input/event6: Video Bus
/dev/input/event8: Video WebCam
/dev/input/event9: HDA Intel Headphone
Select the device event number [0-15]: 14
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x147a product 0xe03e version 0x1201
Input device name: "Media Center Ed. eHome Infrared Remote Transceiver (147a:e03e)"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 28 (KEY_ENTER)
Event code 103 (KEY_UP)
Event code 105 (KEY_LEFT)
Event code 106 (KEY_RIGHT)
Event code 108 (KEY_DOWN)
Event code 111 (KEY_DELETE)
Event code 113 (KEY_MUTE)
Event code 114 (KEY_VOLUMEDOWN)
Event code 115 (KEY_VOLUMEUP)
Event code 119 (KEY_PAUSE)
Event code 128 (KEY_STOP)
Event code 142 (KEY_SLEEP)
Event code 161 (KEY_EJECTCD)
Event code 164 (KEY_PLAYPAUSE)
Event code 167 (KEY_RECORD)
Event code 168 (KEY_REWIND)
Event code 174 (KEY_EXIT)
Event code 207 (KEY_PLAY)
Event code 208 (KEY_FASTFORWARD)
Event code 210 (KEY_PRINT)
Event code 212 (KEY_CAMERA)
Event code 224 (KEY_BRIGHTNESSDOWN)
Event code 225 (KEY_BRIGHTNESSUP)
Event code 226 (KEY_MEDIA)
Event code 352 (KEY_OK)
Event code 356 (KEY_POWER2)
Event code 358 (KEY_INFO)
Event code 365 (KEY_EPG)
Event code 366 (KEY_PVR)
Event code 368 (KEY_LANGUAGE)
Event code 369 (KEY_TITLE)
Event code 370 (KEY_SUBTITLE)
Event code 372 (KEY_ZOOM)
Event code 373 (KEY_MODE)
Event code 377 (KEY_TV)
Event code 385 (KEY_RADIO)
Event code 386 (KEY_TUNER)
Event code 387 (KEY_PLAYER)
Event code 389 (KEY_DVD)
Event code 392 (KEY_AUDIO)
Event code 393 (KEY_VIDEO)
Event code 398 (KEY_RED)
Event code 399 (KEY_GREEN)
Event code 400 (KEY_YELLOW)
Event code 401 (KEY_BLUE)
Event code 402 (KEY_CHANNELUP)
Event code 403 (KEY_CHANNELDOWN)
Event code 407 (KEY_NEXT)
Event code 412 (KEY_PREVIOUS)
Event code 425 (KEY_PRESENTATION)
Event code 512 (KEY_NUMERIC_0)
Event code 513 (KEY_NUMERIC_1)
Event code 514 (KEY_NUMERIC_2)
Event code 515 (KEY_NUMERIC_3)
Event code 516 (KEY_NUMERIC_4)
Event code 517 (KEY_NUMERIC_5)
Event code 518 (KEY_NUMERIC_6)
Event code 519 (KEY_NUMERIC_7)
Event code 520 (KEY_NUMERIC_8)
Event code 521 (KEY_NUMERIC_9)
Event code 522 (KEY_NUMERIC_STAR)
Event code 523 (KEY_NUMERIC_POUND)
Event type 4 (EV_MSC)
Event code 4 (MSC_SCAN)
Event type 20 (EV_REP)
Properties:
Testing ... (interrupt to exit)
Auriez vous une idée du problème (mauvaise configuration, firmware manquant, module kernel non chargée, ...) ?
En vous remerciant par avance pour votre aide et pour votre retour.
ps: voici le récepteur infrarouge dont je dispose:
http://www.mediahd.fr/14-récepteur-infrarouge-ir605q.html