[linux-dvb] Cannot tune with KNC1 TV Station DVB-S Ver 2.0 card

Jelte Veldstra jelte.veldstra at gmail.com
Wed Mar 1 10:19:20 CET 2006


Recently I acquired a KNC1 DVB-S card to use it with MythTV running on
Fedora Core 4.

Initially the card was not recognised at all by both
kernel-2.6.11-1.1369_FC4 and kernel-2.6.15-1.1831_FC4. The modules wouldn't
load automatically and loading the modules by hand didn't give dmesg
messages that the card was recognised. I found out that my card has a
different PCI id from the KNC1 DVB-S card on the linuxtv DVB Wiki. On the
Wiki the subsystem id is 1131:4f56 whereas my DVB-S card has 1894:0010.
lspci -nv shows:

00:09.0 Class 0480: 1131:7146 (rev 01)
        Subsystem: 1894:0010
        Flags: bus master, medium devsel, latency 32, IRQ 5
        Memory at e4000000 (32-bit, non-prefetchable) [size=512]

The PCB of the card lists "MULTINORM DVB TUNER Ver 2.0". So my guess is from
this and the different PCI subsystem id that this is a new release of this
card.

I downloaded and installed the kernel source RPM for
kernel-2.6.15-1.1831_FC4 and modified budget-av.c. Here's the diff output
for the original and my edit:

[root at localhost ~]# diff budget-av.c.orig budget-av.c
1005c1005
<       MAKE_EXTENSION_PCI(knc1s, 0x1131, 0x0010),
---
>       MAKE_EXTENSION_PCI(knc1s, 0x1894, 0x0010),

After compiling and booting this kernel, the card was recognised and udev
created the /dev/dvb entries. With this kernel dmesg output shows:

Linux video capture interface: v1.00
saa7146: register extension 'budget_av'.
PCI: Found IRQ 5 for device 0000:00:09.0
PCI: Sharing IRQ 5 with 0000:00:04.2
saa7146: found saa7146 @ mem f0ad2000 (revision 1, irq 5) (0x1894,0x0010).
DVB: registering new adapter (KNC1 DVB-S).
adapter failed MAC signature check
encoded MAC from EEPROM was
ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff
budget-av: ci interface initialised.
KNC1-0: MAC addr = 00:09:d6:6d:24:71
DVB: registering frontend 0 (ST STV0299 DVB-S)...

This seems fine to me as far as I can tell, however all tries of scanning
for channels or tuning (using a channels.conf provided by a friend) fail.
Could someone please help me diagnose the output? Googling didn't help
unfortunately.

Here's what I see when trying to scan for channels:

[root at localhost ~]# scandvb -vv /usr/share/dvb-apps/dvb-s/Astra-19.2E
scanning /usr/share/dvb-apps/dvb-s/Astra-19.2E
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
initial transponder 12551500 V 27000000 5
>>> tune to: 12551:v:0:27000
DiSEqC: switch pos 0, 13V, hiband (index 2)
>>> tuning status == 0x06
>>> tuning status == 0x06
>>> tuning status == 0x06
>>> tuning status == 0x02
>>> tuning status == 0x06
>>> tuning status == 0x02
>>> tuning status == 0x06
>>> tuning status == 0x06
>>> tuning status == 0x06
>>> tuning status == 0x06
WARNING: >>> tuning failed!!!
>>> tune to: 12551:v:0:27000 (tuning failed)
DiSEqC: switch pos 0, 13V, hiband (index 2)
>>> tuning status == 0x06
>>> tuning status == 0x06
>>> tuning status == 0x02
>>> tuning status == 0x06
>>> tuning status == 0x06
>>> tuning status == 0x06
>>> tuning status == 0x06
>>> tuning status == 0x06
>>> tuning status == 0x02
>>> tuning status == 0x06
WARNING: >>> tuning failed!!!
ERROR: initial tuning failed
dumping lists (0 services)
Done.

Trying to tune using an existing channels.conf:

