Mailing List archive

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

[linux-dvb] Re: Budget DVB-C tuning problems



From: "Johannes Stezenbach" <js@convergence.de>
> > and AFC is interesting even if there is no sync.
>
> (sync & 2) tests if the carrier has been recovered.
> If we don't have a carrier, then AFC is undefined
> (AFC := difference between given frequency and
>  recovered carrier frequency).

True, the docs say "if the carrier has been recovered". However, the value
of the AFC register seems to reflect where the VES1820 is currently
"looking" for the carrier if it has no sync. And you can see when it gets
"stuck", because it stops changing. Thus, I stand by my statement: The
value of the VAFC register is _interesting_ even if there is no sync.

> >   ((s32)(p->u.qam.symbol_rate * afc) >> 10));
>
> The calcuation above avoids overflow errors at the expense of some
> loss in precision.

Unnecessarily so. The maximum symbol_rate supported by the VES1820 is 8.75
Mbaud. AFC can be -128 maximum. 8.75M * -128 = -1120M -> that'll fit into a
signed 32-bit integer.

> > I found that the most difficult channel changes to the VES1820 are
> > between _adjacent_ channels, especially in downwards direction.
>
> Hm.

BTW, I forgot the scenario in which the AFC gets stuck most often: Switch
from an unused (or analog) channel to a digital channel (typically during
channel scan). E.g. In Berlin, switch from S25 to S26. The VES1820 will
often fail to lock, unless reset.

Regards,
--
Robert Schlabbach
e-mail: robert_s@gmx.net
Berlin, Germany



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



Home | Main Index | Thread Index