All,
Sorry if this is very basic - couldn't find this in an FAQ or list history.
Our background is with USB and Windows.
We've done many USB Audio + HID devices for Windows.
HID is usually Vendor Specific commands - user input, firmware download,
etc.
We would like to create a Linux app to communicate with our HID device.
I'm a UNIX jock from WAY back (mid-80's) but those skills are rusty...
>From the Linux USB Guide, I expected to be able to access the USB HID device
through the file /dev/usb/hiddev0 using ioctl commands.
However, our device(s) never make it there.
The devices are enumerating properly - and the audio channel is present on
/dev/dsp as expected.
- Are Vendor-Specific only HID devices supported yet?
- If yes, why wouldn't I be able to access the HID interface?
- Am I completely doing this the hard way?
Support info:
Red-Hat Linux, kernel 2.4.20-8.
The file /dev/usb/hiddev0 (0 thru 15) DOES exist - I didn't have to create
it.
=== File /proc/bus/usb/devices (with our Audio + HID device connected)
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB UHCI Root Hub
S: SerialNumber=ece0
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms
T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 17 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=098d ProdID=0003 Rev= 0.04
S: Manufacturer=Indesign
S: Product=USB Reference Design
C:* #Ifs= 4 Cfg#= 1 Atr=80 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 0 Cls=01(audio) Sub=01 Prot=00 Driver=audio
I: If#= 1 Alt= 0 #EPs= 0 Cls=01(audio) Sub=02 Prot=00 Driver=audio
I: If#= 1 Alt= 1 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=audio
E: Ad=01(O) Atr=09(Isoc) MxPS= 192 Ivl=1ms
I: If#= 2 Alt= 0 #EPs= 0 Cls=01(audio) Sub=02 Prot=00 Driver=audio
I: If#= 2 Alt= 1 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=audio
E: Ad=82(I) Atr=0d(Isoc) MxPS= 96 Ivl=1ms
I: If#= 3 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=hid
E: Ad=83(I) Atr=03(Int.) MxPS= 5 Ivl=1ms
=== File /proc/bus/usb/drivers
usbdevfs
hub
96-111: hiddev
hid
audio
=== dmesg output
=== starts with our product being UNplugged, then a Microsoft USB mouse
=== being plugged in, then out, then our product plugged in again
usb.c: USB disconnect on device 00:07.2-1 address 17
usbaudio: unregister dsp 14,3
usbaudio: unregister mixer 14,0
usbaudio: unregister mixer 14,16
hub.c: new USB device 00:07.2-1, assigned address 18
usb-uhci.c: interrupt, status 3, frame# 1213
input0: USB HID v1.00 Mouse [045e:0009] on usb1:18.0
usb.c: USB disconnect on device 00:07.2-1 address 18
hub.c: new USB device 00:07.2-1, assigned address 19
usbaudio: device 19 audiocontrol interface 0 has 1 input and 1 output
AudioStreaming interfaces
usbaudio: device 19 interface 2 altsetting 1 channels 1 framesize 2
configured
usbaudio: valid input sample rate 8000
usbaudio: device 19 interface 2 altsetting 1: format 0x00000010 sratelo 8000
sratehi 8000 attributes 0x01
usbaudio: device 19 interface 1 altsetting 0 does not have an endpoint
usbaudio: device 19 interface 1 altsetting 1 channels 2 framesize 2
configured
usbaudio: valid output sample rate 8000
usbaudio: device 19 interface 1 altsetting 1: format 0x01000010 sratelo 8000
sratehi 8000 attributes 0x01
usbaudio: registered dsp 14,3
usbaudio: constructing mixer for Terminal 6 type 0x0301
usbaudio: registered mixer 14,0
usbaudio: constructing mixer for Terminal 11 type 0x0101
usbaudio: registered mixer 14,16
usb_audio_parsecontrol: usb_audio_state at c5142b00
usb-uhci.c: interrupt, status 3, frame# 307
input0: USB HID v1.00 Pointer [Indesign USB Reference Design] on usb1:19.3
I see the Microsoft Mouse "mount" to /dev/input/mouse0.
Sure seems to me like our device enumerates, but I just can't get to the
HID interface after that.
We have another Red Hat Linux box, kernel 2.4.28-26.7.
It exhibits the same behavior, although the /dev/usb/hiddev0 file did
NOT exist.
Any help would be greatly appreciated.
John Sawyer
-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel