You are not logged in.
I updated my system today and now all the programs that use lirc(xbmc, mythtv...) all receive double key presses when i hit the button once making menu navigation almost impossible. Ive been using lirc with this remote for the last 6+ months with no issues..it only started doing this when i upgraded my machine today(lirc, the kernel and few other things got upgraded). I tried downgrading lirc to the previous version that worked fine but for whatever reason lirc now depends on the newest kernel and im unable to downgrade lirc without downgrading a bunch of other stuff.
All my key presses show up correctly in irw:
mike@machine:~$ irw
000000037ff07bef 00 VolUp mceusb
000000037ff07bef 01 VolUp mceusb
000000037ff07bee 00 VolDown mceusb
000000037ff07bee 01 VolDown mceusb
000000037ff07bef 00 VolUp mceusb
000000037ff07bef 01 VolUp mceusb
000000037ff07bef 02 VolUp mceusb
lircd.conf:
#
# brand: HP
# model no. of remote control: TSGH-IR01
# devices being controlled by this remote: HP Slimline S3100y
#
# RC-6 config file
#
# source: http://home.hccnet.nl/m.majoor/projects_remote_control.htm
# http://home.hccnet.nl/m.majoor/pronto.pdf
#
# used by: Philips
#
#########
#
# Philips Media Center Edition remote control
# For use with the USB MCE ir receiver
#
# Dan Conti dconti|acm.wwu.edu
#
# Updated with codes for MCE 2005 Remote additional buttons
# *, #, Teletext, Red, Green, Yellow & Blue Buttons
# Note: TV power button transmits no code until programmed.
# Updated 12th September 2005
# Graham Auld - mce|graham.auld.me.uk
#
# Radio, Print, RecTV are only available on the HP Media Center remote control
#
#
# Updated with codes for MCE 2007 Remote additional buttons
# Visualization, Aspect, SlideShow, Eject
# Note:
# Renamed some buttons: DVD->DVDMenu, More->MoreInfo, Star->Asterisk, Hash->Pound
# Note:
# Blue, Yellow, Green, Red, and Teletext buttons do not exist on the HP remote
begin remote
name mceusb
bits 16
flags RC6|CONST_LENGTH
eps 30
aeps 100
header 2667 889
one 444 444
zero 444 444
pre_data_bits 21
pre_data 0x37FF0
gap 105000
toggle_bit 22
rc6_mask 0x100000000
begin codes
#unused by HP remote
Blue 0x00007ba1
Yellow 0x00007ba2
Green 0x00007ba3
Red 0x00007ba4
Teletext 0x00007ba5
#ba6 - bae unused
BA6 0x00007ba6
BA7 0x00007ba7
BA8 0x00007ba8
BA9 0x00007ba9
BAA 0x00007baa
BAB 0x00007bab
BAC 0x00007bac
BAD 0x00007bad
BAE 0x00007bae
Radio 0x00007baf
Print 0x00007bb1
#bb2 - bb4 unused
BB2 0x00007bb2
BB3 0x00007bb3
BB4 0x00007bb4
Videos 0x00007bb5
Pictures 0x00007bb6
RecTV 0x00007bb7
Music 0x00007bb8
TV 0x00007bb9
#bba - bbf unused
BBA 0x00007bba
BBB 0x00007bbb
BBC 0x00007bbc
BBD 0x00007bbd
BBE 0x00007bbe
BBF 0x00007bbf
#bc1 - bca unused
BC1 0x00007bc1
BC2 0x00007bc2
BC3 0x00007bc3
BC4 0x00007bc4
BC5 0x00007bc5
BC6 0x00007bc6
BC7 0x00007bc7
BC8 0x00007bc8
BC9 0x00007bc9
BCA 0x00007bca
Eject 0x00007bcb
SlideShow 0x00007bcc
Visualization 0x00007bcd
#bce - bcf unused
BCE 0x00007bce
BCF 0x00007bcf
#bd1 - bd7 unused
BD1 0x00007bd1
BD2 0x00007bd2
BD3 0x00007bd3
BD4 0x00007bd4
BD5 0x00007bd5
BD6 0x00007bd6
BD7 0x00007bd7
Aspect 0x00007bd8
Guide 0x00007bd9
LiveTV 0x00007bda
DVD 0x00007bdb
#NoGap
Back 0x00007bdc
OK 0x00007bdd
Right 0x00007bde
Left 0x00007bdf
Down 0x00007be0
Up 0x00007be1
#NoGap
Star 0x00007be2
Hash 0x00007be3
#NoGap
Replay 0x00007be4
Skip 0x00007be5
Stop 0x00007be6
Pause 0x00007be7
Record 0x00007be8
Play 0x00007be9
Rewind 0x00007bea
Forward 0x00007beb
#NoGap
ChanDown 0x00007bec
ChanUp 0x00007bed
VolDown 0x00007bee
VolUp 0x00007bef
#NoGap
More 0x00007bf0
Mute 0x00007bf1
Home 0x00007bf2
Power 0x00007bf3
#NoGap
Enter 0x00007bf4
Clear 0x00007bf5
#NoGap
Nine 0x00007bf6
Eight 0x00007bf7
Seven 0x00007bf8
Six 0x00007bf9
Five 0x00007bfa
Four 0x00007bfb
Three 0x00007bfc
Two 0x00007bfd
One 0x00007bfe
Zero 0x00007bff
end codes
end remote
Id really like to get this fixed as soon as possible....my computer is my tv and not having it working properly like it used to is driving me nuts.
Offline
i uninstalled the lirc module and used the new in-kernel one, it's called mceusb, works great.
/edit: sorry, i didnt read your post carefully. i had the same problem as you. i'm using a custom kernel and just built the support for mceusb and IR to LIRC bridge, removing all other protocols options. that solved the issue.
/edit2:
eb64@drama:~$zcat /proc/config.gz | grep _IR_
CONFIG_IR_CORE=y
# CONFIG_IR_NEC_DECODER is not set
# CONFIG_IR_RC5_DECODER is not set
# CONFIG_IR_RC6_DECODER is not set
# CONFIG_IR_JVC_DECODER is not set
# CONFIG_IR_SONY_DECODER is not set
CONFIG_IR_LIRC_CODEC=y
# CONFIG_IR_IMON is not set
CONFIG_IR_MCEUSB=y
# CONFIG_IR_ENE is not set
# CONFIG_IR_STREAMZAP is not set
eb64@drama:~$zcat /proc/config.gz | grep RC_MA
# CONFIG_RC_MAP is not set
maybe see if you can blacklist some of these so you dont have to rebuild your kernel
/edit3: i suspect CONFIG_RC_MAP to be the culprit so maybe you can start with this.
/edit4: is this loaded?
rc-rc6-mce
if yes, blacklist it in rc.conf and see if it helps.
Last edited by bangkok_manouel (2010-11-26 07:10:09)
Offline
ah. i tried adding "!rc-rc6-mce" to the modules array in rc.conf...but when i rebooted it still gets loaded. Not sure how i can make sure it does not get loaded.
Also after playing around with it some lastnight...it seems like its a bug or something. If i hit up or down once it moves twice(in the menus of xbmc and mythtv)....if i hit the down button say 3 times in a row quickly it geeks out and rapid fires prob 30 key presses. Also it does not seem to effect every button. For instance while watching something in xbmc i can hit the info/more button and xbmc brings up a on screen display containing some info about the video....i can hit that button once and it acts normal....and brings up the menu. If i hit pause while watching something....it sends the double button so if i hit pause once...xbmc pauses/unpauses.
Im not any kind of expert with lirc...infact far from it i find lirc to be confusing.....but it really seems like arch linux should have researched this stuff a bit more before pushing out the updates.
Last edited by Wicked0ne (2010-11-26 21:06:19)
Offline
please paste your lsmod
Offline
heres the output from lsmod...it seems ir_core requires it?:
lsmod
Module Size Used by
rfcomm 34874 4
fuse 64131 3
sco 8828 2
bnep 8726 2
l2cap 42585 6 rfcomm,bnep
bluetooth 52419 6 rfcomm,sco,bnep,l2cap
rfkill 15882 3 bluetooth
ip6t_LOG 5815 4
xt_hl 1337 6
nf_conntrack_ipv6 11338 7
ipt_REJECT 2281 1
ipt_LOG 5427 5
xt_multiport 1790 4
xt_limit 2201 12
xt_tcpudp 2567 16
ipt_addrtype 2017 4
xt_state 1231 14
ip6table_filter 1396 1
ip6_tables 18174 2 ip6t_LOG,ip6table_filter
nf_nat_irc 1406 0
nf_conntrack_irc 3443 1 nf_nat_irc
nf_nat_ftp 1636 0
nf_nat 15619 2 nf_nat_irc,nf_nat_ftp
nf_conntrack_ipv4 11229 9 nf_nat
nf_defrag_ipv4 1307 1 nf_conntrack_ipv4
nf_conntrack_ftp 6125 1 nf_nat_ftp
nf_conntrack 57510 8 nf_conntrack_ipv6,xt_state,nf_nat_irc,nf_conntrack_irc,nf_nat_ftp,nf_nat,nf_conntrack_ipv4,nf_conntrack_ftp
iptable_filter 1424 1
ip_tables 17109 1 iptable_filter
x_tables 17160 13 ip6t_LOG,xt_hl,ipt_REJECT,ipt_LOG,xt_multiport,xt_limit,xt_tcpudp,ipt_addrtype,xt_state,ip6table_filter,ip6_tables,iptable_filter,ip_tables
ipv6 281961 31 nf_conntrack_ipv6
nls_utf8 1288 3
cifs 242984 5
fscache 39915 1 cifs
lirc_mceusb 14145 0
ir_lirc_codec 3803 3
lirc_dev 8500 2 lirc_mceusb,ir_lirc_codec
ir_sony_decoder 2283 0
ir_jvc_decoder 2409 0
ir_rc6_decoder 2761 0
rc_rc6_mce 1348 0
usbhid 36325 0
hid 76168 1 usbhid
ir_rc5_decoder 2249 0
ir_nec_decoder 2537 0
mceusb 10703 0
ir_core 14133 9 ir_lirc_codec,ir_sony_decoder,ir_jvc_decoder,ir_rc6_decoder,rc_rc6_mce,ir_rc5_decoder,ir_nec_decoder,mceusb
snd_seq_dummy 1431 0
snd_hda_codec_analog 72140 1
nvidia 10031021 42
snd_seq_oss 28760 0
snd_seq_midi_event 5436 1 snd_seq_oss
snd_seq 50082 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_seq_device 5297 3 snd_seq_dummy,snd_seq_oss,snd_seq
snd_pcm_oss 39157 0
snd_mixer_oss 17106 1 snd_pcm_oss
snd_hda_intel 22285 4
asus_atk0110 10231 0
parport_pc 31480 1
snd_hda_codec 79384 2 snd_hda_codec_analog,snd_hda_intel
snd_hwdep 6110 1 snd_hda_codec
snd_pcm 71921 4 snd_pcm_oss,snd_hda_intel,snd_hda_codec
snd_timer 19265 3 snd_seq,snd_pcm
snd 57562 17 snd_hda_codec_analog,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_timer
soundcore 5969 1 snd
snd_page_alloc 7249 2 snd_hda_intel,snd_pcm
uhci_hcd 21926 0
thermal 12242 0
button 4834 0
ppdev 5870 0
processor 25936 0
ehci_hcd 36860 0
r8169 35678 0
mii 3826 1 r8169
usbcore 137570 6 lirc_mceusb,usbhid,mceusb,uhci_hcd,ehci_hcd
shpchp 26453 0
pci_hotplug 24319 1 shpchp
i2c_i801 8550 0
i2c_core 18726 2 nvidia,i2c_i801
lp 8992 0
parport 29639 3 parport_pc,ppdev,lp
intel_agp 29427 0
sg 25652 0
iTCO_wdt 10669 0
iTCO_vendor_support 1801 1 iTCO_wdt
evdev 8519 9
pcspkr 1819 0
ext4 313606 3
mbcache 5722 1 ext4
jbd2 69002 1 ext4
crc16 1297 2 l2cap,ext4
sr_mod 14954 0
cdrom 35851 1 sr_mod
sd_mod 25856 5
ahci 20353 0
ata_piix 21291 4
pata_jmicron 2448 0
pata_acpi 3248 0
libahci 17982 1 ahci
libata 156316 5 ata_piix,ahci,pata_jmicron,pata_acpi,libahci
scsi_mod 124891 4 sg,sr_mod,sd_mod,libata
Last edited by Wicked0ne (2010-11-26 22:42:38)
Offline
uninstall lirc, it looks like it's still there. you dont need it anymore. then try to blacklist all that:
ir_sony_decoder,ir_jvc_decoder,ir_rc6_decoder,rc_rc6_mce,ir_rc5_decoder,ir_nec_decoder,
Offline
Not sure i understand...how will lirc work without lirc installed?
Offline
lirc are the kernel modules, they are now in the kernel tree. however, you still need lirc-utils.
Offline
ah. ok. i will try and remove lirc and blacklist those modules. will post back what happens.
Offline
i removed lirc....then blacklisted all those modules u listed so my modules array looked like
MODULES=(vboxdrv vboxnetflt !ir_sony_decoder !ir_jvc_decoder !ir_rc6_decoder !rc_rc6_mce !ir_rc5_decoder !ir_nec_decoder)
i then rebooted the machine....started xbmc...and the buttons are still not working right...and i still see a bunch of those modules in lsmod
lsmod
Module Size Used by
rfcomm 34874 4
fuse 64131 3
sco 8828 2
bnep 8726 2
l2cap 42585 6 rfcomm,bnep
bluetooth 52419 6 rfcomm,sco,bnep,l2cap
rfkill 15882 3 bluetooth
ip6t_LOG 5815 4
xt_hl 1337 6
nf_conntrack_ipv6 11338 7
ipt_REJECT 2281 1
ipt_LOG 5427 5
xt_multiport 1790 4
xt_limit 2201 12
xt_tcpudp 2567 16
ipt_addrtype 2017 4
xt_state 1231 14
ip6table_filter 1396 1
ip6_tables 18174 2 ip6t_LOG,ip6table_filter
nf_nat_irc 1406 0
nf_conntrack_irc 3443 1 nf_nat_irc
nf_nat_ftp 1636 0
nf_nat 15619 2 nf_nat_irc,nf_nat_ftp
nf_conntrack_ipv4 11229 9 nf_nat
nf_defrag_ipv4 1307 1 nf_conntrack_ipv4
nf_conntrack_ftp 6125 1 nf_nat_ftp
nf_conntrack 57510 8 nf_conntrack_ipv6,xt_state,nf_nat_irc,nf_conntrack_irc,nf_nat_ftp,nf_nat,nf_conntrack_ipv4,nf_conntrack_ftp
iptable_filter 1424 1
ip_tables 17109 1 iptable_filter
x_tables 17160 13 ip6t_LOG,xt_hl,ipt_REJECT,ipt_LOG,xt_multiport,xt_limit,xt_tcpudp,ipt_addrtype,xt_state,ip6table_filter,ip6_tables,iptable_filter,ip_tables
ipv6 281961 31 nf_conntrack_ipv6
nls_utf8 1288 3
cifs 242984 5
fscache 39915 1 cifs
usbhid 36325 0
hid 76168 1 usbhid
nvidia 10031021 28
ir_lirc_codec 3803 3
lirc_dev 8500 1 ir_lirc_codec
ir_sony_decoder 2283 0
ir_jvc_decoder 2409 0
ir_rc6_decoder 2761 0
ir_rc5_decoder 2249 0
rc_rc6_mce 1348 0
ir_nec_decoder 2537 0
mceusb 10703 0
ir_core 14133 9 ir_lirc_codec,ir_sony_decoder,ir_jvc_decoder,ir_rc6_decoder,ir_rc5_decoder,rc_rc6_mce,ir_nec_decoder,mceusb
snd_hda_codec_analog 72140 1
snd_seq_dummy 1431 0
snd_seq_oss 28760 0
snd_seq_midi_event 5436 1 snd_seq_oss
snd_seq 50082 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_seq_device 5297 3 snd_seq_dummy,snd_seq_oss,snd_seq
snd_pcm_oss 39157 0
snd_mixer_oss 17106 1 snd_pcm_oss
asus_atk0110 10231 0
snd_hda_intel 22285 1
parport_pc 31480 1
snd_hda_codec 79384 2 snd_hda_codec_analog,snd_hda_intel
snd_hwdep 6110 1 snd_hda_codec
snd_pcm 71921 3 snd_pcm_oss,snd_hda_intel,snd_hda_codec
ppdev 5870 0
snd_timer 19265 2 snd_seq,snd_pcm
uhci_hcd 21926 0
snd 57562 13 snd_hda_codec_analog,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_timer
soundcore 5969 1 snd
snd_page_alloc 7249 2 snd_hda_intel,snd_pcm
ehci_hcd 36860 0
r8169 35678 0
mii 3826 1 r8169
iTCO_wdt 10669 0
iTCO_vendor_support 1801 1 iTCO_wdt
thermal 12242 0
button 4834 0
usbcore 137570 5 usbhid,mceusb,uhci_hcd,ehci_hcd
intel_agp 29427 0
processor 25936 0
lp 8992 0
i2c_i801 8550 0
parport 29639 3 parport_pc,ppdev,lp
i2c_core 18726 2 nvidia,i2c_i801
evdev 8519 9
shpchp 26453 0
pci_hotplug 24319 1 shpchp
sg 25652 0
pcspkr 1819 0
ext4 313606 3
mbcache 5722 1 ext4
jbd2 69002 1 ext4
crc16 1297 2 l2cap,ext4
sr_mod 14954 0
cdrom 35851 1 sr_mod
sd_mod 25856 5
ahci 20353 0
ata_piix 21291 4
libahci 17982 1 ahci
pata_jmicron 2448 0
pata_acpi 3248 0
libata 156316 5 ahci,ata_piix,libahci,pata_jmicron,pata_acpi
scsi_mod 124891 4 sg,sr_mod,sd_mod,libata
and in ps i see:
ps aux|grep -i lirc
root 3575 0.0 0.0 20132 504 ? Ss 18:03 0:00 /usr/sbin/lircd -d /dev/lirc0
Offline
can you remove them manually? with the -f flag maybe if necessary.
/edit: what you can try
# rmmod -f rc_rc6_mce
then kill xbmc, restart lircd and finally restart xbmc
Last edited by bangkok_manouel (2010-11-26 23:16:42)
Offline
removing all the modules:
rmmod -f rc_rc6_mce
rmmod -f ir_sony_decoder
rmmod -f ir_jvc_decoder
rmmod -f ir_rc6_decoder
rmmod -f ir_rc5_decoder
rmmod -f ir_nec_decoder
so all that was left in lsmod was:
lsmod |grep -i lirc
ir_lirc_codec 3803 0
lirc_dev 8500 1 ir_lirc_codec
ir_core 14133 3 ir_lirc_codec,mceusb
then restarting lirc and launching xbmc seems to have fixed this issue. Now im just wondering why i cannot blacklist those modules so when the computer boots they are not loaded.
Last edited by Wicked0ne (2010-11-26 23:37:57)
Offline
I recompiled the kernel with the options taken out as suggested by bangkok and changed mceusb from a module to being compiled into the kernel. That seemed to work for me. Although, once the kernel gets updated again, I'll have to recompile to keep things working properly.
Offline
1. DO NOT remove lirc or REINSTALL it if you removed it
2. CHANGE rc.conf modules section to something like this
MODULES=(...... !ir_core lirc_mceusb ......)
3. reboot
THIS worked for me!
Offline
Do the modules in the modules array in rc.conf get overridden somewhere? i was unable to stop them from being loaded at boot....im thinking that something somewhere else is causing them to still get loaded.
Offline
1. DO NOT remove lirc or REINSTALL it if you removed it
2. CHANGE rc.conf modules section to something like thisMODULES=(...... !ir_core lirc_mceusb ......)
3. reboot
THIS worked for me!
this should work (I didn't try but I'll happily believe you) but it's already obsolete. modules have been merged into mainline, this is the way to go.
Offline
I've got the same problem, which is annoying as I and my housemates use our Boxee setup daily. I've tried all the suggestions in this thread short of recompiling my kernel. The remote is a cheap Medion RF remote that worked using lirc_atiusb module until I upgraded last night. I'm surprised not even vparask's approach works, when that setup worked for me with the old kernel Any suggestions would be much appreciated.
Offline
I managed to remove the double key problem by following vparasks instruction and removing the lirc deamon from the DAEMONS line in rc.conf.
BUT, while the directional buttons are still working the ok button is not (in xbmc). Is lirc still reading the correct lircrc file??
Offline
I managed to remove the double key problem by following vparasks instruction and removing the lirc deamon from the DAEMONS line in rc.conf.
BUT, while the directional buttons are still working the ok button is not (in xbmc). Is lirc still reading the correct lircrc file??
I'm not getting a double press problem, my problem is that NOTHING happens when I press keys, whatever I do with kernel modules. I'm using irw to test and getting no output anymore
Offline
This thread inspired me to go update my htpc. Encountered, as expected, the double key press issue (using an mceusb remote). Removed lirc (the package), rebooted, and it persisted. Copied over a new remote config file from /usr/share/lirc/... and restarted lircd. Fixed!
edit: false positive. behavior returns after a reboot... oy...
Last edited by falconindy (2010-11-28 22:52:11)
Offline
Hello *,
some remotes now act as normal input devices. You can list these: cat /proc/bus/input/devices
(1) The Problem for example in XBMC is, that now you press for example the up key on the remote two "events" occur: (A) The key press comes now as normal input event (new feature in this kernel) like pressing up on your keyboard. (B) The event gets interpreted by the lirc daemon the second time.
(2) Solution (get the old behaviour; prevent remote acting as a normal input device):
/etc/rc.d/lircd stop
modprobe -r mceusb
modprobe -r lirc_mceusb
modprobe lirc_mceusb
/etc/rc.d/lircd start
To make this persist: Prevent module mceusb from loading in the rc.conf: MODULES=(... !mceusb ...)
(3) Have fun!
Offline
Offline
You're right. But... XBMC example again: The power key on the mce remote is used to shutdown or close xbmc. In the new kernel feature the power button key on the remote does the same as the power button of the computer. In Gnome this means you get the shutdown dialog when you only wanted to close XBMC. Plus: Although there are keycodes (take a look with showkey) for every button on the mce remote, only some can be mapped using Gnome settings (seems to be a xmodmap or X.org thing?). I think it will take a while until the new feature can replace the old "lirc architecture". The tool ir-keymap does not the job yet... or what is it for?
Offline
ok ok ok, i re-read the thread... so my last answer was a bit odd... so, you're absolutely right, falconindy, i misunderstood all...
i removed lirc and noticed that i don't like the ir_rc6_decoder. this seems to realize the new "normal input feature". blacklisting it in rc.conf did not the trick, it still gets loaded. in my case this is why i load the mantis module for my dvb-s2 card, which depends on mantis_core, which depends on ir_core. ir_core loads the ir_*_decoder stuff.
the blacklisting don't affect "cascaded" module loadings? or is it a bug?
i resolved this quick and dirty with modprobe -r ir_rc6_decoder in rc.local.
Offline
I removed lirc and I still have functionality (like I mentioned in my post yesterday), but the ok button still isn't working. Damn.
I tried ctxfi-users solution (modprobing and all) before removing lirc and that worked. But only until rebooting even when I had 'modprobe -r lirc-mceusb' in rc.local.
When testing showkey the button presses are registered, but it's not working in xbmc. Is the problem caused by xbmc not finding the config file for my mceusb?
Last edited by Perre (2010-11-29 20:03:27)
Offline