Re: SDR-Console Power dBm Accuracy


(I plead too many years misspent as an electronics engineer in various aspects of RF communications.)


On 20210624 18:22:01, Larry Dodd wrote:
Whoa!  I’ll have to print that out and study it over a couple days. 
Larry, K4LED 

On Jun 24, 2021, at 8:25 PM, jdow <jdow@...> wrote:

 OK, so if it is down around 5 dB you don't really care if it is 4 or 6 unless your location is preternaturally quiet. 10 dB might be rather high. But, it might have the "feature" of overriding external noise sources to flatten out variations in external noise. It is also very easy to build a 1 dB noise figure reasonably high dynamic range amplifier in that frequency range. I'd limit the upper end to about 25 MHz to 26 MHz with a reasonably sharp LPF so that children's band ops don't get you. And in the 28 MHz to 29.7 MHz region you may have various ham radio transmitters bother you from time to time.

The low frequency makes some of the job easy, which is always nice.

So let's talk setup, You want a nice RF relay configuration as that can be basic to your whole operation. You also want a nice temperature regulated coax termination with a small diameter double shielded coax feeder no more than a foot long on one leg of the switch. The other leg goes to your hot source when calibrating the noise figure and to the antenna when measuring the sky. For the relay I'd use a pair of "T" configuration diodes. You'd want to be able to turn on the two diodes on top of the T and off the stalk of the T for "on" condition and reverse it for off. You'd want to drive the diodes hard enough they are low impedance. And keep the two T's as identical as possible. Join them at one end of the top of the Ts. The other end of each T goes to noise source resistor and the other to hot source or antenna. Once you have this working with less than 1dB loss for the ON position and 40 dB or more for the off position we can move on to the rest of the design.

You need a driver for the relay. Since it's semi-conductor based it can be simple. But, let's make it a little complex, such as an Arduino, Raspberry PI, or similar. You can drive each switch independently with GPIO pins from the little CPU module. Make sure the little computer you select has a sound card input and a programming interface you can deal with. (BASIC or Python or similar would be nice.)

Hook this up for noise figure measurement simply because it's an easy way to start. And hook up audio out of SDRC or SDRSharp or whatever. Set the SDR to SSB or CW reception and select a suitable bandwidth, probably 1kHz is a good compromise.

Build a little test program. Teach it to accept batches of audio samples at about an 8 ksps rate, square each sample. Each squared sample is multiplied by a small number on the order of 0.001 for starters. Multiply a sum value by 0.999, actually 1 minus your small number. Then add your multiplied sample to the sum. This provides a bit if averaging. You probably want averaging with MUCH smaller numbers. But that requires some cheating, later. You should be able to read this sum periodically and observe your average "power" reading. (Yeah yeah - no R for it to be a real power. But we work with power ratios so R cancels out. I LOVE it when incidental terms cancel out that way. {^_-}) If you use floats or 16 bit integers then 1/2^10 is a reasonable division factor. If you use 32 bit integers or have the luxury of doubles rather than floats then 1/2^20 can save an extra loop.

If you are using 16 bits or floats then every time you get 2^10 samples into your average feed that value to a second averager using the same 2^10 factor. The idea is to end up with about a 2 minute power average.

In a second little test program teach the relay to switch from source A to source B on command and check performance. Once that works teach it to switch once a minute forever until YOU tell it to stop. Develop a 100 ms timer triggered by the source switch providing a software output value. Call it 0 when the timer is triggered and 1 when the timer is not triggered.

Then you can put this together almost cut and paste. You should have available from these pieces code to average audio samples, a once per second transition from low to high or high to low, and triggered by each switch a 100 ms "let it all settle" signal.

Build TWO audio averagers, the audio input software, and the switch driver with its timers into a single module. In software "switch" the audio from the input to one audio sum over to the other. Let's say your switch has a value of 0 when it is on the 290K source and 1 when it is connected to the external source. When both the switch signal and the 100ms delay signal are 0 feed audio through to the reference summing input. When the switch signal is 1 and the delay signal is 0 feed the audio into the external source sum. When the delay signal is 1 feed the input audio to the infinite bit bucket - do nothing when the receiver might be unstable. (This is easier than trying to make the switch deliver no transients.)

