to the "Under the Hood" Page
This page is dedicated to giving you the inside skinny
on what makes our radio panels tick and how we have gone
to great lengths to give you real "instrument-like"
performance in our software and a "flexible"
interface that you can tailor.
This page is always being updated.
Please check back for news and software and documentation updates.
Last Updated: 02/15/10
First a word about our mascot "Rowlf".
Rowlf our former QC/QA guy is rising to new heights. He
has been promoted here at CallSign Software to the CEO,
Chief Executive Officer, or "Top Dog!".
It is his job to make sure all us here at CallSign
Software deliver Top Shelf Technology to all of our
users. So here are some technology notes about our
products for our users.
What versions of Windows do we work with?
To date all of our software runs on Windows Win2000, XP, Vista, and Windows7, both 32-bit
and 64-bit versions that support the Win32 interface. We no longer support Win95,
98 or NT4.0. You need at least a Pentium IV running at 1000 MHz
to use all of features with at least 1GB of memory. Our software detects the version
of Windows that you are running and applies special processing for each version as
required. We also use normal graphics mode(96dpi) as we do a lot of hi-res precise
pixel graphics. We use all standard 32 bit interfaces in Windows but with the countless
configurations we occasionally run into an issue. When this happens we are happy to
incorporate changes to accommodate yet another Windows special case.
What is DSP and DSP Filtering?
DSP, or Digital Signal Processing provides for the
processing of received and transmit signals through
software algorithms that filter out unwanted components
of a signal. This becomes more cost effective as complex
filter based electronics is no longer needed. DSP
provides a set of building blocks that the Software
Defined Radio Designer can use to create a set of
features on a Software Radio that is consistent with its
user's interests and capabilities without the need to add
How does DSP benefit me?
DSP makes possible more cost effective radios as your
Personal Computer replaces the front panel. This
eliminates an average cost of about $100.00 per control
on the selling price of a radio. The power and falling
price of the personal computer along with Microsoft
Windows makes possible a whole generation of radios with
more flexibility, capability, and much lower price point
then traditional analog electronics based radios.
Did you know at the average cost of $120.00 per crystal
filter, a DSP radio like the Pegasus and Rx-320 with its
33 filters would cost over $3300.00.
Did you know that all of CallSign Software's
radio panels are based upon 32 bit arithmetic and
floating point mathematics?
Even though the DSP data from the Ten Tec radios comes to
us in 16-bit format we convert it to 32-bit format for
greater precision. When we are manipulating frequency
data, that information is all processed as floating point
mathematics. This gives us greater resolution and finer
precision when mapping the data to graphical displays.
Why have 32 bit graphics on your fancy new Pentium class
machine and only 16-bit resolution in the frequency data.
It makes no sense.
How do we take advantage of DSP and 32-bit resolution?
All of our Scope Panels use DSP Signal Data
right from the serial interface.
We scale this data and operate on it with 32-bit precision and perform floating
point calculations with it. We do not have any connections to the audio output.
You are viewing actual signal data.
Did you know that the core of all of our
radios is based upon a 20 MHz software clock? What is
Well it keeps everything in motion and synchronized. Our
Radio panels are designed around real laboratory
instruments. Of course we do not measure voltage or
current, but we do measure signal strength and power
output on transceivers. These measurements are gathered
in real time as they are delivered. Well the software
clock insures timely updates on a periodic basis or
"in real time" as we say!
How can Windows and real time be spoken in the
Well Microsoft never disqualified its Windows Operating
System from being used in real-time based applications.
It just that many applications do not bother with it as
their data handling is not critical. The Windows
Operating System has built in Programming Interfaces that
can allow an application to bypass the "slower"
interfaces and access the Windows core or
"kernel" directly for time critical operations.
We make extensive use of this interface to process signal
information, perform display updates, and make timely
floating point computations that affect radio panel
performance. In effect we have created what is termed an "embedded
real-time" system inside the Microsoft
Windows Operating System.
Who or what is a Watchdog?
We shall clear up one misconception. He is not Rowlf!
Anyhow every well designed piece of equipment including
software has a function that keeps an eye on critical
functions such as the communications between your radio
and PC (Sort of like Rowlf and the staff!). One of the
watchdog functions is to insure we maintain
communications with the radio by periodically requesting
signal information from the radio, checking the radio's
response and or lack of response. We do not simply
"tune your display". We tune your radio and as
such insure that every frequency change command that is
sent to the radio, has its response timed and its
acknowledgement checked when the actual frequency display
What is our Flexible Interface?
One of the goals of the future of Software and Radio is
to allow the user to define his/her radio to his/her
tastes. Well a small bit of the future is now here! It
was an early design goal to create a piece of software
that would allow a limited number of radio components in
the user interface to be changed by the user to meet
his/her tastes or in affect re-define the user interface
on the fly. This is possible because all of our radios
are based upon a database design that tracks changes in
the user interface in real-time. It is an
"adaptive" database design in that it
links all parts of the user interface with the radio
control software in order to effect changes in the
operation of the radio software in response to these user
interface changes. With this basic database design we
have been able to design a software based structure that
is highly modular as shown in the following block
diagram. The Radio Operating System Software
is standard in all of our products.
How is this Flexible Interface Possible?
Well when you buy our software you are really purchasing
multiple modules at once. Our software is highly modular
and broken up into distinct pieces that allow us to add
radio functionality, new radio platforms, and improved
user interface functionality. The major parts include a
Radio Communications Package, Radio Core Operating
Program, Radio Database Manager, and finally User
Interface Package. There are other smaller modules (such
as the Watchdog) but all of these components are
controlled and co-coordinated through our central
database that tracks Radio Settings Changes, User
Interface Changes, and last but not least the actual
operation of the radio itself. We are only limited in the
future by the size of your PC's memory and the speed of
What is "Point and Click" QSY?
This refers to the property that all our scope faces
provide. Since our scope faces are real instrument
displays, we can accurately, to 6 decimal places, track a
cursor frequency wise on our scope display. Since we
already provide a momentary A/B function when in split
mode, we can easily provide such an interface with our
scope's displayed frequency. This is great for finding
those hidden signals that only the radio's DSP can see.
What is "interlinking"?
This refers to the property or ability to have two(2)
radios communicate for the purpose of transferring
frequency and/or mode information. The linked radios form
a master/slave relationship. The master can be setup as
the main radio. The slave radio can be setup as a
spotting receiver or secondary console to the master. The
master sends commands to the slave such as tuning
commands. The slave sends status reports back to the
master. This capability allows us to transfer "point
and click" information from a slave to a
master. Interlinking is a form of networking but in
"stealth" mode. Neither the master or slave can
be seen outside of the PC they are running on.
What is our tuning system and how is it
The tuning POD is being operated as a constant rate
tuning device. This means up to a certain point, spinning
the knob faster DOES NOT increase tuning speed. This must
be done through the acceleration parameters you have set.
The upper bound of the tuning speed is set through the
tuning delay you set. This sets the frequency at which
tuning changes are made independent of how many encoder
ticks are gotten. The quantity of ticks per tuning delay
period determines how fast the frequency's rate of change
actually occurs or accelerates. A constant smooth tune
actually tunes faster than a jerky fast spin.
The tuning system
was designed for slower systems that could get
easily overloaded with the avalanche of tuning reports
that can come be reported. Finally you
can set the threshold at which changes in tuning rate are
made. This was done to insure that tuning changes are
processed at a constant rate and do not over power slower
We say we use multi-processing! What does this
PegasusPlus is a full 32-bit program that contains
multiple threads or processes that perform the various
transceiver functions concurrently and interlinked
through our database. They are designed to provide
reasonable performance on the various PC types that could
run any one of seven (7) different versions of Microsoft
Windows(c). The thread breakdown is as follows.
-Watch Dog Monitors the state of the communications
interface for line disconnect and/or communication
-Clock/Timer Performs Time processing, Station Auto Tune
functions, and software clock timing.
-Meter Performs both S-meter, Tx meter, and multi-meter
update and real-time draw operations.
-Main Scale Performs main scale, if displayed, update and
-Band Scale Performs band spread scale update and drawing
-VFO A Display Performs VFO A frequency display draw
-VFO B Display Performs VFO B frequency display draw
-Pan Display Performs Pan Scope Display frequency and
amplitude update and draw functions.
-Filter Display Performs I.F. Filter Display frequency,
filter edge and amplitude update and draw functions.
-Serial Interface Performs command response dispatching
and remote POD Encoder Update processing.
-Synchronizer Synchronizes the various types of
main/sub/aux tuning against the appropriate tuning
encoder applying both accelerated and constant rate
The serial interface thread is the highest priority
thread in the system. It fields Remote POD and S-meter
reports and get control above all other threads. Its
priority is set at "Real Time Critical". Other
than the Watch Dog, Clock/Timer, and Synchronizer thread,
all other threads run at a normal rate. Blocking the
Watch Dog will kill the system as it is assumed system
integrity has been breached. Blocking the timer causes
the system to slow down. Blocking the Synchronizer causes
delays in processing remote POD encoder ticks.
What is our SWL Database format and how is it laid out on disk?
See our database page