Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: tuning problem



Hi,

> On Thu, 28 Feb 2002, Arpi wrote:
> > I've put together a simple app to scan through freq ranges and show signal
> > strength and other flags (sync, carrier etc) for each mhz.
> > When I start it, for few minutes it's running fine, and then it lost the
> > control over the card, just shows zero signal. Even if i start VDR or othe
> r
> > dvb app, i got no channels tuned again, until hard reset :(
> 
> Recent driver version? Are there syslog messages?

0.9.4, with a galaxys (siemens) dvb-s 1.3 card

no, no messages in syslog or dmesg :(
everything seems to be ok, i just lost control over tuning silently :(

hmm. i'm using firmware from 0.9.3, maybe it's the prob. ok, i'll try with
firmware from 0.9.4 too.

> I can confirm this kind of phenomenon for the old 0.8.2 driver with a
> DVB-S 1.3 card. I revived the "stest" program that uses libdvb scanning
> routines. From time to time the program hangs while syslog reveals DEBI
> timeout and ARM reset messages.
no such messages here.

> > Any idea, about what am i doing wrong?
> > 
> > Multidec 8 and the technotrend windows programs could scan the whole range
> ,
> > so the card/lnb etc should be ok. I just wanted to add such feature to VDR
> .
> > 
> > Maybe I should disable/enable some other flags somewhere to set up 'channe
> l
> > scanning' mode?
> 
> Where are those flags?
dunno, i know nothing about such flags, just asked if they exists or not :)

> It seems there is a risk that the ARM firmware may hang on heavy traffic
> through the DEBI port. Well, only a certain kind of traffic. For me no
> hangs appear while reading/writing streams thru DEBI. As said this is true
> for the 0.8.2 driver.
> 
> > Or it just drives LNB to some disallowd freq range ?
> 
> There is no frequency control data sent to the LNB.

ah. so LNB works like an antenna, and the dvb card filters out the requested
freqency band out of the lnb signal?
i always thought that oscillator freq is 'sent' to lnb and it 'sends back'
only the requested band...

> > What's the relation between FrontendParameters.Frequency, and the LNB limi
> ts
> > (9750, 10600 and switch freq 11700) ?
> 
> The frontend device relates to tuner hardware module and its properties.
> LNB settings must be dealt via the SEC device.

How can i transform between real absolute freq and these lnb parameters +
oscillator freq values?

> > For reference, the interesting part of my code:
> > 
> > 
> >         FrontendInfo info;
> >         FrontendParameters param;
> >         if((fd = open("/dev/ost/frontend",O_RDWR)) < 0){
> >                 perror("FRONTEND DEVICE: ");
> >                 return -1;
> >         }
> >         printf("selftest=%d\n",ioctl(fd,FE_SELFTEST));
>                                           ^^^^^^^^^^^
> Does nothing.
ah. 

> >         printf("get_info=%d\n",ioctl(fd,FE_GET_INFO,&info));
>                                           ^^^^^^^^^^^
> Returned values are not reliable. An allowed frequency range of
> 500..2700000 kHz for DVB-S is nonsense IMHO. Unfortunately out-of-range
> or "silly" input values are not rejected, neither by dvb.o nor tuner.o.

I see. What are the real allowed values?

> 
> >         printf("get_param=%d\n",ioctl(fd,FE_GET_FRONTEND,&param));
> >         for(freq=info.minFrequency;freq<info.maxFrequency;freq+=250){
> >             int x=0;
> > //              printf("FREQ=%d\n",freq);
> >                 param.Frequency=freq*1000;
>                                        ^^^^
> param.Frequency needs [kHz] for DVB-S.
hmm. it may explains my results, anyway i remember reading somewhere it's Hz.

> >                 ioctl(fd,FE_SET_FRONTEND,&param);
> >                 usleep(500000);
> >                 ioctl(fd,FE_READ_SIGNAL_STRENGTH,&sstr);x+=sstr;
> >                 usleep(100000);
> >                 ioctl(fd,FE_READ_SIGNAL_STRENGTH,&sstr);x+=sstr;
> >                 usleep(100000);
> >                 ioctl(fd,FE_READ_SIGNAL_STRENGTH,&sstr);x+=sstr;
> >                 usleep(100000);
> >                 ioctl(fd,FE_READ_SIGNAL_STRENGTH,&sstr);x+=sstr;
> >                 usleep(100000);
> >                 ioctl(fd,FE_READ_STATUS,&status);
> >                 printf("FREQ=%10.3f MHz SS=%5d STATUS=0x%02X\n",
> > 			(float)(freq*0.001f),sstr,status);
> > 	}
> 
> My experiences with DVB-S 1.3 (VES1893 demodulator) say that the signal
> strength parameter is not explicit enough to detect a good-quality
> reception status.

I'll also use other status flags (signal, sync, carrier) to get more
accurate freq.


A'rpi / Astral & ESP-team

--
Developer of MPlayer, the Movie Player for Linux - http://www.MPlayerHQ.hu


-- 
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.


Home | Main Index | Thread Index