Figuring Out Which Card Is Which

Let's say that you have a Mythbuntu system that has a Hauppauge PVR-150, a HD 800i and a HVR-2250 installed in it (All Hauppauge, All The Way). Now, it comes time to configure each one and all you see is:

     Probed Info: Probe failed

Which card is which? You need to know because you have several different inputs attached to each one (e.g. cable company DTA on the PVR-150; the cable as a direct input on the HVR-2250; and a terrestrial antenna on the HD 800i). Without setting them up correctly, MythTV will be trying to record the wrong programs on each encoder.

You can start with a listing of all of the devices on the PCI bus:

     sudo lspci -v

This should give you a (partial) listing that looks something like this:

     01:08.0 Multimedia video controller: Internext Compression Inc iTVC16
         (CX23416) Video Decoder (rev 01)
       Subsystem: Hauppauge computer works Inc. WinTV PVR 150
       Flags: bus master, medium devsel, latency 64, IRQ 17
       Memory at f0000000 (32-bit, prefetchable) [size=64M]
       Capabilities: [44] Power Management version 2
       Kernel driver in use: ivtv
       Kernel modules: ivtv
     01:0a.0 Multimedia video controller: Conexant Systems, Inc.
         CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
       Subsystem: Pinnacle Systems Inc. Device 0051
       Flags: bus master, medium devsel, latency 32, IRQ 18
       Memory at fc000000 (32-bit, non-prefetchable) [size=16M]
       Capabilities: [44] Vital Product Data
       Capabilities: [4c] Power Management version 2
       Kernel driver in use: cx8800
       Kernel modules: cx8800
     01:0a.1 Multimedia controller: Conexant Systems, Inc.
         CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (rev 05)
       Subsystem: Pinnacle Systems Inc. Device 0051
       Flags: bus master, medium devsel, latency 32, IRQ 18
       Memory at fb000000 (32-bit, non-prefetchable) [size=16M]
       Capabilities: [4c] Power Management version 2
       Kernel driver in use: cx88_audio
       Kernel modules: cx88-alsa
     01:0a.2 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3
         PCI Video and Audio Decoder [MPEG Port] (rev 05)
       Subsystem: Pinnacle Systems Inc. Device 0051
       Flags: bus master, medium devsel, latency 32, IRQ 18
       Memory at fa000000 (32-bit, non-prefetchable) [size=16M]
       Capabilities: [4c] Power Management version 2
       Kernel driver in use: cx88-mpeg driver manager
       Kernel modules: cx8802
     02:00.0 Multimedia controller: Philips Semiconductors SAA7164 (rev 81)
       Subsystem: Hauppauge computer works Inc. WinTV HVR-2250
       Flags: bus master, fast devsel, latency 0, IRQ 19
       Memory at fd400000 (64-bit, non-prefetchable) [size=4M]
       Memory at fd000000 (64-bit, non-prefetchable) [size=4M]
       Capabilities: [40] MSI: Enable- Count=1/16 Maskable- 64bit+
       Capabilities: [50] Express Endpoint, MSI 00
       Capabilities: [74] Power Management version 3
       Capabilities: [7c] Vendor Specific Information: Len=84 <?>
       Capabilities: [100] Vendor Specific Information: ID=0000 Rev=0 Len=060 <?>
       Capabilities: [160] Virtual Channel
       Kernel driver in use: saa7164
       Kernel modules: saa7164

The first entry is for the PVR-150. From it we can see that the decoder is the Conexant CX23416. The next three entries are for the HD 800i. The first of those three entries shows that the decoder is the Conexant CX23880 (the second and third entries are probably for the FM receiver and the S-video input). The last entry is for the HVR-2250. From it we can see that the decoder is the Philips SAA7164.

In another instance, the Mythbuntu system may have a earlier Hauppauge PVR-150 card, a pcHDTV HD-5500 card, and an AverMedia A180 card installed. Its (partial) PCI bus listing might look like this:

     01:06.0 Multimedia video controller: Conexant Systems, Inc.
         CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
       Subsystem: pcHDTV Device 5500
       Flags: bus master, medium devsel, latency 64, IRQ 18
       Memory at df000000 (32-bit, non-prefetchable) [size=16M]
       Capabilities: [44] Vital Product Data <?>
       Capabilities: [4c] Power Management version 2
       Kernel driver in use: cx8800
       Kernel modules: cx8800
     01:06.1 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3
         PCI Video and Audio Decoder [Audio Port] (rev 05)
       Subsystem: pcHDTV Device 5500
       Flags: bus master, medium devsel, latency 64, IRQ 18
       Memory at de000000 (32-bit, non-prefetchable) [size=16M]
       Capabilities: [4c] Power Management version 2
       Kernel driver in use: cx88_audio
       Kernel modules: cx88-alsa
     01:06.2 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3
         PCI Video and Audio Decoder [MPEG Port] (rev 05)
       Subsystem: pcHDTV Device 5500
       Flags: bus master, medium devsel, latency 64, IRQ 18
       Memory at dd000000 (32-bit, non-prefetchable) [size=16M]
       Capabilities: [4c] Power Management version 2
       Kernel driver in use: cx88-mpeg driver manager
       Kernel modules: cx8802
     01:06.4 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3
         PCI Video and Audio Decoder [IR Port] (rev 05)
       Subsystem: pcHDTV Device 5500
       Flags: bus master, medium devsel, latency 64, IRQ 10
       Memory at dc000000 (32-bit, non-prefetchable) [size=16M]
       Capabilities: [4c] Power Management version 2
     01:07.0 Multimedia video controller: Internext Compression Inc iTVC16
         (CX23416) MPEG-2 Encoder (rev 01)
       Subsystem: Hauppauge computer works Inc. Device c801
       Flags: bus master, medium devsel, latency 64, IRQ 19
       Memory at d4000000 (32-bit, prefetchable) [size=64M]
       Capabilities: [44] Power Management version 2
       Kernel driver in use: ivtv
       Kernel modules: ivtv
     01:08.0 Multimedia controller: Philips Semiconductors
         SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (rev d1)
       Subsystem: Avermedia Technologies Inc Device 1044
       Flags: bus master, medium devsel, latency 32, IRQ 19
       Memory at e4101000 (32-bit, non-prefetchable) [size=2K]
       Capabilities: [40] Power Management version 2
       Kernel driver in use: saa7134
       Kernel modules: saa7134

The first four entries are for the pcHDTV HD-5500. From it we can see that the decoder is the Conexant CX23880. The next entry is for the PVR-150 but, in this case, the kernel does not recognize its device number. From it we can see that the decoder is the Conexant CX23416. The next entry is for the Avermedia A180, although its device number is unknown too. Its entry shows that the decoder is the Philips SAA7134.

Now that we're armed with this information, we can try setting up the multiple capture cards from the Mythbuntu Capture Card Setup page. Even if the probe fails to return any information about the card, you can still use the decoder information to figure out which card is which.