From: "Antti Kaihola" <[EMAIL PROTECTED]> > I'm having tuning problems on my budget DVB-C card. When I get a good > tuning, everything works perfectly. Unfortunately I get occasional > tuning failures all the time.
Could you elaborate on the "tuning failures". What are you seeing? An error code returned by the frontend driver, or is it that the demodulator just does not lock. If the latter is the case, could you read the AFC value when the demodulator failed to lock? When developing my Windows VES1820 driver, I found the following: The VES1820 AFC logic is a bit flawed and can get "stuck" at a high off-center value. At this stage, you have to reset the VES1820 (set register 0 bit 0 to 0 then to 1) to reset the AFC, which will make the VES1820 lock. I found a way to both optimize the channel changing times and to make channel changes reliable at the same time: When only the tuning frequency has changed (i.e. the demodulator settings are unchanged), do _NOT_ immediately reset the demodulator. Instead, wait 10 milliseconds and then read the VAFC register. If it is outside the range [-4 ... +4], reset the demodulator. This way, channel changes will typically occur in less than 10 ms (if no reset was necessary), and if the AFC gets stuck, it will lock in typically less than 50ms (after a reset, the VES1820 needs at least 35ms to lock). If you're up to it, try implementing this in the Linux driver. It is working very well in my Windows driver. Regards, -- Robert Schlabbach e-mail: [EMAIL PROTECTED] Berlin, Germany -- Info: To unsubscribe send a mail to [EMAIL PROTECTED] with "unsubscribe linux-dvb" as subject.
