Foundations of Amateur Radio #206:
May 17, 2019
Add a comment about this article!
SDR: How many colours inside a Software
If you were asked to make an image of the
Sydney harbour bridge and only use four dots,
the viewer might struggle to determine what
was the bridge, the sky, the water and the
Sydney Opera House. Regardless of the number
of colours available to you, the number of
dots would not be enough information for most
people. You might have a nice piece of art on
your hands, but it might be ineligible for
the Archibald prize. Even if you were allowed
many colours, and just four dots, figuring
out if the blue dot was water, sky, or the
background of the Australian flag on top of
the bridge might be just as complicated.
If you were asked to make the image with one
hundred dots, and only use black and white,
from the perspective of the viewer you'd have
a result that was easier to understand. Use a
thousand dots, even easier, even if you only
used black and white.
Now, if you were to use a hundred dots, with
ten colours, your image might be just as easy
to understand as if it was a thousand dots in
black and white.
The point is, there are two things going on
here. The number of dots and the information
contained in each dot.
More dots or more colours, or both, will help
Similarly, in Software Defined Radio, more
dots, that is, more samples, will help and as
I've previously mentioned, you need at least
twice the number of samples as the highest
frequency that you're measuring. But what of
the colours in relation to an SDR?
Measuring voltage as a human with a piece of
paper is pretty straightforward. Provided
you've got a Volt meter, a piece of paper and
a scribble stick, you're good to go. If you
measure your voltage as 1 Volt, you write 1,
if it's -1 Volt, you write -1. Similarly, if
it's 100 Volts, you'd write 100, 13.8 Volts
and you'd write 13.8. We'll get back to
colours in a moment.
Provided your paper is big enough, you can
record as many values as you need and as
accurately as you desire. 13.8 or 13.8853,
makes no difference to a piece of paper.
Computers represent numbers internally using
powers of two, called bits. A single bit can
represent two values, 0 and 1. Two bits can
represent four values, 8 bits represent 256
values and 16 bits represent 65536 different
The takeaway is that there are a specific
number of values that you can represent
inside a computer, depending on how many bits
Consider the values I've mentioned, 1, -1,
100 and 13.8. That's four different values.
If it's not immediately obvious, what ever
solution you come up with, tracking positive
and negative, tracking small and large, whole
and fractions should all be part of the mix.
In case you're wondering, we're essentially
describing here how many colours or values we
are going to allow, or in terms of a
computer, how many bits.
Let's consider all the values you might
measure and represent inside a computer. How
many different voltages do you want to be
able to record between 1 Volt and 100 Volt?
If you allow for ten values, you can record
10 Volt, 20 Volt and so-on, but you can't
record 15 Volt.
If you allow for a hundred values, you can
record 1 Volt, 2 Volt and up, but you won't
be able to record 1.5 Volt.
If you account for a thousand values then you
can record 1.1 Volt, 1.2 Volt and so-on, but
you can't record -10 Volt.
Remember, our computer representation can
only manage a specific list of values and the
size of the list is determined by the number
of bits you're using.
The rabbit hole goes even deeper.
Radio signals vary massively in their
strength, which is why we use a decibel scale
to represent the signal strength, instead of
saying station A is a thousand times stronger
than station B, we say it has a signal level
that's 30 dBm higher. That's comparing a 1
Watt station to a 1 kilowatt station, and in
terms of voltage, that's between 20 Volt and
If you're designing a mechanism to store your
measurements inside a computer, you might
decide to use dBm to record your measurement.
Let's say 30 values from 30 to 60 dBm. Sounds
great, where do I sign up?
Not so fast. What happens if our station is
running less than 1 Watt, or if it's running
100 kilowatt, like when you happen to receive
a nearby FM broadcast station?
Not only do you need to contend with a whole
range, called a Dynamic Range of
measurements, you also need to deal with what
happens to the overall picture.
Let me say that in another way.
Your voltage measurements at the base of your
antenna are a representation of the RF
information that your antenna is receiving,
or transmitting for that matter. Representing
that inside a computer means that the values
you're using, and how fast your gathering
them, determine how well the RF signal is
One thing to note is that the largest values
represented by what ever you choose is only
part of the problem.
A signal that is stronger than the largest
value you can record is not going to be
recorded correctly. Similarly, a signal that
is so small that it doesn't register as a
change, also has an incorrect recording.
Picking the right combination of dots and
colours, sample size and bit-depth, doesn't
end there, because there's even more to this,
but I'll leave that for next time.
To blow your mind, the Dynamic Range, bit-
depth and sample size I've talked about in
relation to Software Defined Radio, also
applies to many other things, like taking a
photo with your digital camera, or sampling
digital audio, so understanding this in one
area will likely help you in other places as
The final takeaway is that a computer records
a range of values that can represent a
measurement in the real world. Picking the
correct range of values determines how well
your computer represents what your measuring.
I'm Onno VK6FLAB
TL;DR This is the transcript of the weekly
'Foundations of Amateur Radio' podcast - for
other episodes, see http://vk6flab.com/
There are no comments on this article: