[linux-dvb] AverTV A800 trouble

Klaus Frahm frahm at irsamc.ups-tlse.fr
Fri Jun 30 01:09:52 CEST 2006

> The problem why the patch does not work is actually quite trivial: When 
> the dvb_usb_a800 module is NOT loaded, lsusb tells me the SAME ID 07ca:a800 
> for both devices. After loading the module, the old device switches its ID to 
> a7ca:a801, the new device keeps its ID. So it is probably not possible to 
> distinguish between the two devices using the IDs.
> To make this mail even longer I did a "lsusb -v" for both devices with no 
> driver loaded. The results are attached. Out of curiosity I modified Klaus' 
> second patch the following way. Instead of
> *cold=!(udev->descriptor.idProduct == 0xa800);
> the new check is
> *cold=!(udev->descriptor.iManufacturer == 1);
> Since this field is 0 for the old device this makes BOTH devices work!! While 
> I don't believe that this is the best way to do the distinction, I still 
> think that we are getting closer to a solution. Thanks again for the help so 
> far! Any comments?

Hi Martin,

very interesting your observation. Obviously, my assumption about the
signification of the variable idProduct was wrong. Probably it is
modified (to 0xa801) in one of the other dvb-modules (dvb_usb,
dvb_usb_dibusb_common, ...) and that only after the initialization and
therefore it cannot be used to distinguish the two devices (maybe the
modification happens when loading the firmware). If iManufacturer works,
it seems okay to me and I have verified that it also works with my

I think, now it's up to Patrick to decide if there is a better variable
to make the distinction. Hopefully there are no further different
versions of the AVerTV A800, rendering the situation even more

Greetings, Klaus.

More information about the linux-dvb mailing list