# Oscillators inside SDR hardware

Are the oscillators in SDR hardware (that are used to mix the input to sinusoidal waves) purely digital?

In other words, is the sinusoidal analog signal is created digitally? For example getting the sinusoid from $\cos(2\pi kt+ \phi)$ where $k$ is an integer counter.

Basically I am trying to figure out how the frequency of the oscillator of the HackRF One is changed by software.

• you can't really mix with something digital; it's always analog signals going into a mixer. Maybe you'd want to explain what you mean with "purely digital". – Marcus Müller Sep 1 '16 at 19:18
• Creating the analog signal digitally. For example getting the sinusoid from cos(2pifKT+phi) where k is an integer counter. Basically I want to know how we can I change the frequency of the oscillator of the SDR dongle by software. – Jack Sep 1 '16 at 19:30

Are the oscillators in SDR hardware (that are used to mix the input to sinusoidal waves) purely digital?

The term "SDR" doesn't describe a single device architecture, and hence, all imaginable solutions to the problem of generating a tone for a mixer exist¹. There's SDR devices that have a numerical oscillator (pretty much what you described, though often implemented differently, and there's a lot of ways of doing that), others use PLLs (often with complex fractional-N schemata) to condition a LC oscillator, a quartz or some other source of periodic signal, yet others simply use a very high-frequency digital counter to generate a set of frequency, yet others have adaptable frequency multipliers; I'm sure there's even devices that simply have a bank of oscillators to select from (and combine); other implementations use tricks to avoid explicitly generating an oscillator at all and simply switch transistors on and off.

It is impossible to list all potential and actual implementations of oscillators.

Basically I am trying to figure out how the frequency of the oscillator of the HackRF is changed by software.

Now we're talking about a specific device; I recommend referring to the HackRF wiki, especially the page on Hardware Components; you'll find a link to the MAX2837 there.

Now, I neither want to nor can save you the labour of reading that, but to give you a short breakdown:

The MAX2837 is an integrated mixer/LO generator/amplifier... module.

It contains a Voltage-Controlled Oscillator (VCO), which is controlled by a Phase-Locked Loop (PLL), which derives the desired VCO frequency from the external reference oscillator input, and uses a complex control scheme (selectable fractional-N or integer-N synthesis with selectable harmonics selection filters) to put the VCO at a specific ratio of the reference oscillator's frequency.

¹ note that "SDR" doesn't even imply any mixing at all! Or, that you can adjust the frequency that is mixed with. That is a speciality of the specific devices you seem to be thinking about, and generalize! Not all SDR devices look like the ones that you seem to be looking at.

• Ok, thanks. I am working with HackRF and I have edited my question accordingly. – Jack Sep 1 '16 at 20:08