A cross platform control widget for the Uniden Bearcat BCT15 radio scanner 

I recently acquired a BCT15 scanner with the idea of permanently installing it into the car.
Unfortunately most of our small sized european vehicles don't provide enough room to sit devices other than the car stereo into the center console and presence of  the manual shift lever bars installing an extra console between the seats.

The BCT15 (and others) allows control via the BC-RH96 remote head optional accessory, unfortunately its production has been discontinued and units available on the second hand market end up selling for prices very close to a complete radio. There are some shots on YouTube (here, here and here) showing homemade hardware solutions to replace the controller, however at least one of the authors won't realease more details as he plans to sell the device in the future.
Still considering the possibility of building one myself around an Arduino board, I decided to make some pratice in talking to the radio.
I really appreciate the choice Uniden make to release all details of the communications protocol: I think this is a long sighted approach that will keep them high in the considerations of  radio enthusiasts, ensuring further development around their products.
Here is the result of my half a**** coding: a small widget that will run on any platform where you can get Tcl/Tk ,running.
The broad idea is to use either my Windows Mobile based phone or the Jornada 720 as a controlling head. In the first case some external bluetooth hardware is involved, but I may get a totally invisible setup which is good.

The BCT15 communications protocol allows two levels of interaction with the radio:
Keeping  the "phone" cunning plan in mind, I wrote a small "remote head" widget which I  hope I'll be able to control using the mobile phone touchscreen.
Display details had to be somewhat compacted to safeguard readibility on a small screen.
Same for the keyboard, who is reproducing only some of the controls available on the radio, nevertheless the vast majority of the functions I need is available.

Here are some screenshots taken on a WindowsXP box:

  1. get Tcl/Tk installed on your device. Tcl/Tk is avalable for most computing platforms and installed by deafult on the most popular Linux distributions.
  2. download the BCT15 script
  3. open the scirpt into a good text editor (I recommend Crimson Editor on Windows)
  4. set screen orientation by changing this setting:
        # "pc" = desktop pc
        # "hpc" = hp Jornada 720 hpc
        set platform "hpc"
This is how it look on the Jornada 720.
        # "pc" = desktop pc
        # "hpc" = hp Jornada 720 hpc
        set platform "pc"

And this is a screenshot on a desktop pc:
  1. change the serial port address to match your device, both in format and port number in this section
        #serial port
              # Windows CE format "com1:"
              # Windows "desktop" editions (XP and older) "COM1"
              # Linux  "/dev/ttyS0"
              set comport "COM4" 
here software is set to work con "COM4" on a Windows machine
  1. set serial port speed of radio to 19200 bauds. Alternatively you can modify connection speed directly into the script in this section:
# serial port open
                proc seropen {} {
                        global serial ;
                        global comport ;
                        set serial [open $comport r+]
                        fconfigure $serial -mode "19200,n,8,1"
                        fconfigure $serial -blocking 0 -buffering none ; }
  1. run
The small keypad has two different operation modes, switched by the "nbr" key in bottom left corner. When the keypad is in "numbers" mode, a "#" is displayed in the top left corner of the display.
In "normal" keypad operation each key provides a function, the two characters on the right try to remind it.
Please refer to the actual version of software: images above were taken before release and some key assignment have changed since.
< equivalent to turning the vfo knob one click counterclockwise
> equivalent to turning the vfo knob one click clockwise
FN equivalent to pushing the vfo knob
ME equivalent to pushing the MENU button
SS equivalent to pushing the SCAN/SEARCH button
YS equivalent to pushing the E/YES button
LO equivalent to pushing the L/O button
HR equivalent to pushing the HOLD/RESUME button (yes... images above are wrong)
NO equivalent to pushing the NO button
nbr switches keypad to "number" mode
E equivalent to pushing the E button
© starts a Close Call search

In "number" keypad operation each key inputs a number, for direct frequency entry.
1 inputs number "1"
2 inputs number "2"
3 inputs number "3"
4 inputs number "4"
5 inputs number "5"
6 inputs number "6"
7 inputs number "7"
8 inputs number "8"
9 inputs number "9"
nbr switches keypad back to "normal" mode
0 inputs number "0"
. equivalent to pushing the "." button

Tcl15 running on the HP Jornada 720

Contatto:indirizzo come immagine per diminuire lo spam

Pubblicato: 25Oct09 Home