View Full Version : 2nd tuner not recognized
wftomlin 09-24-09, 07:37 PM I added a 2nd HVR-1250 to my test build, but when configuring "Capture Card Setup" it said there was already a card 0. It wouldn't let me change the number to anything else.
I pulled out the old card and tried with just the new card and got:
Frontend ID: Could not get card info for card #0 Subtype: Unknown error
dmesg gave me <snipet>
[ 10.494522] cx23885 driver version 0.0.1 loaded
[ 10.494634] cx23885 0000:02:00.0: PCI INT A -> Link[APC4] -> GSI 19 (level, low) -> IRQ 19
[ 10.494639] cx23885[0]: Your board isn't known (yet) to the driver.
[ 10.494641] cx23885[0]: Try to pick one of the existing card configs via
[ 10.494642] cx23885[0]: card=<n> insmod option. Updating to the latest
[ 10.494643] cx23885[0]: version might help as well.
[ 10.494646] cx23885[0]: Here is a list of valid choices for the card=<n> insmod option:
[ 10.494648] cx23885[0]: card=0 -> UNKNOWN/GENERIC
[ 10.494650] cx23885[0]: card=1 -> Hauppauge WinTV-HVR1800lp
[ 10.494652] cx23885[0]: card=2 -> Hauppauge WinTV-HVR1800
[ 10.494654] cx23885[0]: card=3 -> Hauppauge WinTV-HVR1250
[ 10.494656] cx23885[0]: card=4 -> DViCO FusionHDTV5 Express
[ 10.494658] cx23885[0]: card=5 -> Hauppauge WinTV-HVR1500Q
[ 10.494660] cx23885[0]: card=6 -> Hauppauge WinTV-HVR1500
[ 10.494662] cx23885[0]: card=7 -> Hauppauge WinTV-HVR1200
[ 10.494664] cx23885[0]: card=8 -> Hauppauge WinTV-HVR1700
[ 10.494666] cx23885[0]: card=9 -> Hauppauge WinTV-HVR1400
[ 10.494668] cx23885[0]: card=10 -> DViCO FusionHDTV7 Dual Express
[ 10.494670] cx23885[0]: card=11 -> DViCO FusionHDTV DVB-T Dual Express
[ 10.494672] cx23885[0]: card=12 -> Leadtek Winfast PxDVR3200 H
[ 10.494819] CORE cx23885[0]: subsystem: 0070:2211, board: UNKNOWN/GENERIC [card=0,autodetected]
[ 10.620781] cx23885_dev_checkrevision() New hardware revision found 0x0
[ 10.620786] cx23885_dev_checkrevision() Hardware revision unknown 0x0
[ 10.620794] cx23885[0]/0: found at 0000:02:00.0, rev: 4, irq: 19, latency: 0, mmio: 0xd3000000
[ 10.620801] cx23885 0000:02:00.0: setting latency timer to 64
They're BOTH HVR-1250s. They look physically different - newer one has a smaller tuner.
???
Try:
~$ sudo apt-get install build-essential mercurial linux-headers-`uname -r`
~$ hg clone http://linuxtv.org/hg/v4l-dvb
~$ cd v4l-dvb
~/v4l-dvb$ make
~/v4l-dvb$ sudo make install
See http://www.avsforum.com/avs-vb/showthread.php?t=1173803
wftomlin 09-24-09, 11:04 PM Thanks for replying.
I did that as per: http://ubuntuforums.org/archive/index.php/t-550276.html
propagandhi
October 11th, 2007, 08:21 PM
Hi,
Try doing what the output tells you. It may not work, but I'd try each of the available options.
For example running:
insmod /lib/modules/2.6.22-14-generic/kernel/drivers/media/video/cx23885/cx23885.ko card=4
as root or with sudo fixes the problem for me. My card is a DVICO Fusion HDTV Dual Express, but it works with that driver, it has the cx23885 chipset.
For anybody else that is playing with a tuner card with a Conexant CX23885 chipset, use mercurial to check out the latest v4l-dvb sources. For example:
make sure you have build-essential packages and the headers for your running kernel.
sudo apt-get install mercurial
mkdir v4l_source
cd v4l_source
hg clone http://linuxtv.org/hg/v4l-dvb
cd v4l-dvb
make & make install
Once this is done, try to load the module with modprobe, and check your dmesg output to see if all is well and just working out of the box now. You would probably expect to see at the very least a device on /dev/dvb if it is working as well.
Okay, so if you're not up and running, you probably need to read further, so....
----------------------------------EDIT------------------------------------
IMPORTANT UPDATE: Below I refer to using the insmod command for loading the kernel modules.I will leave those instructions in place just for the sake of perhaps helping somebody debug their problem. However the cleanest way to have your card load correctly, is just to edit /etc/modprobe.d/options and add a line as such:
cx23885 card=4 or whatever card number you need to chose (see below for more info)
-------------------------------EDIT-------------------------------------------
If your dmesg output says something along the lines of what adelby posted, try loading the kernel module with insmod rather than modprobe. I have the 2.6.22-14-generic kernel and relevant headers installed, and my card is closest to the Fusion5 HDTV Express, so I ran:
insmod /lib/modules/2.6.22-14-generic/kernel/drivers/media/video/cx23885/cx23885.ko card=4
I found the list of card options after I first tried to load the driver with modprobe, then looking in dmesg where you would expect to see something similar to what was posted above by adelby:
cx23885[0]: Your board isn't known (yet) to the driver. You can
[ 28.553691] cx23885[0]: try to pick one of the existing card configs via
[ 28.553692] cx23885[0]: card=<n> insmod option. Updating to the latest
[ 28.553693] cx23885[0]: version might help as well.
[ 28.554028] cx23885[0]: Here is a list of valid choices for the card=<n> insmod option:
[ 28.554124] cx23885[0]: card=0 -> UNKNOWN/GENERIC
[ 28.554206] cx23885[0]: card=1 -> Hauppauge WinTV-HVR1800lp
[ 28.554289] cx23885[0]: card=2 -> Hauppauge WinTV-HVR1800
[ 28.554372] cx23885[0]: card=3 -> Hauppauge WinTV-HVR1250
[ 28.554455] cx23885[0]: card=4 -> DViCO FusionHDTV5 Express
Choose the card that is the closest match to yours and cross your fingers before running the insmod command.
Obviously you will then need to add the insmod command to your startup, such as in rc.local to ensure that it is loaded each time you boot.
DISCLAIMER: this may or may not work for you, and by the time you are performing these steps, the card might already be fully supported in ubuntu by default, or you may just be able to run modprobe alone and it will all work. Use this post just as a very basic starting point if nothing else has worked for you yet, it's not intended to be a howto.
When that didn't work, I tried:
insmod /lib/modules/2.6.28-11-generic/kernel/drivers/media/video/cx23885/cx23885.ko card=3
As described in the url and got an error message that the file existed.
The output from my dmesg in the original post was AFTER I tried the above. I then ran modprobe.
Sorry, I cut off part of the snippet - it looks like the driver was loaded:
[ 10.390849] Linux video capture interface: v2.00
[ 10.494522] cx23885 driver version 0.0.1 loaded
[ 10.494634] cx23885 0000:02:00.0: PCI INT A -> Link[APC4] -> GSI 19 (level, low) -> IRQ 19
[ 10.494639] cx23885[0]: Your board isn't known (yet) to the driver.
[ 10.494641] cx23885[0]: Try to pick one of the existing card configs via
[ 10.494642] cx23885[0]: card=<n> insmod option. Updating to the latest
[ 10.494643] cx23885[0]: version might help as well.
[ 10.494646] cx23885[0]: Here is a list of valid choices for the card=<n> insmod option:
[ 10.494648] cx23885[0]: card=0 -> UNKNOWN/GENERIC
[ 10.494650] cx23885[0]: card=1 -> Hauppauge WinTV-HVR1800lp
[ 10.494652] cx23885[0]: card=2 -> Hauppauge WinTV-HVR1800
[ 10.494654] cx23885[0]: card=3 -> Hauppauge WinTV-HVR1250
[ 10.494656] cx23885[0]: card=4 -> DViCO FusionHDTV5 Express
[ 10.494658] cx23885[0]: card=5 -> Hauppauge WinTV-HVR1500Q
[ 10.494660] cx23885[0]: card=6 -> Hauppauge WinTV-HVR1500
[ 10.494662] cx23885[0]: card=7 -> Hauppauge WinTV-HVR1200
[ 10.494664] cx23885[0]: card=8 -> Hauppauge WinTV-HVR1700
[ 10.494666] cx23885[0]: card=9 -> Hauppauge WinTV-HVR1400
[ 10.494668] cx23885[0]: card=10 -> DViCO FusionHDTV7 Dual Express
[ 10.494670] cx23885[0]: card=11 -> DViCO FusionHDTV DVB-T Dual Express
[ 10.494672] cx23885[0]: card=12 -> Leadtek Winfast PxDVR3200 H
[ 10.494819] CORE cx23885[0]: subsystem: 0070:2211, board: UNKNOWN/GENERIC [card=0,autodetected]
[ 10.620781] cx23885_dev_checkrevision() New hardware revision found 0x0
[ 10.620786] cx23885_dev_checkrevision() Hardware revision unknown 0x0
[ 10.620794] cx23885[0]/0: found at 0000:02:00.0, rev: 4, irq: 19, latency: 0, mmio: 0xd3000000
[ 10.620801] cx23885 0000:02:00.0: setting latency timer to 64
I'm stumped.
wnewell 09-25-09, 03:34 AM That version of the driver doesn't work with your card. You need 0.0.2 or later if there is one. Although this one was just released Aug. 1. WHen i got my hdtv7 dual express rev.4 card working.
cx23885 driver version 0.0.2 loaded
As I recall, I just downloaded the v4l-dvb source and compiled it. There's a post about it here somewhere. Go here and click on ZIP on left side of page and you get the lastest, dated Sept 23 2009 as of now.
http://linuxtv.org/hg/v4l-dvb/
Following the instructions I posted above, I get version 0.0.2. Did you reboot after installing the new v4l-dvb modules, to clear out the old ones from memory?
wftomlin 09-26-09, 02:18 AM Thanks for replying.
Ok, both cards are now working. Here's where things get strange. I followed wnewell's advice and downloaded the drivers from http://linuxtv.org/hg/v4l-dvb/. I examined the archived file to see the directory structure and figured out that it was identical to the one I had installed earlier thru the mecurial "clone" procedure (I didn't check individual files). The only difference was the new "zipped" file's top directory was named v4l-dvb-a798c751f06d rather than v4l-dvb. So, I deleted the v4l-dvb directory and unpacked the new file and renamed the top directory v4l-dvb. I then shut the machine down, pulled out the old card and put in the new one. I rebooted, and was going to run the make and make install, but on a whim, selected "Watch TV" when the system was up. It WORKED! I went in thru setup and checked the new card and it came up as Frontend: LGDT3305 (the old card was Samsung S5H1409 QAM).
Now I don't recall if I rebooted after k_ross's suggestion, but I found it strange (impossible?) that just replacing the the old directories with the new ones would work. I'm still new enough at Linux that I'm learning stuff everyday.
I put in both cards and dmesg shows the new card as a 1270.
[ 10.164145] Linux video capture interface: v2.00
[ 10.260650] cx23885 driver version 0.0.2 loaded
[ 10.261267] cx23885 0000:02:00.0: PCI INT A -> Link[APC1] -> GSI 16 (level, low) -> IRQ 16
[ 10.261443] CORE cx23885[0]: subsystem: 0070:2211, board: Hauppauge WinTV-HVR1270 [card=18,autodetected]
[ 10.410597] tveeprom 2-0050: Hauppauge model 22111, rev C2F5, serial# 6247006
[ 10.410601] tveeprom 2-0050: MAC address is 00-0D-FE-5F-52-5E
[ 10.410604] tveeprom 2-0050: tuner model is NXP 18271C2 (idx 155, type 54)
[ 10.410608] tveeprom 2-0050: TV standards NTSC(M) ATSC/DVB Digital (eeprom 0x88)
[ 10.410610] tveeprom 2-0050: audio processor is CX23888 (idx 40)
[ 10.410613] tveeprom 2-0050: decoder processor is CX23888 (idx 34)
[ 10.410615] tveeprom 2-0050: has no radio, has IR receiver, has no IR transmitter
[ 10.410618] cx23885[0]: hauppauge eeprom: model=22111
[ 10.410621] cx23885_dvb_register() allocating 1 frontend(s)
[ 10.411127] cx23885[0]: cx23885 based dvb card
[ 10.569139] tda18271 3-0060: creating new instance
[ 10.571093] TDA18271HD/C2 detected @ 3-0060
[ 10.593200] ACPI: PCI Interrupt Link [APCJ] enabled at IRQ 22
[ 10.593207] Intel ICH 0000:00:13.0: PCI INT A -> Link[APCJ] -> GSI 22 (level, low) -> IRQ 22
[ 10.593271] Intel ICH 0000:00:13.0: setting latency timer to 64
[ 10.800720] DVB: registering new adapter (cx23885[0])
[ 10.800725] DVB: registering adapter 0 frontend 0 (LG Electronics LGDT3305 VSB/QAM Frontend)...
[ 10.801161] cx23885_dev_checkrevision() Hardware revision = 0xd0
[ 10.801169] cx23885[0]/0: found at 0000:02:00.0, rev: 4, irq: 16, latency: 0, mmio: 0xd3000000
[ 10.801176] cx23885 0000:02:00.0: setting latency timer to 64
[ 10.801215] cx23885 0000:03:00.0: PCI INT A -> Link[APC4] -> GSI 19 (level, low) -> IRQ 19
[ 10.801299] CORE cx23885[1]: subsystem: 0070:7911, board: Hauppauge WinTV-HVR1250 [card=3,autodetected]
[ 10.936662] tveeprom 5-0050: Encountered bad packet header [ff]. Corrupt or not a Hauppauge eeprom.
[ 10.936666] cx23885[1]: warning: unknown hauppauge model #0
[ 10.936668] cx23885[1]: hauppauge eeprom: model=0
[ 10.936671] cx23885_dvb_register() allocating 1 frontend(s)
[ 10.938441] cx23885[1]: cx23885 based dvb card
[ 10.964252] intel8x0_measure_ac97_clock: measured 54344 usecs
[ 10.964256] intel8x0: clocking to 46859
[ 10.996977] MT2131: successfully identified at address 0x61
[ 10.996983] DVB: registering new adapter (cx23885[1])
[ 10.996986] DVB: registering adapter 1 frontend 0 (Samsung S5H1409 QAM/8VSB Frontend)...
[ 10.997432] cx23885_dev_checkrevision() Hardware revision = 0xa4
[ 10.997441] cx23885[1]/0: found at 0000:03:00.0, rev: 3, irq: 19, latency: 0, mmio: 0xd4000000
[ 10.997448] cx23885 0000:03:00.0: setting latency timer to 64
.
.
.
.
.
[ 9495.612362] DVB: adapter 0 frontend 0 frequency 863000000 out of range (54000000..858000000)
[ 9495.612887] DVB: adapter 0 frontend 0 frequency 869000000 out of range (54000000..858000000)
[ 9495.616682] DVB: adapter 0 frontend 0 frequency 875000000 out of range (54000000..858000000)
[ 9495.617160] DVB: adapter 0 frontend 0 frequency 881000000 out of range (54000000..858000000)
[ 9495.620886] DVB: adapter 0 frontend 0 frequency 887000000 out of range (54000000..858000000)
[ 9851.784351] DVB: adapter 1 frontend 0 frequency 863000000 out of range (54000000..858000000)
[ 9851.784871] DVB: adapter 1 frontend 0 frequency 869000000 out of range (54000000..858000000)
[ 9851.788680] DVB: adapter 1 frontend 0 frequency 875000000 out of range (54000000..858000000)
[ 9851.792052] DVB: adapter 1 frontend 0 frequency 881000000 out of range (54000000..858000000)
[ 9851.792881] DVB: adapter 1 frontend 0 frequency 887000000 out of range (54000000..858000000)
I haven't gotten around to figuring out what the "out of range" errors are at the end. I had to hurry off to see my grand niece qualify for her black belt in Taekwondo. She's 11 :eek:
Thanks again k_ross and wnewell. If either of you could explain what happened, I'd appreciate it. I'm trying to learn this stuff so I might be able to help someone else down the line.
I would guess that you didn't reboot after installing the first time.
Those "out of range" errors most likely happened while you were doing a channel scan. Those frequencies correspond to channels 79-83, which aren't used any more, so no harm there.
Anyway, glad you got it working!
Ok, both cards are now working. Here's where things get strange. I followed wnewell's advice and downloaded the drivers from http://linuxtv.org/hg/v4l-dvb/. I examined the archived file to see the directory structure and figured out that it was identical to the one I had installed earlier thru the mecurial "clone" procedure (I didn't check individual files). The only difference was the new "zipped" file's top directory was named v4l-dvb-a798c751f06d rather than v4l-dvb. So, I deleted the v4l-dvb directory and unpacked the new file and renamed the top directory v4l-dvb. I then shut the machine down, pulled out the old card and put in the new one. I rebooted, and was going to run the make and make install, but on a whim, selected "Watch TV" when the system was up. It WORKED! I went in thru setup and checked the new card and it came up as Frontend: LGDT3305 (the old card was Samsung S5H1409 QAM).
Now I don't recall if I rebooted after k_ross's suggestion, but I found it strange (impossible?) that just replacing the the old directories with the new ones would work. I'm still new enough at Linux that I'm learning stuff everyday.
... If either of you could explain what happened, I'd appreciate it. I'm trying to learn this stuff so I might be able to help someone else down the line.read through here, as it will explain a lot of your questions:
http://www.linuxtv.org/wiki/index.php/How_to_Obtain,_Build_and_Install_V4L-DVB_Device_Drivers
In short
- your replacing the directory had no role in the matter ... you had already installed the modules priorly
- comparing the two downloads directory structure really won't tell you anything regarding differences between the two .. you'd have to do a file compare...in any regard, the snapshots that you grabbed were likely the same ... you could have used "hg -identify" to verify if the changeset IDs were the same (a798c751f06d) between your two downloads of the sources, but the point is moot now
They're BOTH HVR-1250s. They look physically different - newer one has a smaller tuner.
....
I put in both cards and dmesg shows the new card as a 1270.Sounds like you got yourself the new model.
|
|