[linux-dvb] FIX: No recovery after lost lock

Jesper Sörensen jesper at datapartner.se
Wed Aug 31 15:16:31 CEST 2005


Johannes Stezenbach skrev:

>On Mon, Aug 29, 2005 at 01:00:41AM +0200, Johannes Stezenbach wrote:
>  
>
>>On Wed, Aug 24, 2005 Marian Durkovic wrote:
>>    
>>
>>>  I found a big thread on linux-dvb list couple of months old, about problems 
>>>with retuning after lost lock.
>>>
>>>  I was experiencing the same situation - but only with dvb-kernel drivers.
>>>My old boxes with 2.4.20 kernel and DVB branch never had this problem.
>>>The new box was never able to retune even after signal degradation by heavy 
>>>rain or after cable disconnecting/reconnecting.
>>>
>>>  My oscilloscope was showing the 22 kHz signal even after lost lock, but the
>>>card was not able to retune. Restarting the application always solved the
>>>problem.
>>>
>>>  Finally I found the reason - it's the following code in dvb_frontend.c:
>>>
>>>                        /* if we're tuned, then we have determined the correct i
>>>nversion */
>>>                        if ((!(fe->info->caps & FE_CAN_INVERSION_AUTO)) &&
>>>                            (fe->parameters.inversion == INVERSION_AUTO)) {
>>>                                fe->parameters.inversion = fe->inversion;
>>>                        } 
>>>
>>>  If this is commented out, the frontend is able to retune.
>>>      
>>>
>>Has anyone had time to look into this? Anyone else seeing the
>>problem, and if yes does that change fix it?
>>    
>>
>
>No more people with SAT-equipment willing to test and/or comment
>on this?
>  
>

I have a Nova-S-CI too (budget-ci & stv0299) and I've seen some weird 
problems with lock loss on a specific transponder (Thor 1.0°W, 11 229 
MHz, H polarity) but I'm not sure if it is related to this issue. Maybe 
it has something to do with the polarity since most of the other 
transponders (which work fine) use V polarity...?

Symptoms are: good lock at first but then the lock is lost after a 
couple of seconds up to a few minutes and it doesn't retune 
automatically. When this happens it is very reproducable but when I try 
again a few hours later everything can be perfectly fine so I don't know 
what could be causing it?

I've done some quick testing with the patch and it doesn't seem to make 
any difference for me (neither better nor worse).

This happened just now:

zapping to 176 'Discovery':
sat 0, frequency = 11229 MHz H, symbolrate 24500000, vpid = 0x0384, apid 
= 0x0385
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
status 1f | signal be01 | snr df77 | ber 0000ff00 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal bdf9 | snr df8c | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c1be | snr df7a | ber 00000400 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c078 | snr df35 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c027 | snr df47 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c05e | snr dfb0 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c068 | snr df08 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c07e | snr df5f | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c03d | snr dfe3 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c07d | snr e031 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal bf42 | snr df4d | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c05b | snr df50 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c047 | snr df29 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal bfe5 | snr e034 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c07c | snr e019 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c06f | snr e037 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal bfbb | snr dff5 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c071 | snr df23 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c055 | snr dede | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal bf9b | snr dfa1 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c077 | snr df89 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal bf45 | snr dfe6 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c063 | snr dfbf | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal c07c | snr df71 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 1f | signal bf3c | snr df05 | ber 00000000 | unc 00000000 | 
FE_HAS_LOCK
status 00 | signal 0000 | snr 826b | ber 0000ca48 | unc 00000000 |
status 00 | signal 0000 | snr 7c92 | ber 0000ff00 | unc 00000000 |
status 01 | signal 7e92 | snr 7b0f | ber 0000ff80 | unc 00000000 |
status 01 | signal 7cef | snr 7e15 | ber 0000ff00 | unc 00000000 |
status 01 | signal 7de6 | snr 7cf2 | ber 0000ff00 | unc 00000000 |
status 01 | signal 7916 | snr 7daf | ber 0000ffc8 | unc 00000000 |
status 01 | signal 7cf9 | snr 7cb6 | ber 0000ff00 | unc 00000000 |
status 03 | signal 77fb | snr 7bc3 | ber 0000ff00 | unc 00000000 |
status 00 | signal 0000 | snr 7b48 | ber 0000ff00 | unc 00000000 |
status 00 | signal 0000 | snr 7c9b | ber 0000fff0 | unc 00000000 |
status 00 | signal 0000 | snr 822f | ber 0000ffe0 | unc 00000000 |
status 00 | signal 0000 | snr 7eff | ber 0000ff68 | unc 00000000 |

This is with vanilla Linux 2.6.13 + Marian's patch.





More information about the linux-dvb mailing list