[pvrusb2] AVerMedia HC80 AVerTV Hybrid ExpressCard/54 support?

Bill Paxton goawaypleaseus at yahoo.com
Wed Apr 7 21:50:29 CDT 2010


Hi Mike and list,

I've got a USB card that uses the CX23416, and from a cursory search, it seems the pvrusb2 driver will be the best hope of making this card work anytime soon. If this is incorrect and there is a better place to hold this conversation, please let me borrow your internet compass...

As stated in the subject, the card in question is an AVerMedia HC80 AVerTV Hybrid ExpressCard/54. This *is* a USB device, only in the ExpressCard format. (ExpressCard supports both PCI & USB modes, for the non-laptop crowd.) I'm pretty sure the reason is because the ExpressCard spec allows the card to pull a lot more current than a USB port, the spec is 1.75A @ 3.3V; so no wall wart required.

----

[root at lappy]# lsusb -v -d 07CA:0C80

Bus 001 Device 021: ID 07ca:0c80 AVerMedia Technologies, Inc. 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x07ca AVerMedia Technologies, Inc.
  idProduct          0x0c80 
  bcdDevice            1.07
  iManufacturer           1 AVerMedia
  iProduct                2 HC80
  iSerial                 3 00000 000000
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           60
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xc0
      Self Powered
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           6
      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     0x84  EP 4 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     0x88  EP 8 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     0x86  EP 6 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:     0x0001
  Self Powered

----

Googling around turned up nothing WRT linux support. In fact the card and it's successors HC81/82 are rarely mentioned at all. Figuring I'd have to know what I was holding before I start asking around, I went ahead with the delicate surgery required to open and then identify all the major components. This is what led me to this list.

----

Main ICs:

EEPROM:    Atmel AT24C64AN-10SU-2.7, 64K I2C, 8-pin SOIC
Encoder:   Conexant CX23416-22, 233-pin BGP
Decoder:   Conexant CX25843-24Z, 80-pin TQFP 
Analog:    Xceive XC3028ACQ, NTSC/PAL/FM, 40-pin QFN
Digital:   LG LGDT3033 VSB/QAM, 100-pin TQFP
Line In:   Wolfson WM8739S 24-bit Delta/Sigma stereo ADC, 20-pin SSOP
SDRAM:     Elite SMT M12L64322A, 512K x 32 bit x 4 banks, 86-pin TSOP(II)
USB:       Cypress CY7C68013A-100AXC, USB 2.0 Microcontroller, 100-pin TQFP

Others ICs:

Voltage regulator IC, GMT G965 1.5A positive regulator, 8-pin SSOP
EMI reduction IC, PulseCore (now On Semi) P2781AF, 8-pin SSOP
2x bus switch ICs, Pericom PI3B3861, 10-bit, 2-port bus switch, 24-pin QSOP
unknown, (opamp?) markings "4231 / 4553 / 550" located near Xceive inside tuner shield.

----

I've casually read the entire pvrusb2-list archives for a couple hours. There is never a mention of this card, I don't think the word "Aver" is ever spoken. I know Mike's adage that for pvrusb2 to have hopes of supporting a unit, it should have a 23416 & an FX2 (CY7C68xxx) USB micro. This meets those requirements! :^)

Great, but here's where I get lost. I'm sure extracting the firmware from the Windows drivers is going to be different. And that's just the start.

So... what do you think? Is there hope? Any help greatly appreciated, and any further info or work required, just post or email.

Thanks for reading!
-BP




      


More information about the pvrusb2 mailing list