[vdr] about the hvr-4000 tuning problems

Mika Laitio lamikr at pilppa.org
Thu Jan 15 23:30:44 CET 2009


Hi

I have tried to add some more printouts to dvbdevice.c for trying to 
understand why the vdr-1.7.x fails to tune to dvb-s or dvb-s2 channels.
hvr-1300 is in /dev/dvb/adapter0 and hvr-4000 is in /dev/dvb/adapter1


I added printouts to SetFrontEnd() and Action() methods.
In SetFrontEnd() method it seems that the code is at least always going
to correct if/else block. (No, diseq, dvb-t, dvb-s or dvb-s2 depending on 
what channel I try to tune)

If I watch dvb-t channel (which works), I can see a following logs:

Action(): cardIndex: 0, tunerStatus: 1, NewStatus: 0
SetFrontEnd(): DVB-T, fd_frontend: 4, cardIndex: 0
Action(): cardIndex: 0, tunerStatus: 2, NewStatus: 1
Action(): cardIndex: 0, tunerStatus: 2, NewStatus: 1
...
Action(): cardIndex: 0, tunerStatus: 2, NewStatus: 31
frontend 0 regained lock on channel 1, tp 546
Action(): cardIndex: 1, tunerStatus: 0, NewStatus: 31
Action(): cardIndex: 0, tunerStatus: 3, NewStatus: 31
frontend 0 regained lock on channel 1, tp 546
Action(): cardIndex: 1, tunerStatus: 0, NewStatus: 31
Action(): cardIndex: 0, tunerStatus: 3, NewStatus: 31
frontend 0 regained lock on channel 1, tp 546
Action(): cardIndex: 1, tunerStatus: 0, NewStatus: 31
Action(): cardIndex: 0, tunerStatus: 3, NewStatus: 31
...

If I instead try to tune to new dvb-s channel that I have not previously 
pre-tuned with szap or szap-s2 (for example arte), vdr will fail to show 
the channel and I can see a following:

Action(): cardIndex: 1, tunerStatus: 0, NewStatus: 31
Action(): cardIndex: 0, tunerStatus: 0, NewStatus: 0
Action(): cardIndex: 1, tunerStatus: 0, NewStatus: 31
Action(): cardIndex: 1, tunerStatus: 1, NewStatus: 31
Setup.DiSeqC == false
SetFrontEnd(): DVB-S, fd_frontend: 6, cardIndex: 1
(frequency * 1000UL): 993000
channel.Modulation(): 9
channek.Srate() * 1000UL): 22000000
channel.CoderateH(): 5
channel.Inversion(): 2
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 0
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 31
frontend 1 regained lock on channel 5, tp 110743
Action(): cardIndex: 0, tunerStatus: 0, NewStatus: 0
Action(): cardIndex: 1, tunerStatus: 3, NewStatus: 3
frontend 1 lost lock on channel 5, tp 110743
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 1
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 1
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 1
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 1
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 1
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 1
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 3
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 3
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 3
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 1
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 1
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 1
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 3
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 3
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 3
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 3
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 1
...

If I have pre-tuned for example to same arte with szap-s2, then vdr is 
able to show that channel, and I get a following output:

Action(): cardIndex: 1, tunerStatus: 0, NewStatus: 1
Action(): cardIndex: 1, tunerStatus: 1, NewStatus: 3
Setup.DiSeqC == false
Action(): cardIndex: 0, tunerStatus: 0, NewStatus: 0
SetFrontEnd(): DVB-S, fd_frontend: 6, cardIndex: 1
(frequency * 1000UL): 993000
channel.Modulation(): 9
channek.Srate() * 1000UL): 22000000
channel.CoderateH(): 5
channel.Inversion(): 2
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 0
Action(): cardIndex: 1, tunerStatus: 2, NewStatus: 31
frontend 1 regained lock on channel 5, tp 110743
Action(): cardIndex: 0, tunerStatus: 0, NewStatus: 0
Action(): cardIndex: 1, tunerStatus: 3, NewStatus: 31
frontend 1 regained lock on channel 5, tp 110743
Action(): cardIndex: 0, tunerStatus: 0, NewStatus: 0
Action(): cardIndex: 1, tunerStatus: 3, NewStatus: 31
frontend 1 regained lock on channel 5, tp 110743
Action(): cardIndex: 0, tunerStatus: 0, NewStatus: 0
Action(): cardIndex: 1, tunerStatus: 3, NewStatus: 31
frontend 1 regained lock on channel 5, tp 110743
Action(): cardIndex: 0, tunerStatus: 0, NewStatus: 0
Action(): cardIndex: 1, tunerStatus: 3, NewStatus: 31
...

I have following in my channel conf for dvb-t and dvb-s channels:
YLE TV1;YLE:546000:B8C23G8M64T8Y0:T:27500:512=2:650=fin:2321:0:17:8438:4097:0
arte;ARD:10743:hC56M5O0S0:S19.2E:22000:401=2:402=deu,403=fra:404:0:28724:1:1051:0

Klaus, do you have any idea from which functions I should try to track 
more for finding the problem?

Mika



More information about the vdr mailing list