snd_usb_audio: Creative SB Extigy Infrared Remote trouble

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

I hope this is the right mailing list - I fall squarely in the 'user' 
category for ALSA but as it happens I'm a programmer so my analysis so 
far is a bit deeper and maybe more suitable for the devel list?


In any case, I've got an old Sound Blaster Extigy USB sound card. It 
comes with an infrared remote, which I'd like to be able to use with 
Lirc. According to the Lirc documentation [1] this should work with ALSA 
1.0.9 - presumably later versions *shouldn't* break support. :) However, 
I've been able to make this work.

The audio side of the hardware seems to work fine with ALSA, and the 
remote works when not attached to the PC. When attached, the red 
receiver LED flashes as usual, and I also get the following line in 
dmesg for every button I press:

ALSA sound/usb/usbmixer.c:1726: status interrupt: c0 00

The message is independent of the button. (the c0 00 code stays the same 
for all buttons.)

Trying to access the event from userspace is failing completely though.


My first attempt at digging into this was picking apart Lirc and running 
it in a debugger, and my findings lead me to conclude that it's not 
Lirc's fault, as it's never getting any events from ALSA:

  * Lirc's alsa-usb driver successfully grabs the RC device by locating 
the interface of the selected card that identifies itself as 
SND_HWDEP_IFACE_SB_RC.
  * It loads up the hwdep interface with snd_hwdep_open() followed by a 
call to snd_hwdep_poll_descriptors() which yields a valid file 
descriptor. [2] No errors are returned anywhere, everything looks fine.
  * It waits on the file descriptor using select() [3]; unfortunately, 
select() doesn't return when I press a remote button - the pipe is just 
not getting any data.


I've tested on 3 environments: OpenSUSE 10.2, 10.3 and 11.0, which have 
ALSA 1.0.13/Linux 2.6.18, 1.0.14/2.6.22 and 1.0.16/2.6.25 respectively. 
All give me the exact same result: nothing happens in userspace; status 
interrupt line on dmesg.

I've tried to dig through the ALSA source for this functionality, but 
I'm very inexperienced with kernel code, and I don't know what I'm 
looking for/what the best way to diagnose this would be. For what it's 
worth, the RC code seems to have changed a lot since the original Extigy 
  RC patch, so maybe something broke?

Any help very much appreciated!

Thanks

~phil


[1] http://www.lirc.org/html/alsa-usb.html
[2] from line 87 onwards: 
http://www.google.com/codesearch?hl=en&q=file:hw_alsa_usb.c+show:Ziggfj8EPWo:2Pgf60mHej4:tYzvuVqIrbc&sa=N&cd=9&ct=ri&cs_p=http://unix.freshmeat.net/redir/lirc/5908/url_bz2/lirc-0.8.1.tar.bz2&cs_f=lirc-0.8.2/daemons/hw_alsa_usb.c
[3] around line 1821:
http://www.google.com/codesearch?hl=en&q=file:lircd.c+package:http://unix.freshmeat.net/redir/lirc/5908/url_bz2/lirc-0.8.1.tar.bz2+package:%22http://unix.freshmeat.net/redir/lirc/5908/url_bz2/lirc-0.8.1.tar.bz2%22+select+show:72KjMGMO6Fk:2Pgf60mHej4:em2adpER9I0&sa=N&cd=8&ct=rc&cs_p=http://unix.freshmeat.net/redir/lirc/5908/url_bz2/lirc-0.8.1.tar.bz2&cs_f=lirc-0.8.2/daemons/lircd.c

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Alsa-user mailing list
Alsa-user@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-user

[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux