How does the demodulation done with HackRF? Is the mixed with IF and then the frequency spectrum is shifted to baseband frequency by sampling OR the frequency of the mixer in the hardware can be change by the software to the baseband frequency first and then sampled?


The RF architecture of the HackRF One is diagrammed here:

enter image description here

This is a bit elliptical so I'll explain what I read from it (describing the receive-mode operation; transmit is just the reverse). There are two integrated LO/mixer units:

  • One is in the RFFC5072 chip. This is the one that provides the HackRF One's wide tuning range. It mixes the incoming signal to an IF that is within the MAX2837's range. (I don't know whether that's fixed or adjusted for any reason.)
  • The MAX2837 chip then mixes that 2.x GHz IF down to baseband (as well as providing configurable gain and filtering).

The baseband IQ signal from the MAX2837 is then sent to the MAX5864 ADC for conversion to digital samples, which are then sent to the host computer.

When transmitting, all of these stages operate in reverse; the MAX5864 works as a DAC instead of an ADC, and the same LOs and mixers are used.

The HackRF One does not use bandpass sampling, as I think you might be asking.

One of the characteristic features of a receiver using an analog baseband I/Q signal is the “DC offset” or “DC spike”, a spurious signal visible at exactly the center frequency of the received samples. You can see this in any waterfall plot:

This is my HackRF One tuned to the FM broadcast band with a mediocre antenna, displayed using my ShinySDR software. You can see the wideband FM signals across the spectrum, and a much narrower unmodulated peak at exactly the center frequency.

  • $\begingroup$ why on top of MAX2837 chip it written Baseband/IF if it is converting IF frequency to baseband? $\endgroup$ – Jack Sep 30 '16 at 13:52
  • $\begingroup$ @Jack I don't understand what you're asking — "Baseband/IF" is presumably referring to exactly that function. $\endgroup$ – Kevin Reid AG6YO Sep 30 '16 at 14:00
  • $\begingroup$ Sorry a very dumb question!!!,,,I did not realize that was a division!! I looked at it as OR!! $\endgroup$ – Jack Sep 30 '16 at 14:01
  • $\begingroup$ Well, not a "division", exactly, either. The slash has lots of vague meanings. I would read it here as “Baseband ↔ IF”, "baseband from-or-to IF". $\endgroup$ – Kevin Reid AG6YO Sep 30 '16 at 14:03
  • $\begingroup$ why would we need to convert base band to IF if we are looking for baseband? $\endgroup$ – Jack Sep 30 '16 at 14:05

As this is SDR, the HackRF hardware presents the received signal as I/Q to the computer. The actual demodulation is done in software.

  • $\begingroup$ van I beg to defer, there are mixers and ADCs inside the hardware and their sampling rate and mixing frequencies of these hardwares are controlled by the software. Then the I/Q samples are processed with computer. $\endgroup$ – Jack Sep 30 '16 at 13:42
  • $\begingroup$ So part of the demodulation is done in hardware. $\endgroup$ – Jack Sep 30 '16 at 13:49
  • 1
    $\begingroup$ Mixers and the like would be "tuning" not demodulation $\endgroup$ – Edwin van Mierlo Sep 30 '16 at 14:25
  • $\begingroup$ well tuning to baseband to demodulate later by a digital filter with software $\endgroup$ – Jack Sep 30 '16 at 14:26
  • $\begingroup$ @Jack that is the ambiguity of the term "demodulation". In the context of SDR, "demodulation" typically means "getting the signal/data of interest out of your sample stream by applying software", not the "multiplying with a tone to get it down to baseband" $\endgroup$ – Marcus Müller Sep 30 '16 at 18:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.