Caller ID on Beta-Brite

[revised 13-Jul-2003]

I have an Apple IIgs whose entire purpose in life is to sit on top of my entertainment center and communicate with various things: Caller ID box, message board, and PatchBoy (my homebrew audio/video routing switcher).

The GS is running an Applesoft BASIC program with a few assembly routines poked into memory to do some of the serial port I/O (in straight Applesoft you can't find out whether there's a character waiting to be read from the serial port, without waiting for one if there turns out not to be one I needed some assembly routines).

My Beta-Brite is model 1040-4402 EZII. Manuals for Beta-Brite signs are available from the manufacturer at You can download more manuals at Here's the protocol manual.

I bought my caller-ID-to-serial-port kit from ITU Technologies, but now they're out of business. It was a US$40 kit with 4 rubber feet & a serial connector. The serial data is a 1200-baud data stream.

Normally the GS tells the message board to just display the time of day. When there have been phone calls, it shows the time followed by a number in angle brackets, like "12:00 PM <5>" to show that there were 5 phone calls. The time is Red, the count is Green. (Hitting Return on the GS keyboard acknowledges the calls & makes the number go away.)

The "compressed rotate" display mode on the Beta-Brite looks great but photographs poorly. The text moves to the left and gives the illusion that there are twice as many LEDs horizontally as there actually are.

When a call comes in, the info scrolls across the message board about 3 times before returning to the time-of-day display. Something like "212 999-9999 SMITH FRED New York" (number in green, name in red, state in orange). It takes about 1.5 seconds longer than I would like for the info to start scrolling...if I spent a little time on my string processing I could speed this up (it goes a little faster if there is no Calling Name information in the data packet from the phone company...that depends on your local phone company).

Pacific Bell charges me US$6.17/month, I think, for having the Caller ID data delivered. When Pacific Bell first started delivering Caller ID data, they were only sending the shorter "calling number" packets, but after about a year they started sending only the more flexible packet format, which can (but does not always) include a name.

My software hard-codes certain phone numbers to show the names, even if the phone company didn't send their info.

The "state" display is just a decoding of the area code...I found a web site listing all the North American area codes & put them into my Applesoft software. Occasionally I check for recent additions to the master area code list & update my DATA statements.

Here's a listing of the Applesoft BASIC program that's always running on my GS.

Programming the Beta-Brite

The Beta-Brite "EZKEY II Communications Protocol, Version 2.0" document is 68 pages. Title page says (c)1992 Adaptive Micro Systems, Inc, 7840 North 86th Street, Milwaukee WI 53224 (part number 9708-8041).

I got my copy for US$20 in 1993 from:

  Alpha-American Programmable Signs
  3460 Borreson Street
  San Diego, CA 92117

  (619) 273-3036
The downloadable protocol manual probably has the same information.

Serial port connector

On the last page of my "EZKEY II Communications Protocol, Version 2.0" manual from Adapive Micro Systems, from 1992, I found this:

    Pinout Diagram for Communication Ports used on Std Alpha signs

    RS-232 RJ-11 Jack Pinout

        (1) 5 volts
        (2) (-)RS485 Red Network Wire
        (3) TXD - transmit data
        (4) RXD - receive data
        (5 (+)RS485 Black Network Wire
        (6) GND

The diagram shows the 6 inline pins, numbered left to right, with the plastic tab at the top. (Presumably the connector is facing towards you, but it doesn't say.) Use 3, 4, & 6 and ignore the others.

There is another diagram called "RS-485 RJ-11 Jack Pinout", which is just like the RS-232 diagram, but only pins 2 and 5 are used (as above), and the other four show No Connection.

[ | Email Dave ]