The RTL-SDR dongle is a real workhorse for radio hacking. However, the 28.8 MHz oscillator onboard isn’t as stable as you might wish. It is fine for a lot of applications and, considering the price, you shouldn’t complain. However, there are some cases where you need a more stable reference frequency.
[Craig] wanted a stable solution and immediately thought of a TCXO (Temperature Compensated “Xtal” Oscillator). The problem is, finding these at 28.8 MHz is difficult and, if you can find them, they are relatively expensive. He decided to make an alternate oscillator using an easier-to-find 19.2 MHz crystal.
How do you convert a 19.2 MHz signal to 28.8 MHz? First, you need a flip-flop to divide the output frequency by two. That gives you a 9.6 MHz square wave. That doesn’t seem much better until you think about what makes a square wave. The Fourier series tells you that a square wave is an infinite sum of sine waves. One sine wave is at the fundamental frequency and then other sine waves at each odd harmonic (that is, 3X, 5X, 7X, and so on). And 3 * 9.6 is 28.8, just what you need!
All [Craig] had to do was filter the output of the flip-flop to produce an accurate 28.8 MHz signal. He provides all the necessary data to duplicate his design, and you can see him put it through its paces in the video below.
The next step up from a TXCO is one with an oven (an OCXO). We’ve seen some homebrew OCXOs that ought to work with the same trick.
29 thoughts on “Improving The RTL-SDR”
That’s odd, my NooElec NESDR Mini 2+ RTL-SDR has a tcxo oscillator already built in. Here it is on Amazon: http://www.amazon.com/gp/aw/d/B00VZ1AWQA/ref=sr_ph_1?qid=1459218503&sr=sr-1&pi=AC_SX236_SY340_FMwebp_QL65&keywords=nooelec
While I applaud his efforts in making his current RTL-SDR better, I would imagine just dropping another $25 on a SDR with the right TCXO built in would have been cheaper and more accurate.
Perhaps his radio uses the rare elonics E4000 chip. In this case it would be more economical to work with what he already has.
I think my point still stands, $25 and he would have had the real deal and alot less work.
I still think it’s a great hack, just don’t know why he would bother when his hacked version probably doesn’t perform as well as the real deal.
Besides, is the elonics E4000 really that good of a chip to go through that much trouble?
Also, we are talking about the oscillator, not the chipset. Maybe they don’t make SDRs with E4000 chips and 28.8mhz TCXOs, and maybe that’s becuase it isn’t worth the trouble?
And as was noted by other people already, the 28.8mhz TCXO oscillator is available at a lower cost than what the article hints at.
Just the trouble with society now, just flip more money at something so you can buy your way out. I applaud his efforts, even if he has *only* done it for learning – I’ll bet he learnt a lot more from doing this than virtually any uni course would have taught him!
The trouble with society “these days” is that you can pay money for something rather than doing it yourself?
I disagree, the trouble with society “these days” is that someone can post something so incredibly stupid about a device using an integrated circuit as a comment on a web page using a computer, and not realize how incredibly stupid they are.
Here is a hint: None of that would be possible without millions and millions of people paying money for things rather than doing it themselves for hundreds and hundreds of years.
I’m all for DIY, and learning, which is why I roll up my sleeves and get to work when I come across a reactionary know-it-all, even though chances are, they are unteachable.
I’m using the same model for my auto RF work mostly 300Mhz-400Mhz.
Oh yeah.. Know one with the same quality that does around 5Ghz?
In a week or so I will reply with a link. It is not uploaded yet.
That was clever use of the square wave harmonics.
That is true; yet, the underlying principle is the standard way of getting multiples of frequencies.
There must still be a lot of the fundamental + harmonics (the ones you aren’t interested in) that make it into the final signal, though. I imagine it would take a pretty impressive filter to adequately remove all of those frequency components. RF stuff can be sensitive to surprisingly-small signals.
The filter used is a 3rd order Butterworth bandpass, and the output signal is very clean; all unwanted harmonics, including the fundamental, are heavily attenuated (see 04:33 in the video: https://www.youtube.com/watch?v=ZdlSHtGH8EI&t=4m33s).
Yes but Nooelec now has TXCO versions for a few dollars more over the top of the non compensated version. The mini without TXCO is 25 and with is 30. There are others that are a bit cheaper. This is pretty awesome for thinking about projects in the future.
If you buy them from nooelec’s store page on Amazon, the non TCXO version is $23, and the TCXO version is $25. Save some money!
yeah, but this way they can post it on Hackaday with out some one saying “not a hack”
you can get 28.8 MHz TCXOs without too much trouble or just get an RTL-SDR blog RTL-SDR with a rather nice TCXO, a metal case and SMA for $20
the big thing i did to improve my RTL-SDR is add shielding (copper foil soldered to the ground plane over the frontend and a separate one over the ADC) and heat sinks and replace the 1.2v switching regulator with an LDO … a few bucks to upgrade and it does make a difference
I suspect all the mods you mention are way more beneficial than increasing the accuracy of the oscillator.
But you forgot the old adding a capacitor to the USB feed line and winding the USB cable through a ferrite core a few times. Which reportedly is also having good results. After all, it’s no use shielding if you feed the noise in over the USB cable.
Yes, I wondered in what way the original oscillator wasn’t so good.
Nobody fussed over crystals in the old days, unless for channelized operation on VHF or UHF, where you would see crystal ovens. Or maybe extra consideration for a frequency standard.
Even in the current day, the average portable shortwave radio or scanner doesn’t use any fancy oscillator, it’s for more expensive equipment, and even then, it might be an extra priced option.
It s a matter of context. Maybe there is a real need here, maybe the return is more theoretical. It’s all still pretty new territory for many, while better shielding or front end selectivity are familiar things.
yeah the USB cap is a good addition … on my primary one i use a linear 5V regulator and an external linear source to power mine plus loads of ferrites on the USB … a USB isolator is also a fairly good option
Nicely done. These RTL-SDRs may be a radio hacker’s dream module (cheap, powerful, flexible, etc.), but I’m always on the lookout for ways of improving them without costing a lot of money.
What a great tutorial/channel. Thank you Hackaday!
Another honorable mention would be W2AEW
You could also use a pll to triple the frequency, would probably be more complex though.
Wouldn’t that increase frequency-jitter, though?
As a square wave is an infinite sum of sin waves, couldnt he have used any crystal?
A theoretically perfect square wave is the infinite sum of *odd order* harmonics. For example, a 10MHz square wave would be composed of a 10MHz sine wave (the fundamental frequency), a 30MHz sine wave (3rd harmonic), a 50MHz sine wave (5th harmonic), etc. So even a theoretically perfect square wave would contain sine waves of only very specific frequencies.
Also hacked mine using a reverse biased blue LED on one leg of the crystal.
Works well now, next to no drift!
The clock stability is one thing, but the other consideration is “phase noise” of the reference.
This mixes in with the wanted received frequency and decreases the noise performance of the receiver.
It’s worth measuring the phase noise and aim to get it really low.
Please be kind and respectful to help make the comments section excellent. (Comment Policy)