Been working on the 2.4 GHz DVB-S transmitter (for satellite uplink). For now testing on 1575420000 BTW for you GPS paranoiacs that is in the DVB-S IF tuner input band, what comes out your LNB normally, great for testing Keeps the drones away too.
Anyways.. There are nice chips with fractional dividers, those are almost never on the right frequency, that high frequency ripple causes constant phase changes.. I have tried that with FPGA, it works... But what do I actually want? I am at 2.4 GHz with a bandwidth of a few MHz. So a few kHz drift is no problem. To rescue comes the PIC frequency counter, with 256 prescaler. But the question was : how to get rid of those frequent frequency adjustments... When left all by itself the VCO is very stable, only slow temperature changes have an effect. But the VCO should be steered to the right frequency fast, and then stay there, and only be corrected when frequency deviates more than that few kHz.
So I have been experimenting now for a few days, running tests, wrote some code. And things work really well!
Use PIC internal counter to measure frequency, multiply it by the PIC internal and also by the 256x external prescaler, compare it to requested frequency (set via RS232), divide the difference by some integer, and use that to set a 10 bit 90 kHz PWM output. That is filtered and a normal SLOW loop filter applied and fed to the VCO.
The division of the frequency difference by some integer sets the loop gain, but _also_ creates a dead band where no correction takes place. So if you divide by 10,000, it takes a 10 kHz deviation before any PWM change, any frequency correction. And that is exactly what I wanted. All is now programmable via RS232, you can switch the PLL off too, set the frequency (PWM value) manually... And the PIC drives an LCD to show the current frequency.
Although the frequency counter only gives a new value once per second, the system still locks in range from total edge of VCO within a minute, so say 60 samples, not bad.
The little counter will be cloned onto the main board. The Raspberry does it all, the DVB-S processing, see
This hardware has been completely modified, I am driving the AD quad modulator differentially now, no up-conversion. And using the proper hardware root squared Nyquist filters, as well as pre-compensation.
The circuit diagram ATM consists of several pieces of A4.. The colored LEDs are are used as voltage stabilizer in the diff stages.
Its all experimental, and can change anytime. But interesting.
Nice steady QAM constellation.