[root at localhost ~]# szap -c channels.conf Eurosport
reading channels from file 'channels.conf'
zapping to 155 'Eurosport':
sat 0, frequency = 11953 MHz H, symbolrate 27500000, vpid = 0x019a, apid =
0x01a4
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
status 06 | signal 0000 | snr 0000 | ber 0000ff08 | unc 00000000 |
status 06 | signal 0000 | snr 0000 | ber 0000df00 | unc 00000000 |
status 06 | signal 0000 | snr 0000 | ber 00009900 | unc 00000000 |
status 06 | signal 0000 | snr 0000 | ber 00008f00 | unc 00000000 |
status 02 | signal 0000 | snr 0000 | ber 00008200 | unc 00000000 |
status 06 | signal 0000 | snr 0000 | ber 00008000 | unc 00000000 |
status 06 | signal 0000 | snr 0000 | ber 00008300 | unc 00000000 |

I have enabled debug messages for stv0299. When I try to tune I see this in
dmesg:

stv0299: stv0299_set_FEC
stv0299: stv0299_set_voltage: ??
stv0299: stv0299: init chip
stv0299: stv0299_wait_diseqc_idle
stv0299: stv0299_set_voltage: SEC_VOLTAGE_18
stv0299: stv0299_send_diseqc_msg
stv0299: stv0299_wait_diseqc_idle
stv0299: stv0299_wait_diseqc_fifo
stv0299: stv0299_wait_diseqc_fifo
stv0299: stv0299_wait_diseqc_fifo
stv0299: stv0299_wait_diseqc_fifo
stv0299: stv0299_wait_diseqc_idle
stv0299: stv0299_send_diseqc_burst
stv0299: stv0299_wait_diseqc_idle
stv0299: stv0299_wait_diseqc_idle
stv0299: stv0299_wait_diseqc_idle
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x94
stv0299: stv0299_read_signal_strength : FE_READ_SIGNAL_STRENGTH : AGC2I:
0xffff, signal=0x0000
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x90
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x92
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x90
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x93
stv0299: stv0299_read_signal_strength : FE_READ_SIGNAL_STRENGTH : AGC2I:
0xffff, signal=0x0000
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x83
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x93
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x92
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x93
stv0299: stv0299_read_signal_strength : FE_READ_SIGNAL_STRENGTH : AGC2I:
0xffff, signal=0x0000
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x91
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x90
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x90
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x90
stv0299: stv0299_read_signal_strength : FE_READ_SIGNAL_STRENGTH : AGC2I:
0xffff, signal=0x0000
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x94
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x93
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x92
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x83
stv0299: stv0299_read_signal_strength : FE_READ_SIGNAL_STRENGTH : AGC2I:
0xffff, signal=0x0000
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x94
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x94
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x94
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x91
stv0299: stv0299_read_signal_strength : FE_READ_SIGNAL_STRENGTH : AGC2I:
0xffff, signal=0x0000
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x91
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x90
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x91
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x93
stv0299: stv0299_read_signal_strength : FE_READ_SIGNAL_STRENGTH : AGC2I:
0xffff, signal=0x0000
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x91
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x90
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x93
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x94
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x94
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x92
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x93
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x94
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x83
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x93
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x90
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x92
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x92
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_read_status : FE_READ_STATUS : VSTATUS: 0x92
stv0299: stv0299_set_frontend : FE_SET_FRONTEND
stv0299: stv0299_set_FEC
stv0299: stv0299_set_voltage: ??

At first glance it seems that the tuner doesn't get a signal. Or perhaps the
frontend isn't initialised properly. I have used this same card in the same
system with Windows XP SP2 and that works fine. So a hardware issue can be
ruled out I guess.

I have tried to compile the CVS checkout of kernel-dvb with the FC4 src.rpm.
This didn't work. Perhaps I should try to use a kernel.org kernel source,
but I'd like to stick to the FC4 kernel as I don't know whether other things
would break.

I hope I provided enough information. Just let me know if more is needed.

Thanks in advance for your time.

Regards,


Jelte
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.linuxtv.org/pipermail/linux-dvb/attachments/20060301/af57200e/attachment-0001.htm


More information about the linux-dvb mailing list