greatscottgadgets / hackrf

low cost software radio platform
https://greatscottgadgets.com/hackrf/
GNU General Public License v2.0
6.41k stars 1.51k forks source link

USB(?) interference via antenna from the lowest frequencies to above 190 MHz #544

Closed alinanorakari closed 4 years ago

alinanorakari commented 5 years ago

Steps to reproduce

  1. Connect Ant500 and extend it
  2. Connect HackRF One with stock USB cable that came with HackRF One
  3. Tune GQRX or GNU Radio to 90-100 MHz
  4. Set gain to 24 dB IF and 30 dB BB
  5. Observe FFT or waterfall

Expected behaviour

smooth noise floor, random irregular noise pattern if any

Actual behaviour

regular spikes and spurs and static noise characteristics as can be seen here

screenshot 2018-11-05 at 03 56 21

Also very distinct noise around 480 MHz where USB 2 has its clock frequency

screenshot 2018-11-05 at 03 58 07

Additional info

The strength of both the regular noise patterns and the peaks around 480 MHz can be influenced by covering the cable with my hand, where covering the cable makes the noise pattern more prominent but reduces the intensity of the peaks around 480 MHz.

The noise is not visible when no antenna is connected, but it will always roughly scale with the strength of FM reception, even with antennae that are not tuned to the FM spectrum.

The noise will also entirely disappear when connecting HackRF to analog cable directly, even though the FM stations on there have a similar signal strength to the ones picked up via antenna. The noise floor is then smooth as expected

The computers I tested with are:

Noise intensity and characteristics are very similar on both machines

Version information

Operating system:
MacOS 10.14

hackrf_info output:

hackrf_info version: unknown
libhackrf version: unknown (0.5)
Found HackRF
Index: 0
Serial number: 000000000000000087c867dc2b53b45f
Board ID Number: 2 (HackRF One)
Firmware Version: 2018.01.1 (API:1.02)
Part ID Number: 0xa000cb3c 0x006e475a

Gqrx version 2.11.5
GNU Radio 3.7.10.1

cjheath commented 5 years ago

Your problem is not your cables, they're just changing how you see the problem. Neither is lack of a TXCO I reckon, or you'd see a more variable result (drifting spurs, varying spacing, etc). It's most likely something about your computer or your location. Take stuff to another suburb, and try a different computer. If the problem goes away, your HackRF is probably fine, otherwise it's busted. It could be a simple matter of bad power supply bypassing (dud cap, or bad soldering). You might be able to fix it by reflowing the board...

mossmann commented 5 years ago

cjheath wrote:

I mean the clips on the dashed RF boundary trace in this photo.

I've never seen clips like that before. I didn't design for them, and we don't install them on Great Scott Gadgets boards. I don't know who made your HackRF One, but its origin may have something to do with why it doesn't perform at lower frequencies.

I designed the RF section of HackRF One to fit the Laird BMI-S-230-C RF shield on the BMI-S-230-F-R frame. We do not install the shield or frame on the units we sell.

mossmann commented 5 years ago

lastfuture: Everything you have reported appears normal to me. It is common to pick up USB interference with a USB-connected radio receiver such as HackRF One, and most of that interference should be between 0 and 240 MHz. It is common for changes in USB cables, antennas, grounding, and coupling with nearby objects to affect how this interference is conducted/radiated/received.

I do not believe your HackRF One is defective. (If you were seeing interference above -40 dbFS with moderate gain settings I might think differently.) It is unsurprising to me that you see a similar interference pattern with different spacing when using an rtl-sdr dongle. HackRF One has a higher maximum USB data rate, so it should typically result in more spurs per bandwidth.

The USB cables we include with HackRF One were selected based on some testing I did which indicated that the quality of shielding was much more important than the quality or presence of a ferrite. Be aware that some USB cables have better shielding than others, and many USB cables (especially those intended primarily for charging) have no shielding at all. You can test the shielding with an ohmmeter. Also be aware that some USB cables that appear to have a ferrite actually just have an empty shell where a ferrite could go.

alinanorakari commented 5 years ago

@mossmann thank you, your assessment of my situation means a lot. I guess I had too high expectations after seeing much cleaner spur free noise floors in videos showing off HackRF.

The spurs definitely feel like they're sullying signals I could otherwise demodulate. e.g. I've not managed to even find more than one AM radio station, and that station was barely distinguishable from the spurs and came in just clear enough to barely make out its name when it was announced. I've not been able to find the signal in the noise again, even though I've bookmarked its frequency, and even though I'm now trying with an antenna that should theoretically be tuned to roughly a quarter wavelength

cjheath commented 5 years ago

@mossmann Thanks. Sad that the HackRF I bought (2nd hand and damaged) might not be genuine. Nothing about it looks sub-standard, but I suppose that goes with the territory. I guess the mixer baluns are a spot where a clone-maker might skimp? Or perhaps the software is just not enabling the correct filter path. Anything else I can do to check what's causing low-band deafness? Or perhaps I just don't have an adequate antenna?

