Hi everyone.
First of all, great job :)
My name is Carlos Jenkins, and I'm here to help getting to work the
MSI TV VOX 8609 USB 2.0 device once again. I know it's an old device,
but here where I live, in Costa Rica, we still have analog TV only.
TV Standard: NTSC
This device is a em2820/SAA7114H device, I'm sure, I opened it and
looked at the chips :P
This device is listed here:
http://www.linuxtv.org/wiki/index.php/Em28xx_devices#Table_of_validated_boards
Nevertheless, I'm trying since 2007 to get it work, and never could do
so with the v4l tree (and I tested it every 4 months or so). Just
once, with the now gone http://mcentral.de/ fork (I still keep that
source code), as explained here
http://javoaxian.blogspot.com/2008/03/instalar-msi-tv-vox-8609-video-usb-20.html
(in spanish, but commands can be understood).
This fork worked for kernel < 2.6.24 (v4l2 driver version 0.0.1). When
Hardy Heron 8.04 came, the device stop working with that fork.
I'm still a college student, but I know C, Assembly (AVR, PIC,
others), and I'm ready to do everything to get this thing working
again.
I'm running a fresh install of Ubuntu Karmic Koala 9.10 Desktop
32bits, kernel 2.6.31-19-generic with the headers.
Ok, what I tried so far (I'm putting here the obvious steps for
documentation purpose):
shell$ sudo apt-get mercurial linux-headers-`uname -r` build-essential
shell$ hg clone http://linuxtv.org/hg/v4l-dvb
shell$ nano v4l-dvb/v4l/.config #(and changed line 227 from
"CONFIG_DVB_FIREDTV=m" to "CONFIG_DVB_FIREDTV=n", to be able to
compile the tree in Karmic, as explained here
http://www.mail-archive.com/[email protected]/msg06865.html
)
shell$ make #everything fine :)
shell$ sudo make install #everything just fine :)
**********************************************
Test 1:
sudo modprobe em28xx
dmesg:
[ 63.715662] Linux video capture interface: v2.00
[ 63.737054] usbcore: registered new interface driver em28xx
[ 63.737060] em28xx driver loaded
Now, I do plug the USB device.
[ 109.476033] usb 1-6: new high speed USB device using ehci_hcd and address 5
[ 109.609278] usb 1-6: configuration #1 chosen from 1 choice
[ 109.610221] em28xx: New device @ 480 Mbps (eb1a:2820, interface 0, class 0)
[ 109.610342] em28xx #0: chip ID is em2820 (or em2710)
[ 109.700913] em28xx #0: board has no eeprom
[ 109.713910] em28xx #0: Identified as Unknown EM2750/28xx video
grabber (card=1)
[ 109.726777] em28xx #0: found i2c device @ 0x42 [???]
[ 109.733523] em28xx #0: found i2c device @ 0x66 [???]
[ 109.733892] em28xx #0: found i2c device @ 0x68 [???]
[ 109.750515] em28xx #0: found i2c device @ 0xc0 [tuner (analog)]
[ 109.750883] em28xx #0: found i2c device @ 0xc2 [tuner (analog)]
[ 109.762385] em28xx #0: Your board has no unique USB ID and thus
need a hint to be detected.
[ 109.762392] em28xx #0: You may try to use card=<n> insmod option to
workaround that.
[ 109.762397] em28xx #0: Please send an email with this log to:
[ 109.762401] em28xx #0: V4L Mailing List <[email protected]>
[ 109.762406] em28xx #0: Board eeprom hash is 0x00000000
[ 109.762411] em28xx #0: Board i2c devicelist hash is 0xd01900b3
[ 109.762415] em28xx #0: Here is a list of valid choices for the
card=<n> insmod option:
[ 109.762421] em28xx #0: card=0 -> Unknown EM2800 video grabber
[ 109.762426] em28xx #0: card=1 -> Unknown EM2750/28xx video grabber
[ 109.762431] em28xx #0: card=2 -> Terratec Cinergy 250 USB
[ 109.762436] em28xx #0: card=3 -> Pinnacle PCTV USB 2
[ 109.762441] em28xx #0: card=4 -> Hauppauge WinTV USB 2
[ 109.762446] em28xx #0: card=5 -> MSI VOX USB 2.0
[...]
[ 109.762781] em28xx #0: card=74 -> Actionmaster/LinXcel/Digitus VC211A
[ 109.762877] em28xx #0: Config register raw data: 0x00
[ 109.762884] em28xx #0: v4l2 driver version 0.1.2
[ 110.156135] em28xx #0: V4L2 video device registered as video0
Now did test tvtime (I know it's not going to work):
shell$ tvtime -v
Ejecutando tvtime 1.0.2.
Leyendo la configuración de /etc/tvtime/tvtime.xml
Leyendo la configuración de /home/havok/.tvtime/tvtime.xml
cpuinfo: CPU AMD Athlon(tm) 64 X2 Dual Core Processor 3800+, family
15, model 11, stepping 2.
cpuinfo: CPU measured at 1002.189MHz.
tvtime: Cannot set priority to -10: Permiso denegado.
xcommon: Display :0.0, vendor The X.Org Foundation, vendor release 10604000
xfullscreen: Using XINERAMA for dual-head information.
xfullscreen: Pixels are square.
xfullscreen: Number of displays is 1.
xfullscreen: Head 0 at 0,0 with size 1440x900.
xcommon: Have XTest, will use it to ping the screensaver.
xcommon: Pixel aspect ratio 1:1.
xcommon: Pixel aspect ratio 1:1.
xcommon: Window manager is compiz and is EWMH compliant.
xcommon: Using EWMH state fullscreen property.
xcommon: Using EWMH state above property.
xcommon: Using EWMH state below property.
xcommon: Pixel aspect ratio 1:1.
xcommon: Displaying in a 768x576 window inside 768x576 space.
xvoutput: Using XVIDEO adaptor 355: NV17 Video Texture.
speedycode: Using MMXEXT optimized functions.
station: Reading stationlist from /home/havok/.tvtime/stationlist.xml
videoinput: Using video4linux2 driver 'em28xx', card 'Unknown
EM2750/28xx video grabb' (bus usb-0000:00:0b.1-6).
videoinput: Version is 258, capabilities 5000041.
videoinput: No inputs available on video4linux2 device '/dev/video0'.
xcommon: Pixel aspect ratio 1:1.
xcommon: Displaying in a 768x576 window inside 768x576 space.
xcommon: Received a map, marking window as visible (57).
xcommon: Pixel aspect ratio 1:1.
xcommon: Displaying in a 768x576 window inside 768x576 space.
Program says: no inputs available. Unable to open /dev/video0. But the
GUI still responsible, as when we run tvtime with anything plugged in.
Nevertheless,
shell$ ls /dev/ | grep video
video0
So, what I did is reloading the module specifying the device:
shell$ sudo rmmod em28xx
shell$ sudo modprobe --verbose --first-time em28xx card=5
insmod
/lib/modules/2.6.31-19-generic/kernel/drivers/media/video/em28xx/em28xx.ko
card=5
shell$ dmesg
[ 695.358240] em28xx: New device @ 480 Mbps (eb1a:2820, interface 0, class 0)
[ 695.358989] em28xx #0: chip ID is em2820 (or em2710)
[ 695.461103] em28xx #0: board has no eeprom
[ 695.462226] em28xx #0: Identified as MSI VOX USB 2.0 (card=5)
[ 695.830239] saa7115 5-0021: saa7114 found (1f7114d0e000000) @ 0x42
(em28xx #0)
[ 698.043727] All bytes are equal. It is not a TEA5767
[ 698.043977] tuner 5-0060: chip found @ 0xc0 (em28xx #0)
[ 698.076232] tuner-simple 5-0060: creating new instance
[ 698.076241] tuner-simple 5-0060: type set to 37 (LG PAL (newer TAPC series))
[ 698.097987] em28xx #0: Config register raw data: 0x00
[ 698.228070] em28xx #0: v4l2 driver version 0.1.2
[ 698.624160] em28xx #0: V4L2 video device registered as video0
[ 698.624210] usbcore: registered new interface driver em28xx
[ 698.624217] em28xx driver loaded
(So far so good :D )
shell$ tvtime -v
Ejecutando tvtime 1.0.2.
Leyendo la configuración de /etc/tvtime/tvtime.xml
Leyendo la configuración de /home/havok/.tvtime/tvtime.xml
cpuinfo: CPU AMD Athlon(tm) 64 X2 Dual Core Processor 3800+, family
15, model 11, stepping 2.
cpuinfo: CPU measured at 1002.171MHz.
tvtime: Cannot set priority to -10: Permiso denegado.
xcommon: Display :0.0, vendor The X.Org Foundation, vendor release 10604000
xfullscreen: Using XINERAMA for dual-head information.
xfullscreen: Pixels are square.
xfullscreen: Number of displays is 1.
xfullscreen: Head 0 at 0,0 with size 1440x900.
xcommon: Have XTest, will use it to ping the screensaver.
xcommon: Pixel aspect ratio 1:1.
xcommon: Pixel aspect ratio 1:1.
xcommon: Window manager is compiz and is EWMH compliant.
xcommon: Using EWMH state fullscreen property.
xcommon: Using EWMH state above property.
xcommon: Using EWMH state below property.
xcommon: Pixel aspect ratio 1:1.
xcommon: Displaying in a 768x576 window inside 768x576 space.
xvoutput: Using XVIDEO adaptor 355: NV17 Video Texture.
speedycode: Using MMXEXT optimized functions.
station: Reading stationlist from /home/havok/.tvtime/stationlist.xml
videoinput: Using video4linux2 driver 'em28xx', card 'MSI VOX USB 2.0'
(bus usb-0000:00:0b.1-6).
videoinput: Version is 258, capabilities 5010041.
videoinput: Width 720 too high, using 640 instead as suggested by the driver.
videoinput: Maximum input width: 640 pixels.
tvtime: Sampling input at 640 pixels per scanline.
xcommon: Pixel aspect ratio 1:1.
xcommon: Displaying in a 768x576 window inside 768x576 space.
[At this point the application freezes in a black screen, nothing can
be done on the GUI]
Curious thing, in the Gnome System Monitor I can see:
Process: tvtime
Wait on channel: videobuf_waiton
This behavior is the same since I bought the device near 2007 for the
v4l tree, so, for me, nothing new.
Just in case: The device work just fine on a Windows machine, so it's
not a hardware problem.
I'm attaching the usb device listing just in case.
As you can see, no error is never thrown, neither on TVTime nor dmesg.
I know that em28xx sources can be found at
v4l-dvb/linux/drivers/media/video/em28xx on the source tree.
I've been watching those source code files, but I'm not sure where to
start. Any advice or help is welcome.
Thanks for your time, and sorry for my English. :P
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 9 Hub
bDeviceSubClass 0 Unused
bDeviceProtocol 0 Full speed (or root) hub
bMaxPacketSize0 64
idVendor 0x1d6b Linux Foundation
idProduct 0x0001 1.1 root hub
bcdDevice 2.06
iManufacturer 3 Linux 2.6.31-19-generic ohci_hcd
iProduct 2 OHCI Host Controller
iSerial 1 0000:00:0b.0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xe0
Self Powered
Remote Wakeup
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0 Unused
bInterfaceProtocol 0 Full speed (or root) hub
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0002 1x 2 bytes
bInterval 255
Hub Descriptor:
bLength 11
bDescriptorType 41
nNbrPorts 8
wHubCharacteristic 0x0002
No power switching (usb 1.0)
Ganged overcurrent protection
bPwrOn2PwrGood 1 * 2 milli seconds
bHubContrCurrent 0 milli Ampere
DeviceRemovable 0x00 0x00
PortPwrCtrlMask 0xff 0xff
Hub Port Status:
Port 1: 0000.0100 power
Port 2: 0000.0100 power
Port 3: 0000.0100 power
Port 4: 0000.0300 lowspeed power
Port 5: 0000.0100 power
Port 6: 0000.0100 power
Port 7: 0000.0100 power
Port 8: 0000.0100 power
Device Status: 0x0003
Self Powered
Remote Wakeup Enabled
Bus 001 Device 005: ID eb1a:2820 eMPIA Technology, Inc.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0xeb1a eMPIA Technology, Inc.
idProduct 0x2820
bcdDevice 1.00
iManufacturer 0
iProduct 0
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 249
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 255
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0001 1x 1 bytes
bInterval 11
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0000 1x 0 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 1
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 255
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0001 1x 1 bytes
bInterval 11
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 2
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 255
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0001 1x 1 bytes
bInterval 11
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0ad4 2x 724 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 3
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 255
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0001 1x 1 bytes
bInterval 11
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0c00 2x 1024 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 4
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 255
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0001 1x 1 bytes
bInterval 11
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x1300 3x 768 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 5
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 255
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0001 1x 1 bytes
bInterval 11
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x135c 3x 860 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 6
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 255
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0001 1x 1 bytes
bInterval 11
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x13c4 3x 964 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 7
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 255
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0001 1x 1 bytes
bInterval 11
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x1400 3x 1024 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0000
(Bus Powered)
Bus 001 Device 003: ID 0bda:0111 Realtek Semiconductor Corp. Card Reader
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0bda Realtek Semiconductor Corp.
idProduct 0x0111 Card Reader
bcdDevice 11.22
iManufacturer 1 Generic
iProduct 2 USB2.0-CRW
iSerial 3 20021111153705700
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 4 CARD READER
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk (Zip)
iInterface 5 Bulk-In, Bulk-Out, Interface
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0000
(Bus Powered)
Bus 001 Device 004: ID 15a9:0004
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x15a9
idProduct 0x0004
bcdDevice 0.01
iManufacturer 1 Ralink
iProduct 2 802.11 bg WLAN
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 53
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 300mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 5
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0000
(Bus Powered)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 9 Hub
bDeviceSubClass 0 Unused
bDeviceProtocol 0 Full speed (or root) hub
bMaxPacketSize0 64
idVendor 0x1d6b Linux Foundation
idProduct 0x0002 2.0 root hub
bcdDevice 2.06
iManufacturer 3 Linux 2.6.31-19-generic ehci_hcd
iProduct 2 EHCI Host Controller
iSerial 1 0000:00:0b.1
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xe0
Self Powered
Remote Wakeup
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0 Unused
bInterfaceProtocol 0 Full speed (or root) hub
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0004 1x 4 bytes
bInterval 12
Hub Descriptor:
bLength 11
bDescriptorType 41
nNbrPorts 8
wHubCharacteristic 0x000a
No power switching (usb 1.0)
Per-port overcurrent protection
bPwrOn2PwrGood 10 * 2 milli seconds
bHubContrCurrent 0 milli Ampere
DeviceRemovable 0x00 0x00
PortPwrCtrlMask 0xff 0xff
Hub Port Status:
Port 1: 0000.0100 power
Port 2: 0000.0100 power
Port 3: 0000.0100 power
Port 4: 0000.0100 power
Port 5: 0000.0503 highspeed power enable connect
Port 6: 0000.0503 highspeed power enable connect
Port 7: 0000.0503 highspeed power enable connect
Port 8: 0000.0100 power
Device Status: 0x0003
Self Powered
Remote Wakeup Enabled