Then after this has all had a half hour or two to really settle down you should have two reasonably precise (1% or less variance with time) values you can measure. They are both "powers" so you can take their ratio in DB and do your mathematical magic on them. The very low noise of the proposed amplifier preserves accuracy even though you do not know precise values for the noise figure aka noise temperature calculations. It's the same ratio you want for your radio astronomy source.

I hope that was almost clear enough to implement. I was totally riffing on it.

{^_^}   Joanne

On 20210624 16:19:23, Larry Dodd wrote:
The frequency spectrum of interest here are 15 to 30 MHz HF. As far as noise figures go we would like to see 10 or better. 
Larry, K4LED 

On Jun 24, 2021, at 7:15 PM, jdow <jdow@...> wrote:

 It might help me "sketch out" a good apparatus if I knew target frequency and noise figure data. HF measurements might require something completely different from microwave measurements. The difference between 5 dB being ridiculously good to 1dB being somewhat noisy is "Yuge" (Picture man with orange hair saying that for best affect.)


On 20210624 09:39:00, Larry Dodd wrote:
Yes I agree it is exciting times.  Radio (SDR) astronomy is going to change drastically in the next few years.  Hope I live long enough to see some of it.
Larry, K3LED

On 6/24/2021 16:23:40, Gedas <w8bya@...> wrote:

Hi Larry, great ! I am glad the video was of value. It is nice to pass forward many decades of RF lab experience. I was one of a limited number of certified tempest engineers and had a very memorable career getting to work on some amazing systems and designs. As an aside I am also into astroimaging and have dabbled a bit with radio astronomy. As you said exciting times now that SDR have matured so much. Let us know how you make out. TTYL es 73.

Gedas, W8BYA EN70JT

Gallery at (under repair)
Light travels faster than sound....
This is why some people appear bright until you hear them speak.
On 6/24/2021 11:57 AM, Larry Dodd wrote:
Very nice detailed video. I have an HP 3400A and use it in same way you did but with an HP signal generator. Your Marconi SG is really nice. I have a TS-2000 also. Thanks again! Appreciate all the help. 
Larry, K4LED 

On Jun 24, 2021, at 10:36 AM, Gedas <w8bya@...> wrote:

Hi Larry. Have you considered deriving the NF from the MDS ? This is quite repeatable and accurate for detection systems that do not have extremely low NF's.

The same caveats apply requiring a calibrated sig gen and external step attenuator(s) with a calibrated true reading RMS meter. Commonly done in my past life in tempest engineering.

I generated a simple Youtube video illustrating the procedure if you think it is applicable to your needs. 73

Gedas, W8BYA EN70JT

Gallery at (under repair)
Light travels faster than sound....
This is why some people appear bright until you hear them speak.
On 6/23/2021 9:57 PM, Larry Dodd wrote:
Thanks. We use a calibrated on/off noise source to do a Y Factor Method for SDR noise figure measurements. I have found just using the spectrum dBm measurements easier than the dBm meter. It usually reads -140 dBm constantly with low noise floors. 

On Jun 23, 2021, at 9:49 PM, jdow <jdow@...> wrote:

 That's a big subject.

To a first approximation the spectrum is very accurate for differences in reading. It's theoretically perfect if there is a perfect A/D converter involved. The A/D converter's step to step linearity can mess up this theoretically perfect relative calibration.

In any absolute sense any calibration present is rather loosy goosy unless you provide a precision source and take care getting your readings. Otherwise "loosy goosy" can mean +/- 20 dB or worse.

I refuse to address Simon's S-Meter accuracy until I check to see if I can still spoof it.


On 20210623 17:53:16, Larry Dodd wrote:
I have been asked the question, "How accurate are the SDR-Console dBm spectrograph and dBm meter readings?"  Can anyone answer that question? We are interested in measuring the noise floor of various SDR receivers.
Larry, K4LED

Join to automatically receive all group messages.