The PCB is labelled "13 February 2014". hackrf_info says my serial number is 0000000000000000167c60c837524be7 Firmware Version: 2017.02.1 (API:1.02) Part ID Number: 0xa0000a30 0x00624f5d, does that look plausible?

@lastfuture perhaps try to use a better antenna? The best first answer to SNR problems is "get more signal" :)

alinanorakari commented 5 years ago

OK, I've installed the full monty now. TCXO, RF shield, aluminum enclosure. A first test with the ANT500 is looking very promising. A LOT better than in its factory state in the original case.

The TCXO is bumping the HackRF from -25ppm to 0ppm, and I managed not to fry it while soldering the RF shield, so hooray.

screenshot 2018-11-17 at 15 41 07

This time for the first time the spurs aren't stable and changing intensity. I'm not entirely sure what's going on or what could be causing it. The screenshot above shows the absolute best that the s/n ratio gets. The worst looks almost like the best before the modifications. It seems to be somewhere in between for the most time. I'm going to leave this running for a few hours away from the laptop with a slow waterfall and take a look at it later to see if it's changing without me being around.

alinanorakari commented 5 years ago

There was no difference after a few minutes, the spectrum stayed in the "somewhere between" I mentioned.

However I learned that the difference between these two orientations of the HackRF … img_1660

… results in this difference in spectrum.

screenshot 2018-11-17 at 21 27 51

I'll have to be extra careful how I position it

mossmann commented 5 years ago

cjheath: It may be a genuine GSG board that has been modified. If it is one of our boards it should have the GSG gear logo visible on the bottom copper layer. If it is not a GSG board, the most likely component substitutions that would affect the low frequency performance would be the DC blocking capacitors and inductors in the RF section.

Use of a proper antenna for the frequency of interest is important for performance. ANT500 is not appropriate for anything below about 75 MHz.

It is expected for the performance at 1 MHz to be about 10 dB worse than the performance above 10 MHz. See: https://greatscottgadgets.com/2015/05-15-hackrf-one-1MHz/

mossmann commented 5 years ago

lastfuture: Congrats on the successful mod! The results from that change of orientation are fascinating.

alinanorakari commented 5 years ago

I'm still seeing a lot of spurs all across the spectrum (with the ANT500 and a similar telescopic antenna in particular), some of them making it harder for me as a learner to separate proper signals from the noise. e.g. this is my spectrum around 433 MHz at much more reasonable gain settings of RF off, IF 16 dB, BB 16 dB

I know that the ANT500 is probably not the best antenna for that frequency range, but can you please take a look at these and tell me if they're supposed to look that way?

at 20 Msps

screenshot 2018-11-19 at 23 26 12

at 12.5 Msps

screenshot 2018-11-19 at 23 32 20

at 8 Msps

screenshot 2018-11-19 at 23 30 49

