RadioCtl With The BC245 & BC895
by Mike Agner, KA3JJZ
While taking a look through my listings of BC895 software, I came across a
package that boasted that you could set up 100 search ranges and 1000 channels.
Knowing full well that the 895 doesn't provide anywhere near that level of
flexibility, I decided to download RadioCtl and see what I could make of it.
To start, I should mention that I have been working and testing fairly closely
with Lydia Rosa (who is the software author) for almost a year. There have been
a great many significant changes between the old .91 version and the newer .92
version, and I'll refer to the changes as we go along.
Setup
After downloading the software, I expanded it into a temporary directory and let
the install process take over. A log is created that shows that several DLLs are
installed or copied (if you are upgrading), so if you ever decide to remove
RadioCtl from your system, you will need a good uninstall program to make sure
the right DLLs are removed.
You will immediately notice that one file you get from the installation is a
.dbf file called freqlist.dbf. This file is used for the alpha-tag lookups that
will be used in RadioCtl (referred to as 'Service Text'). Examination of the
file shows that it is set up with very general frequencies and Ids - for Taxis,
cordless phones, the maritime frequencies, and so on. You should clone this file
and add the text that you want to appear for each frequency.
Figure 1
shows the database as I began to build my data. It should be noted that,
according to the documentation, only the frequency, action and description are
actually necessary for RadioCtl to use the file for lookups. I did later reduce
the database to these 3 fields to test it, and it worked just fine. As I used
Microsoft Works to create the clone, I had to select the correct file type so
RadioCtl will recognize it, so be sure to save it as a Dbase III+ file. You can
have multiple databases defined, and since you can have up to 8 radios defined
to RadioCtl, this is a very handy feature.
Next, bring up RadioCtl by clicking on the icon. You will see a number of
screens come up - the main panel, a messages panel and a search panel, along
with VFOs. During the setup phase, just concentrate on the main panel.
Figure 2
shows an example of the panel for the 895, while
Figure 3
shows the panel for the 245. They are very slightly different, due to the
different features available from the radio. In the older .91 version, a
spectrum display screen came up that you couldn't close down or move; this
problem has been corrected in version .92. You can safely close all other
screens for the time being.
Click on 'Parms/Global Parms', and you will see a panel like that shown in
Figure 4.
You should change the 'resume' parameter- this is the parm used by
RadioCtl for the programmable delays (which will be covered later). The display
settings control the font that's used for the frequency and step data. Next to
it is a box labeled 'display unused aux'.
This arcane little box controls whether you would see controls that aren't part
of your radio's command set (such as selecting antennas for the BC895). You are
better off to leave this box unchecked. If you want your database that contains
your lookup information to be loaded automatically, check the 'Load Frequency
DBF' box. If you are going to set up a priority channel, place the number of
seconds you want to wait to check for activity in the 'priority' box. Click the
'OK' box.
Next, each radio must be defined to RadioCtl. Click on 'Parms/Radio 1' and
you'll be taken to
Figure 5.
There's a button called 'Locate Radio' at the bottom of the panel. As long as
your radio is connected and in remote mode, click on this and see if the correct
selections come up. When I tried this (testing both radios), it didn't work, so
I had to select the COM port, model and Protocol manually. Evidently, you can't
change the 'name' field- at least, nothing I did saved the change when I
attempted it.
There is one very important box which you must change before going any further.
RadioCtl uses one of the radio's memories as a workplace; many functions, such
as downloading data from the radio, actually happen here. Make sure that you
pick an unused channel, and select that number from the pull down menu. Keep
that channel in mind; when you're finished using RadioCtl, it's a very good idea
to zero out or otherwise turn that channel off, otherwise all sorts of weird
frequency information might appear there.
When you're all done with this panel, click 'OK'. RadioCtl will attempt to
connect with the radio you have defined here.
The next step is to build a frequency file. On the main panel, you will find a
'Load/Set' radio buttons, along with channel numbers. Adjust the channel numbers
as needed, then hit 'Load'. A file will be created (initially stored in
c:\My Documents, but you can change this). Make sure you also give it a name that
identifies the radio from which these frequencies were loaded. As shown in
Figure 6,
the file must be saved with a .frq extension; however, this file is Notepad
compatible, so make sure that if you want to look or edit this file to make this
association in Explorer. The documentation describes the format of the .frq file
in great detail, as many pieces and functions are stored here.
It should be noted that writing a .frq file is not really required, as you can
load frequencies directly into RadioCtl or you can Load them from the radio.
Loading them from the radio is probably easiest, as the data formats RadioCtl
needs are rather complex; if you want to write your own files, be sure to read
the appendix information completely before proceeding.
Finally, returning to the main panel
[Figure 2],
you must choose how the program will scan and under which control. There is a
button right underneath the channel number that will either say 'Use Computer's
Memories' or 'Use Radio's Memories'. These 2 settings work very differently; if
you use the computer's memories, it will use the .frq file you just created (or
opened, if this is not your first session) to control scanning. As such,
scanning tends to be a bit slower, particularly if you are listening with the
CTCSS option turned on (found in the far right hand side of the panel). This is
understandable, as more information is being passed back and forth.
In addition, it will use the work channel that was selected in the radio parms
box. If you use the radio's memories, scanning tends to be faster and it will
scan using the radio's memories. In addition, the work channel is not used when
using the radio's memories; if you're kinda short on free space in your radio,
or are using the CTCSS option with the 895, using the radio's memories is highly
recommended.
You will find a bar, representing the speed at which scanning takes place, down
at the bottom of the screen. To allow for CTCSS scanning, I found (with my 895)
that setting it at about 95% worked very reliably. Of course, with the 245, 100%
worked fine, since CTCSS scanning isn't available with this radio.
Lastly, there are a number of global switches on the far right hand side of the
panel. If you want RadioCtl to insert service text into the scanning, check the
'Memory Sync' option. If you want RadioCtl to write a log file, check the 'log
to file' option. Since the 895 doesn't trunk on 400 Mhz (and I have a small 400
MHz system here), I checked the 'Scan Trunk Frequencies' box. This will cause
RadioCtl to scan these frequencies conventionally.
In order to indicate which frequencies are trunked, you must mark these
frequencies with a trunked tag. You can do this by using the memory channels
panel. From the main panel, hit 'view/memory channels', and you will see a panel
like
Figure 9.
Use the bar at the left to scroll down to the frequencies you want to mark, and
check the 'trunked freq' box. This data is stored in the .frq file, so be sure
to 'save' it when you're finished. To scan these frequencies, check the 'Scan
Trunked Freq' box.
I also have several frequencies with CTCSS information which I wanted to be
used, so I checked the 'CTCSS Enable' box. This is a major change from version
.91, as this option was not available at that time.
Notice the 'Light on Signal' box. It's greyed out in the 895 version of the main
panel, but active in the 245 version. This is for the autolight function, and it
works just for the 245.
Remember those numerous scan and search banks I mentioned earlier? You can
easily set them up before scanning. Click on 'view/scan banks', and you will be
taken to
Figure 7.
As you can see, I have set up the first 20 channels as my first scan bank
(notice that RadioCtl starts everything at selection 00; this takes a bit of
getting used to, particularly when Uniden starts everything at 1). Put your
beginning channel in 'start', the ending channel in 'stop'. Check the 'valid'
box, and put something into the service text so you can remember what this is
used for.
Make sure you hit 'enter' or 'tab' so that RadioCtl will store this information
correctly. This can be real handy for that special event (like, say a
Presidential visit) where you want to only scan a few channels for activity. You
have 100 of these scan banks available, so naming them is very important. This
information is stored in the .frq file, so make sure you 'save' it (in the file
pulldown on the main screen) when you are finished defining your banks.
Setting up your search banks is very similar. Click on 'view/search banks' in
the main panel, and you will be taken to
Figure 8.
You will notice I have set up an aero search in the ARINC section of the VHF air
band. The only thing to watch out for is the step; it's read as MHz, not kHz as
one might expect. So entering 12.5 would attempt to scan at 12.5 MHz steps
(which the 895 won't support anyway). As mentioned before, there are 100 of
these available, so make sure you give it some unique name. Like the scan banks,
this data is also stored in the .frq file, so you must 'save' it when you're
done.
Scanning
We're finally ready to start scanning. Return to the main screen and press the
'scan' radio button.
To set a channel as a Priority, check the 'priority' box in the global switches,
and put the priority channel in the priority box at the bottom. Then place that
channel number in the priority box on the bottom right. As you scan, the
priority channel will be checked every number of seconds that you set in the
global parms pulldown. As it does, the priority box turns red. It also seems
that the priority channel's information is stored in position 00 of the memory
channels panel (which isn't stored in the .frq file, interestingly enough).
If you want to see the service lookups that RadioCtl will post, from the main
panel, press 'view' then select 'memory channels' from the pull down. You will
immediately notice that a lot of screen area is taken up by both panels being
active; you may resize them as you wish.
Notice that the memory panel is also slightly different, depending on what radio
is being used.
Figure 9
shows a memory panel for the 895, while
Figure 10
shows one for the 245. There is one little glitch with the 245 version; although
the 'attenuator' function is shown on this panel, it's really a global
attenuator, not one that works on a per-channel basis. It's easy to make this
mistake, so remember, if you turn it on here it's on for all channels in the
245.
When Lydia saw my comments on the 'attenuator' box, this is what she wrote back:
"If you turn the Attenuator on for an individual channel, it should only be on
when scanning that particular channel [not for the 245]. However, if you are
using the radio's memories, then the attenuator is set by the setting on the
active VFO. If it happens to be on when you switch to radio's memories, then it
will be on for all channels." So it appears that RadioCtl attempts to implement
this function somewhat differently than Uniden intended. So be careful with this
function.
With the 895's version of the panel, you see a box marked 'recorder'. This is
used to activate the tape recorder ('Aux' in 895 terms) switch. To use this,
check the box for 'recorder' for those channels you want to record. Then return
to the main panel, and put these channels in the 'start' and 'stop' area, then
press the radio button marked 'Set'. These channels should now show 'line' in
the 895's display.
If you are using the computer's memories to scan, the count, time, signal and
date stamp will be updated. If you are using the radio's memories, only the time
and signal fields are updated. These can be cleared at any time by simply
double-clicking on the desired item; if you want to clear all these fields,
select 'database/clear everything' from the pull down menu.
Look at the boxes to the left. The 'valid' box is really an indication of
whether the channel has been locked out. The 'delay' box is self explanatory. If
you had marked this frequency as a trunked frequency, then a check should appear
in the 'trunked freq' box - but I found this doesn't work. Fortunately, the
global switch for scanning trunk frequencies as conventional works just fine, so
this is a minor nit.
The 'rsm' (resume) box is really a programmable delay. If you check this box, it
goes to the resume time that was posted in the global parms pull down. For each
frequency scanned and traffic detected, it will remain that number of seconds.
This is a good way to sample frequencies just to see if they are active or not.
The 'database' selection presents some limited control over your database. You
can sort it by frequency (recommended for speed), or perform a lookup based on
service data. You may even clear fields out. It's really not very useful and
I personally prefer to use a dedicated program for this purpose. In fact, what
you are really editing is the .frq file, which can be edited with Notepad or any
other text-compatible editor. You should be aware that these functions just
change RadioCtl's memories; they won't be saved unless you use the 'file/save'
pull down.
The 'edit' selection
[Figure 16]
allows you to copy or move records within the database. Again, it's much too
limited to be really useful; you should use a dedicated program to perform
editing functions.
VFO Control
RadioCtl defines 2 VFOs, designated 'A'
[Figure 11]
and 'B'
[Figure 12].
One VFO is active at all times, even if it's not being used. The work channel
(defined in the radio parms) will be used as the VFO. To access this, you need
to do 2 things.
First, load the VFO with the contents of a memory by pressing the 'Mem->VFO'
button on the main panel. Then click 'View/VFO-A' from the pull down. You will
notice that the VFO is marked active with a little red button under the
frequency. You must specify the correct step before tuning, and once again, it's
defined in MHz, not kHz.
You can either click on the digit of the frequency or use the up/down buttons
next to the frequency display. VFO-B is accessed in a similar manner; to make
this one active, simply click on the 'Make This VFO Active' box.
You can transfer the VFO frequency to memory (actually the .frq file) by
clicking the 'VFO->Mem' button on the main panel- but note that you need to
'Set' it to actually send it to the radio as a channel.
Scan and Search Banks
To access these functions, go to the main panel and click on the 'banks on' box.
If you want to use your scan banks, then press 'scan' on the left, and RadioCtl
will use the scan banks (starting with bank 0) you have defined. You can still
use the memory channels panel to look at the service lookups, if you wish, but
keep in mind that it takes up a great deal of screen space to do this. Notice
that CTCSS is available here as well; this is also new with version .92.
The search banks work somewhat similarly. Instead of pressing 'scan', press
'search' and RadioCtl will start searching with bank 0.
The 'database' and 'edit' functions that were briefly discussed above are
duplicated here; though I might quibble a little with 'database', since what you
are really working with is the data stored in RadioCtl's memories, as noted
earlier.
Spectrum Display
There's even a resizable spectrum display. To access this function, click on
'View/Spectrum Display' and you will be taken to
Figure 13.
It's resizable, and each tic's representation changes as you resize the display.
As was mentioned before, version .91 had a bug where this screen could not be
closed down; version .92 corrects this fault.
Messages and Logs
If you're curious about what is happening behind the scenes, or want to see what
RadioCtl is recording while scanning, click on 'View/Messages', and
Figure 14
will pop up. It should be noted that the signal strengths the program is
recording is whatever the radio is reporting as a value, and is not calibrated
against some known source; but as you can see, date, time, mode and channel are
all recorded, as well as any key presses and actions RadioCtl takes as a result.
If you want to keep a permanent record of these actions, go to the main panel
and insure that the 'Log to File' option is checked. The log file is written in
RadioCtl's directory, and if it's small enough, is Notepad compatible (so you
may need to build an association in Explorer for it); if not, make sure you edit
it as a standard text file (for example, in Word). An example of the log can be
found in
Figure 15.
This too is new in version .92.
Terminex Time
No software is without bugs, and RadioCtl is no exception. Perhaps the most
serious of these has to do with some interaction between the global switches on
the main panel and the service lookups. If you decide to change the settings on
some switches while in a session where lookups were being performed, the lookups
suddenly quit and the last service text found begins to be propagated to other
channels where it doesn't belong. The switches that seem to be the worst
offenders include the 'Log to File' and 'Banks On' switches. In addition, if the
'Don't Update Memory' switch is not turned on, RadioCtl will attempt to write
the invalid service data to all channels that had hits during that session.
There is a workaround, though it is very clumsy. If you decide to change the
global switches, you must exit RadioCtl completely, come back in, and before
scanning, set the switches to the way you want them, then resume scanning. It's
klunky, but it works.
There is something that locks up the database where the service lookups take
place. If you try to edit it, make some changes then save it, Windows reports
that the database is in use by another application or is marked read-only. A
quick check of the properties showed, at least in my case, that the database was
not marked read-only, so RadioCtl must be locking it up. The only way around it
is to save your changes under another name, then use the 'File/open another
database' pulldown to retrieve it.
There is evidently a bug in the way RadioCtl maps out the names you assign to
the scan and search banks. They are correctly stored in the .frq file, but the
mapping tends to be erratic - sometimes the first entry shows up, but not the
others. Sometimes they don't show up at all. Another mapping error appears to
exist between the .frq file and the memory channels panel. This has to do with
the tag used to indicate that a frequency is part of a trunked system.
If you use RadioCtl in disconnect mode to edit your .frq file, the box that is
used for marking a trunked frequency shows up correctly- but it doesn't during
scanning. The documentation is very extensive- and you get it in both Word and
text format. Unfortunately, there's no help available on the main screen; it
tries to open the text file using Notepad, and it's much too big.
It would be very helpful to have this file available on line, with hypertext and
indexing so you can find what you want easily. In fact. Lydia wrote that in her
original version (under OS/2, no less!) the help file got so big that it took
more time to write it than to write the RC code! Additonally, there are a few
errors in the documentation. If you have Microsoft Word, you can make these
changes rather easily:
- Table 1 - The maximum frequency range of the BC895 is 1.2 Ghz, not 955
MHz
- Page 45 - The Tone field may well be used for future enhancement, but in
reality this is where RadioCtl stores the Uniden code for a PL when used
with the 895.
- Table 3 - The tone function is model dependent on the Uniden radios. The
895 supports it, the 245 doesn't. Both models handle trunked
frequencies.
- Table 5 - The codes for the tones go beyond 15, as was discovered when
895 tone decoding was implemented
- Uniden uses a very esoteric coding scheme to communicate with other
programs when PL tones are being sent to/from a PC. For those people who
want to try to write their own frequency file, this information should
be included. Fortunately, this data can be found on the web.
- Examining the .dbf file, I found a field called 'Locale'. It's not
described anywhere in the documentation. Lydia wrote back that it's a
field from her own personal database, and should be removed in the next
release. Indeed, I didn't use that field in my database, and the lookups
worked just fine.
Some people may find the number of screens opened during a session to be a bit
daunting; too, it takes up a huge amount of screen space. I ran my tests at
800x600 on a 17-inch Samsung, and I ended up having to resize screens to make
them fit. I suspect it would be a bit better at 1024x768.
Is It Worth Registering?
Most definitely. The program's flexible scan and search banks are a real help to
someone doing research in an area s/he may not be familiar with. The service
lookups and logging functions are, for the most part, very accurate and stable
(with the exceptions noted above). Too, you are able to scan trunked frequencies
as conventional (with service lookups); for the 895 users who have 400 Mhz
trunked systems in their area, this can work well enough to just get an idea of
activity on a system. The CTCSS tone functions work very well, and it's apparent
a good deal of thought went into the panel design.
On the minus side, it's tricky to set up the first time; you really do need to
read the manual and just experiment to try different settings to see what they
do. The screens do take up quite a bit of space; you may need to increase your
screen resolution and resize them to make them fit.
Lydia has been very responsive and patient throughout the year with my
questions, problem reports and suggestions. With that, I think this software is
just a hair better than Softrol's offering; and if she does tackle the trunking
functions, this program will be even better. At just over USD $3 for each radio
(up to 8) that you can define to RadioCtl, it's a bargain.
Mike Agner, KA3JJZ
ka3jjz@erols.com
Related link: RadioCtl web site
|