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
Rankings do not consider cleanliness of reception #1
Comments
Hello, thanks for your interest in this issue. I'm very well aware of it, and there have been several discussions, on ValentF(x) forums and in private, about the limitations of this approach and possibilities for enhancement. Please note that this is only a proof-of-concept prototype, that unfortunately went long-term. My opinion, supported by technical reasons, is that a long-term solution should be developed and integrated upstream in the KiwiSDR project. Please also note that technically, neither SNR scoring data nor this SNR score page are within the scope of the dyatlov software. This SNR score page does not aim at establishing a fair global ranking of all receivers, as this is not a relevant approach to choosing a receiver to listen on, nor at objectively comparing receiver performance. Besides the inherent unreliability of the measurements due to factors like those you mention, which still remains to be solved, what is your concern exactly? |
Hello Pierre,
Thankyou for your fast response !
Please understand, that I don't want to upset you in regards to this. ( I appreciate your work !!! )
My interest is from a purely perfectionist desire to have all my 24 Channels of KiwiSDR system working as best as they can be and recognised for doing so, which is only fair considering the investment involved.
I am a Broadcast/Electronic ( RF & Computing ) Engineer, with ( 35y+) experience to offer in the situation, and hope to improve the way the World listens to radio, albeit directly via my own designed / built receivers, or via Internet streamed ones such as the KiwiSDR's, which I will deploy... ( even if I have to buy 50+ ! )
I have achieved many technical improvements over the average KiwiSDR set up, like local noise reduction, flat frequency response from 500KHz-30MHz and working on 0-500KHz, with BCB selective reduction/notches on multiple receivers ( 4+) from same antenna system, with more planned... so I think you get my drift...
I just hope for a fair measurement system, so that other providers can judge their own devices, and systems in a technically empirical / more accurately measured way so they can see how they are going, and give them something to aspire to...
I will help technically if you want or allow me to ?
I have helped John, with my first goal/achievement; which provided the bump/redirection method from one fully occupied KiwiSDR to the next available card/sdr....
second, to improve frequency response of demodulation... ( refer
I also contribute to the discussion of multiple receives a:-
http://valentfx.com/vanilla/discussion/comment/4979#Comment_4979
I also attach my calculator for MW notches...
(My notch design knocks down only one station at a time... so you can still DX between the big stations....
Here's my calculator program... use the Axial inductors, you know the ones that look like 1/2w resistors...
and silver mica caps with a parallel ceramic trimmer adjusted to resonance...
)
I am sure you understand, I am quite aspy in my approach but it is best for radio listening and the project...
Kind Regards & 73's
Paul Karlstrand
VK3KHZ
www.amradioantennas.com
https://sdr-amradioantennas.com:8071/?f=7125.00amz8
PK's Loop Antennas
6 Blossom Walk
Croydon South Victoria
Australia 3136
Mobile 0412 302 939
For Long Range and Clear AM Radio Reception Everywhere !
Email for enquiries and sales: pkloops@bigpond.net.au or visit http://www.amradioantennas.com
Our New 2018 Catalogue can be downloaded from our website.
http://www.amradioantennas.com/Leaflets/PK's%20Loop%20Antennas%20Catalogue.pdf
|
Ah so you're the guy in Croydon, nice!
That's great! Thanks for your contributions. My vision about this was that in the KiwiSDR admin page there would be a list of setup steps that you can tick off. The most advanced ones at the bottom of the list would be suggestions and guides for items like you just described. If you write an advanced optimization guide showcasing your work, I could also link it from the score page since that's under my control.
Unfortunately it's hard to be really fair, because the scoring approach depends on factors extrinsic to the receiver: what signals are transmitted in the area, the local time at which the measurement is taken (or what methodology is used to smooth and average them). I also think it's important to keep viewing this as healthy emulation rather than a zero-sum ranking competition game, and - while they can be useful - not put too much importance on the numbers themselves. I can add wording in that sense on the score page.
As I said, the best approach in my opinion would be to take this development upstream to have KiwiSDR receivers generate and export SNR scores themselves. There are WPSR autorun sessions now so I imagine it should be simpler to reuse that logic to take a waterfall channel and make a measurement. But I don't operate a KiwiSDR board myself. |
Earlier this year in February, I've added on the score page a checklist of reception optimization steps, contributed by WA2ZKD on http://valentfx.com/vanilla/discussion/comment/9530/#Comment_9530 ; and also such wording to put the SNR numbers into proper perspective. |
Is there any further information on the SNR metrics used? (Or maybe a link to some source code?) We've recently made our KiwiSDR Public (http://kiwisdr.areg.org.au:8073/ - #2 on the rankings at the moment!), and I'm interested in running these metrics more regularly to investigate the behaviour of some local power-line noise which we have noticed. (The site is fed from a single-wire-earth-return system). |
It's also worth noting that stations which block out certain portions of the spectrum score much higher than they should with this system. @PKLoops's stations for example, which only show the amateur radio bands, are likely right up the top of the listings due to the huge areas with zero signal. |
I'm happy to join back in on the conversation on interference issues and ranking.. For the two of my 6 Kiwi cards that are permanently dedicated to all 14 x LF/MF/HF WSPR frequencies, they are fed with fan dipoles that only perform on ham bands, using spectrum masks helps blank out interference from VDSL Leakage and POE devices in neighbouring houses ( I have 4 noisy houses that back on to my yard as I am located in a heavily built up housing estate in suburbia ) I do not highpass filter above 2 MHz to block out the broadcast band, so each of the signals received in the <2MHz spectrum will be evaluated and contribute to the S/N rank calculations that Pierre makes. The whole system is powered from DC / battery, all antennas are effectively balanced and have Choke Baluns to remove any common mode Noise currents. The network cable (30m long) is Shielded, goes underground and has choke cores each end to prevent LAN / IT gear noise. The single GPS Antenna is actively split to the 6 cards and my Lightning Detector. I will attempt to upload and attach a video of the equipment later on. Kind Regards |
i'd like to suggest being able to queue a re-evaluation of a station. i've made changes but the last evaluation of my station was practically a month ago. |
Is there any further information available on the SNR calculation algorithms? Or even better... source code? I've been making tweaks to the VK5ARG site (and there's now a second KiwiSDR up there), and I'm very interested to look at how the performance varies over time, and with various configurations of filters and splitters. |
Hello Mark, Sorry for not replying earlier. But I've read all those messages and have been pondering about them for some time.
As already stated on http://rx.linkfanel.net/snr.html : "These ratios are calculated between the 95th percentile of power levels across the whole spectrum (signal), and the median power level (noise)." That's pretty much the whole algorithm. The spectrum/waterfall data comes as an array of numbers: the whole frequency range is divided among small bins or slots, and each of them carries a signal power level for that frequency bin. The algorithm is to sort these bins by power level, with the weaker one on side, and the strongest at the other end. The signal power value in the middle at the separation between the weaker half and the stronger half - or median - is taken as noise floor; while the value at the separation between the weaker 95% and the top strongest 5% signals is taken as the signal value. Then getting the signal-to-noise ratio is a simple subtraction between these two values (subtraction and not division because the signal powers in dB are on a logarithmic scale).
Actually, I had already changed my script last year to exclude all the blocked spectrum before picking the median value, otherwise blocked spectrum bins, with a lower signal power value than anything else, could indeed skew the calculated noise floor to much lower than it should have been. So that part of the problem has already been fixed. If band-restricted receivers are still at the top of the ranking, it could be that they're just that good, or also that the signal patterns and levels are very different on those common, heavily used bands, compared to mostly unused spectrum. Historically, receivers with a very strong MW broadcast band have also seen their scores skewed up. There's no straight answer.
As stated on score page: "The Auto Scale button on the waterfall control tab will also give you instant, real-time signal and noise level metrics - as the WF max and WF min numbers - similar to these scores to evaluate the performance and impact of your improvements as you work on your receiver." These waterfall display calibration numbers are calculated along the same algorithm, so when fully zoomed out to show the full spectrum, the subtraction WF max - WF min will give you a score that you can use to measure and follow the performance of your receiver and the results of your tinkering. That's what I recommend using, because you can run these measurements yourself whenever and as often as you want or need! Also, my scores include smoothing over past measurements, so they wouldn't be the best to visualize the direct results of your changes. The source code of my scripts is not public, and is not all that interesting anyway; it's just a piece of JavaScript I run in my web browser. I've been thinking that any better or new solution might be better off relying on the official Python KiwiClient command-line utility, which now supports such waterfall extraction and analysis out of the box.
I run these measurements manually, because doing it automatically comes with concerns about infrastructure strain, security, runtime requirements, and even meaning and interpretation of the results. I will certainly admit that I don't run measurements as often as people would like, because I only have so much effort to put into this free service. But I've been thinking that the least I can do is to offer more if some people want to pay. I don't really want to take your money, but I know I'm not going to do much otherwise.
Let me know if there's interest. |
well i was going to go about finding a paypal button for suggestion #2 in
the last list at the bottom, until i read #3 !!
iow: yes Yes YES there is interest in sponsoring jks to make a built-in
thing. then there is a chance of making sure there is not a bias against
places which are not particularly noisy *but also* have very few (if any)
'strong' signals (non-suburban non-populous).
…On Mon, Mar 15, 2021 at 1:42 AM Pierre Ynard ***@***.***> wrote:
Hello Mark,
Sorry for not replying earlier. But I've read all those messages and have
been pondering about them for some time.
Is there any further information on the SNR metrics used? (Or maybe a link
to some source code?)
As already stated on http://rx.linkfanel.net/snr.html : "These ratios are
calculated between the 95th percentile of power levels across the whole
spectrum (signal), and the median power level (noise)." That's pretty much
the whole algorithm. The spectrum/waterfall data comes as an array of
numbers: the whole frequency range is divided among small bins or slots,
and each of them carries a signal power level for that frequency bin. The
algorithm is to sort these bins by power level, with the weaker one on
side, and the strongest at the other end. The signal power value in the
middle at the separation between the weaker half and the stronger half - or
median - is taken as noise floor; while the value at the separation between
the weaker 95% and the top strongest 5% signals is taken as the signal
value. Then getting the signal-to-noise ratio is a simple subtraction
between these two values (subtraction and not division because the signal
powers in dB are on a logarithmic scale).
It's also worth noting that stations which block out certain portions of
the spectrum score much higher than they should with this system. @PKLoops
<https://github.com/PKLoops>'s stations for example, which only show the
amateur radio bands, are likely right up the top of the listings due to the
huge areas with zero signal.
Actually, I had already changed my script last year to exclude all the
blocked spectrum before picking the median value, otherwise blocked
spectrum bins, with a lower signal power value than anything else, could
indeed skew the calculated noise floor to much lower than it should have
been. So that part of the problem has already been fixed. If
band-restricted receivers are still at the top of the ranking, it could be
that they're just that good, or also that the signal patterns and levels
are very different on those common, heavily used bands, compared to mostly
unused spectrum. Historically, receivers with a very strong MW broadcast
band have also seen their scores skewed up. There's no straight answer.
We've recently made our KiwiSDR Public (http://kiwisdr.areg.org.au:8073/
- #2 <#2> on the rankings at the
moment!), and I'm interested in running these metrics more regularly to
investigate the behaviour of some local power-line noise which we have
noticed. (The site is fed from a single-wire-earth-return system).
As stated on score page: "The Auto Scale button on the waterfall control
tab will also give you instant, real-time signal and noise level metrics -
as the WF max and WF min numbers - similar to these scores to evaluate the
performance and impact of your improvements as you work on your receiver."
These waterfall display calibration numbers are calculated along the same
algorithm, so when fully zoomed out to show the full spectrum, the
subtraction WF max - WF min will give you a score that you can use to
measure and follow the performance of your receiver and the results of your
tinkering. That's what I recommend using, because you can run these
measurements yourself whenever and as often as you want or need! Also, my
scores include smoothing over past measurements, so they wouldn't be the
best to visualize the direct results of your changes.
The source code of my scripts is not public, and is not all that
interesting anyway; it's just a piece of JavaScript I run in my web
browser. I've been thinking that any better or new solution might be better
off relying on the official Python KiwiClient command-line utility, which
now supports such waterfall extraction and analysis out of the box.
i'd like to suggest being able to queue a re-evaluation of a station. i've
made changes but the last evaluation of my station was practically a month
ago.
I run these measurements manually, because doing it automatically comes
with concerns about infrastructure strain, security, runtime requirements,
and even meaning and interpretation of the results. I will certainly admit
that I don't run measurements as often as people would like, because I only
have so much effort to put into this free service. But I've been thinking
that the least I can do is to offer more if some people want to pay. I
don't really want to take your money, but I know I'm not going to do much
otherwise.
-
If and when someone wants to ship a few bucks with their request, I
could update the measurements and scores for everyone the next day,
guaranteeing their particular receiver gets a new score (all receivers
don't always do every time, for example if they're down or full when the
measurements are run).
-
If people want to sponsor this work, I can rewrite this into an
automatic system, updating scores much more often and regularly.
-
I still stand by my assessment that from a distributed system point of
view, it would be better if each receiver measured, calculated and exported
their score themselves, rather than having an external tool poll every node
on the network for it. So I think it might be a better overall solution to
sponsor jks, the author and owner of KiwiSDR, to implement this as a
KiwiSDR feature instead.
Let me know if there's interest.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#1 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABRUYNIITFVHXBG3EVGMNM3TDWM45ANCNFSM4GG363DA>
.
|
Since most of the difficult support code is already done I'm willing to implement this. You have to give me an SNR calculation algorithm though if you want something other than what Pierre does now. It might be interesting to compute the SNR over 0-30 MHz and also just >= 3 MHz (or some other value) to factor out the AM BCB. Because of WSPR autorun the mechanism to start an internal process that connects to a free channel is fairly easy. The result can just be another field added to kiwisdr.com/public/index.html that rx.linkfanel.net, or anyone else, can poll/upload. |
Okay, v1.443 has a first cut at an internal SNR measurement function. See the explanation here: https://github.com/jks-prv/Beagle_SDR_GPS/blob/master/CHANGE_LOG |
With v1.444 the two SNR values (all band, HF) are also reported in the information returned by a /status query, e.g. my_kiwi:8073/status And since that data is the source of information used to build http://rx.kiwisdr.com/index.html it also appears there for every publicly listed Kiwi (if you look at index.html as a text file or do a "show page source" when viewing the page in a browser). |
thank you! seeing the actual values computed which form the SNR 'score' is
very helpful.
soon to be a tab in the Admin interface?
…On Mon, Mar 22, 2021 at 7:13 PM John Seamons ***@***.***> wrote:
With v1.444 the two SNR values (all band, HF) are also reported in the
information returned by a /status query, e.g. my_kiwi:8073/status
And since that data is the source of information used to build
http://rx.kiwisdr.com/index.html it also appears there for every publicly
listed Kiwi (if you look at index.html as a text file).
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#1 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABRUYNKRGIDQJBKDKVCZ5X3TE7FJVANCNFSM4GG363DA>
.
|
I've added the internal scores reported by the KiwiSDRs on http://rx.linkfanel.net/snr.html In time I'll switch the map to use those new scores too. |
@linkfanel Might be worth showing the HF-only SNR too, since stations with very strong AM broadcast station signals and everything else blanked out skew the results hugely. (e.g. the VK3KHZ stations - 48 dB 'all band' SNR, 8 dB HF-only SNR!) |
Good point, I've added it as a third column. Let's see what this gives. Further comments about the new scores, how they could be improved or what score should be used for the map, are welcome. |
Thanks! I'm also kind of curious how the VK5ARG stations always managed to end up with a huge SNR on your measurements, when the SNR was clearly changing throughout the day (see plots at the bottom of this page: https://www.areg.org.au/areg-remote-hf-receiver-kiwisdr ). |
I always make the measurements for my scores (external column) around 1100z. According to the plot, that's when VK5ARG stations' SNR is close to highest. So I guess you just got lucky. |
OK, taking measurements at a fixed UTC time will certainly give preferential results to stations that are in local night. I would suggest using the peak SNR observed over whatever time period is available as the result for each station. |
I have just switched the markers on the map to use the new self-reported internal SNR scores. The logic is as follows: the HF-only self-reported score is used if available, if not the full-spectrum self-reported score is used instead, and if no self-reported score is available, the classic external score is used as fallback. Users will benefit from up-to-date and instantly relevant scores, as by default self-reported scores are calculated every hour. HF-only scores are favored as it was pointed out that very strong MW bands tend to skew the scores. I don't especially like excluding signals below 1800 kHz, but a choice has to be made since it makes a significant difference; and this is a shortwave receiver map, not just a map of remotes for commercial MW band broadcasts, so this is our editorial line. Now that the score calculations are not our doing anymore, unless there are further actionable comments, I'm going to close this issue; any further request for improvement of the scores should be taken directly to the KiwiSDR project or forums instead from now on. |
That's fine. Thanks for all your hard work in creating and maintaining these resources. They are much appreciated. |
SDR's with overload, intermods or repetetive harmonic related carriers ruin results and score highly,
I will not leave any examples as this would be poor show, but the data rank cannot be trusted for any useful measurement.
Take some time to explore the higher ranked SDRs at http://rx.linkfanel.net/snr.html by using them.
The text was updated successfully, but these errors were encountered: