[Hackrf-dev] images, high-side injection, and spectrum inversion

Michael Ossmann mike at ossmann.com
Thu Aug 21 19:57:20 EDT 2014


Jared fixed the CPLD bug I mentioned below, and everything seems to be
working.  I'll push a release fairly soon.


On Fri, Aug 15, 2014 at 08:43:03AM -0600, Michael Ossmann wrote:
>
> I've finally re-enabled high-side injection for spur avoidance when
> tuning to frequencies below 2150 MHz in the HackRF firmware.  If you
> want to try it, you'll have to compile the firmware from git source.  If
> it works well, I'll try to get a release out soon.
> 
> The primary benefit of high-side injection is reduction of images caused
> by harmonics of the local oscillator (LO).  Here's an example:
> 
> Receiving at 1740 MHz with 2014.04.1 firmware:
> 
> The IF is set to 2560 MHz.
> The front-end LO is set to 820 MHz.
> 2560 MHz - 820 MHz = 1740 MHz
> Harmonics of 820 MHz are 1640 MHz, 2460 MHz, 3280 MHz, etc.
> FM broadcast signals from around 100 MHz appear as images in the
> received signal because 2560 MHz - 2460 MHz = 100 MHz.
> 
> Receiving at 1740 MHz with git firmware:
> 
> The IF is set to 2401 MHz.
> The front-end LO is set to 4141 MHz.
> 4141 MHz - 2401 MHz = 1740 MHz
> Harmonics of 4141 MHz are 8282 MHz, 12423 MHz, etc.
> The lowest harmonic that could cause a problem is 8282 MHz, but 8282 MHz
> - 2401 MHz = 5881 MHz, way over the cutoff frequency of the image reject
> filter.
> 
> Images caused by LO harmonics can be worked around by using explicit
> tuning, but they are annoying, cause unfortunate spurs on TX, and create
> a great deal of confusion, especially among new users.  I think it will
> be much better to enable high-side injection by default.
> 
> Another way to think of high-side injection is that we tune to -1740 MHz
> instead of 1740 MHz.  This explains why the baseband spectrum is
> inverted when using high-side injection.  To correct this inversion,
> Jared has updated the CPLD so that it can flip the sign of the Q
> channel.  We enable Q inversion when using high-side injection.
> 
> The CPLD change has only been implemented for RX, however, so a known
> bug with current git firmware is that the baseband spectrum is inverted
> on TX for frequencies below 2150 MHz.  We'll try to get that fixed soon.
> I will not cut a release with this bug.
> 
> If you want to try this stuff out, compile the firmware from source and
> also update the CPLD.


More information about the HackRF-dev mailing list