I'm assuming all of the spikes I see are spurs as they're permanent and don't seem to be signals. Also quite a few of them are moving into the opposite direction of the direction i'm tuning, and they're mirrored around the center frequency, making me believe they're some sort of aliasing artifacts (?) The actual signals in this ISM band (mostly outside thermometers of neighbors' weather stations) are coming in at around 20 dB quieter than the loudest spurs.

If I'm honest I'm a bit disappointed with my HackRF experience right now. I had hoped for a cleaner spectrum for me to learn in. I'd still really love to do more to get it cleaner and spur-free. It's also making it hard for me to be a good neighbor on the spectrum as I learned I should be, because I need pretty CPU intensive settings on my band pass filter in order to prepare signals for replaying while leaving out the spurs. So steep in fact that I have to prepare them offline

mossmann commented 5 years ago

@lastfuture: I really don't think you have a problem with spurs. If you go looking deep into the noise floor with any radio receiver, you will find such things. I think you may have a problem with the received signal strength of your signals of interest, however. Signals such as your neighbor's weather station should be detectable at a higher power than the spurs.

Do you happen to have an RF signal generator or a friend with another HackRF that you could use to perform a measurement?

alinanorakari commented 5 years ago

Unfortunately I have neither an RF signal generator nor a friend with a HackRF. I do have a few remotes that will generate signals but I have no way of knowing in which intensity. I could compare the same remote received with the HackRF and with a NooElec neSDR SMArt if that would help

alinanorakari commented 5 years ago

For what it's worth I connected an antenna tuned to WiFi+LTE and poked around the DECT spectrum, and this much more resembles the kind and shape of noise floor I expected at the frequencies I'm having problems with

screenshot 2018-11-20 at 01 50 03
unixpunk commented 5 years ago

@lastfuture You mentioned the TXCO, that could be the noise you see every 10mhz. Unless you're doing specific things where having a perfect click is required, might try taking that out of the mix. Will you have to adjust ppm offset then? Sure, but once you know what that offset is when the device is up to temp (by comparing to a known-stable signal), it usually doesn't change much. As Mossman mentioned and as your LTE band antenna points to further, you may just need a better tuned antenna so that your desired signal is stronger and also so that other noise is tuned out. The gains are also important, you may find that having one too high over the other causes some spurs to show or disappear even. Sometimes having the LNA/amp on is better, then you can lower the other gains or vice-versa. Hope that helps.

mossmann commented 5 years ago

I agree with @unixpunk that the TXCO could be a source of some spurs.

The SNR of the DECT screenshot looks good at a glance, but I notice that none of those peaks is higher than the DC spike. They should be if the DECT devices are at close range.

alinanorakari commented 5 years ago

I've noticed the spikes at 10 MHz intervals with the internal clock as well, before I ordered the TCXO. I'll try and remove it again to compare directly though. If I only had 10 MHz spurs I'd be happy.

The DECT base stations I'm picking up are all my neighbors' because I don't own one. No knowing how far they actually are or what's attenuating them on their way to me.

When I've looked at signals from remotes (RC car, garage door opener) I did get signals rising above the DC spike in power. In general signals from the neighborhood though or from the remote a few meters across the room never rose above the DC spike if I remember correctly. I can perform some tests with the remotes I've tried when I get home.

Am I right in dividing the speed of light over the frequency to get the length that the ANT500 should roughly be extended to for a given frequency? That would mean 67cm should be tuned for 443 MHz ish signals. In that case with the ANT500 and with my garage remote sending around that frequency, what intensity would you expect the signal to be from 2m away, relative to the DC spike? (or absolute in dBFS at specific gain settings). I know this depends on the remote, but what ball park should it be in?

alinanorakari commented 5 years ago

I'm sorry, I'm of course talking about the 433 MHz ISM band and got my numbers mixed up, so my antenna length would work out to about 69 cm, right?

I was about to start testing signal strengths and this HackRF remains a mystery to me. The signal to noise ratio of the neighbors' weather stations etc. is still weak, but where did most of the spurs go now? I've clearly had them as you can seen in the screenshots above. And why exactly are the signals mirrored at the center frequency? This screenshot is with RF gain off, IF 16 dB, BB 26 dB, and the ANT500. Cold start, computer and HackRF freshly plugged in after a day at work. Same room, same location, same cable as before. Enclosure and TCXO unchanged.

screenshot 2018-11-20 at 19 38 52

This is my garage remote at an arm's length from the antenna. It's FSK so the two-peaked signal makes sense to me on one side, but the mirror image is mysterious to me

screenshot 2018-11-20 at 19 53 02

This is it a hand's width from the antenna. I don't understand those spikes left and right of it. Harmonics due to distortion/saturation?

screenshot 2018-11-20 at 19 53 21

I wasn't able to directly screenshot the pandapter with the remote 2-3 meters away from the antenna but the peaks were at about the same height as the rightmost spur, so -50ish dBFS I guess, definitely below the DC spike.

screenshot 2018-11-20 at 19 53 57

I'm very curious why the spurs are gone for now and why the spectrum appears mirrored

alinanorakari commented 5 years ago

OK I'm thoroughly confused now. All I did was unplug the HackRF and plug it back in, and it's no longer mirrored. I did that while testing again if different USB ports yielded different results (they don't, it's now un-mirrored and spur free on all of them)

screenshot 2018-11-20 at 20 23 39

… what?

mossmann commented 5 years ago

Spectrum mirroring typically indicates a hardware failure of one of the two quadrature channels. If that problem comes back, we should replace your unit.

That last screenshot looks great. The signal strength is high enough that the power of any spurs you've observed should be irrelevant.

alinanorakari commented 5 years ago

Thank you again for your assessment. I appreciate that a lot.

If I understood everything about quadrature samples correctly so far (thanks to your video series), if it happens again I should see it in fail in a GNU Radio Time Sink in the way that either the waveform for the I or Q channel would remain flat. Correct?

mossmann commented 5 years ago

Yes, a constant I or Q channel is probably what you would see. That is the most likely cause of spectrum mirroring.

helohe commented 3 years ago

I also have spikes at 10 Mhz intervalls. My Hackrf is also of questionable origin, got it for cheap. Metalcase and TCXO is installed. Latest git firmware. Will now try with better antenna and usb cable to see if that fixes it.

cjheath commented 3 years ago

The GSG designed HackRF does not have the USB shield connected directly to ground, as it should be. See pin 0 of the connector J1 here: https://github.com/mossmann/hackrf/blob/master/doc/hardware/hackrf-one-schematic.pdf There are cables where it is correct to leave one end of the shield unconnected, but USB is not one of those. Nail that sucker down and you might solve your problems - depending on where the spurs are coming from, of course.