Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Metrics for quality of reception? #127

Open
maehw opened this issue Feb 17, 2025 · 0 comments
Open

Metrics for quality of reception? #127

maehw opened this issue Feb 17, 2025 · 0 comments

Comments

@maehw
Copy link

maehw commented Feb 17, 2025

Hi!

I've recently setup an Iridium receiver station attic - thanks to the work you've put into gr-iridium, iridium-toolkit and the talks you gave at various CCC talks.

As you gave some recommendations and thanks-to-capitalism™, my current setup consists of:

  • HC610 active antenna; put up as high as high as my local environment allows me to
  • HackRF SDR (might switch to Airspy R2 as others have marketed it as the best option™ and I could free up the HackRF for some stuff which also needs TX)
  • bias-T + power supply + coax cabling
  • some mini computer running Linux, configured so that I can ssh into it over my local WiFi

I directly pipe the outputs of hackrf_transfer to iridium-extractor and later analyze the outputs, i.e. call iridium-toolkit/iridium-parser.py.

What are good metrics to look at in order quantify the quality of my reception and potentially improve it? I don't have anyone with another setup so unfortunately, I cannot ask for their numbers. I didn't find a good guideline how to check your setup so that's why I am asking here for some guidance and hope that's OK.


I get that iridium-extractor gives some interactive output. I think the number of detected bursts cannot be used as a metric, because it heavily depends on the receiver location on planet earth and the current Iridium network activity on the relevant spot beams, right?

In an old talk, you had mentioned that you "see roughly 2000 bursts/sec" / "recognized ~1200 frames/sec". Are these numbers still up to date for the Munich area? I see an i_avg number of around 170/s. Is that good, bad, okay-ish? For ok_avg, I get numbers around 90/s for a long term average.

As those numbers are absolute ones, I guess that the relative ones (i_ok: ... % and ok_avg: ... %) are more relevant. Is this due to energy detected as Iridium bursts which turns out to be noise because the UW does not match? Are there ways to improve them in my setup or are they inherent to the demodulator?


iridium-extractor outputs: any way I should look at "Relative Magnitude of the detected "burst" (≥ --db) and average Noise/Hz at that time/frequency in dBFS" and "Signal level of the demodulated signal"?


iridium-toolkit/iridium-parser.py: I typically see somewhat around 31~38% being filtered. One third feelks like much. Are there ways to improve them in my setup or are they somehow inherent to the bitparser? What's the root cause here? I've seen command line switches --uw-ec and --harder. Using --uw-ec does not really seem to improve things, --harder may bring improve the drop around 1-3% which is nice but not the world.


Is there any benefit in running iridium-toolkit/reassembler.py -i <somefile>.parsed -m stats-snr and checking for signal levels, SNR or confidence? What are typical signal, SNR and confidence values for your setup(s)?


I've currently raised all HackRF gains to their max. However, I am wondering if this is really the best setting and I haven't also raised the noise floor significantly now and may loose some weak signals in the noise due to bad SNR. Or on the other hand saturate the input of my SDR if there are rare strong signals so that decoding won't work at all? Would you share my concerns?

When I had not set up the attic yet, I could also run some SDR tool with a graphical frontend locally. That won't work now. I might be able to tweak around some of the settings.. but what numbers should I take a look at - and over what period of time (a day? a week?) to get a good idea if my setup has improved or gotten worse?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant