|Early demo of the Seriss single board KSU for controlling old Bell System "1A2" multiline business phones.|
That video shows an early version of the card that used no CPUs and all discrete digital/analog components. This changed in subsequent revisions to using one chip CPUs (PIC chips) to simplify the board layout, decreasing cost and enabling more features.
This project is a single circuit board solution to managing multiline "1A2" business phones popular in the 1950's - 1980's in the United States and other countries, collectively called "key systems". During that time the phones were managed by large control boxes from AT&T called a "KSU" (Key System Unit) that varied in size from a shoe box to large racks taking up an entire room.
Many of these phones are available in surplus, but can't be used as intended without these cumbersome control boxes. At the time miniaturization started becoming popular, the phone industry took a sharp turn in a radically different direction: after the Bell System was broken up, "digital" phones quickly became popular, so these old phone systems became yesterday's technology quickly.
So my project kinda picks up where the industry left off, had it given those old phones a few more generations; it "miniaturizes" the functions of the KSU into a single circuit board making it much easier to quickly connect up to 4 of these phones, such as for use in small office environment, or to demo the old phones easily.
I've actually switched my own business phone system over to one of these boards with 2 lines and 3 extensions, adding a Viking AR-1 to act as the autoattendant (blocks robocalls) and an answering machine to take calls when no one answers.
This 1A2 "single board KSU" project has evolved over time, resulting in a series of board revisions that accumulated improvements and features as it went. The project started with REV-B, and is now up to REV-J.
In REV-J and J1, support for Northern Telecom phones was added. This involved reversing the polarity for the A leads for lines 1, 2 and 5. The changes for Line 1+2 were minimal, but the ICM modifications involved dropping the TIP32 (Q6) and its two resistors (R25 and R27), and replacing them with a single 1uF capacitor and some trace rewiring. In REV-J1 the buzzer leads were swapped on all the Amphenol connectors, to prevent an NT phone from blowing the board's fuse if directly connected without any rewriring on a connection block. NT LOGIC 10/20/30 phones are properly supported in REV-J1 (and up) if proper connection block rewiring is used; see the manual.
Also, a missing ground in REV-H1 and REV-H2 was fixed; on EXT2, the lamp ground for Line 4 was omitted, causing its lamp to not light. This problem is only seen when 2 boards are interlinked. The fix for REV-H1 and REV-H2 is to add a jumper between pins 37 and 40 on EXT2.
The following are animated gifs showing the physical changes between older and current board revisions.
Here are the changes between H2 and J: all, top, bot. photo-top, photo-bot.
And here are changes between J and J1: all, top, bot. photo-top, photo-bot.
Otherwise, this revision offers the same features as previous releases:
When combining two boards to provide a total of 4 CO lines / 8 extensions, each extension can be
uniquely dialed on the intercom line via Touch-Tone or Rotary. This page
shows how to interlink two boards.
Covers Installation, Use, Troubleshooting..
There's separate pdf and html versions of the manual. (PDF is more complete)
|BOM / Parts List||Bill Of Materials: Digikey parts list with prices + total parts cost|
|PCB Layout File||The editable Sprint 6.0 PCB layout file (used to create Gerbers for printing PCB boards)|
|PIC .hex files [CPU1] and [CPU2]||Separate binaries for the two PIC chips, compiled from the V1.3D source code|
|ExpressSCH Schematic (.sch)||The editable ExpressSCH schematic file|
|Circuit Description||Description of how the circuit works in the various 1A2 modes (Idle, Call, Hold, etc)|
|Gerber/Drill Files (1a2-REV-J1.zip)||Gerber + Drill files as a zip file|
|How to manage this project||How to load the PCB layout, save Gerbers, print the PCB boards, etc|
|PIC Programming Notes||My loose notes while learning to write the PIC firmware for this project|
In the MPLAB X IDE, you can create two projects for the PIC16F1709 chip; one project for CPU1, and one for CPU2. In the new CPU1 project, create a new .c file called "cpu1-main.c" and a new include file "Debounce.h", and copy/paste the above 1a2-pic-cpu1-REV-G-firmware.c and Debounce.h files respectively into them. Ditto for the CPU2 project; create a new .c file called "cpu2-main.c" and a new include file "Debounce.h", and copy/paste the above 1a2-pic-cpu2-REV-G-firmware.c and Debounce.h files respectively into them.
The software has no dependence on external libraries; the software is entirely self-contained; all functions provided are in the source code above.
The board logic functions are managed by CPU1 (IC8) include detecting incoming calls, flashing the lamps, powering up and directing the external ring generator, detecting line pickups and hold conditions, and handles some intercom dialing detection and supplies the 60Hz extension buzzing signal. This software uses only 5% of the 1K of data memory, and 17% of the 8K program memory.
The other PIC chip, CPU2 (IC10), handles rotary dialing, and emulates a 7445 for 1-of-8 decoding of the DTMF MT8870 chip. The firmware for CPU2 is a relatively small program.
The "PIC PROGRAM" connectors (JP1 and JP2) let one re-program the PIC chips firmware on-board, without having to remove the chips to program them. Just plug Microchip's PICKit 4 USB programmer (a $50 device) into the appropriate PIC PROGRAM connector to directly program each chip; use JP1 to program CPU1 (IC8), and JP2 to program CPU2 (IC10).
You don't need this software to print these boards yourself; you can just use the Gerber + Drill files to have them printed.
You only need the software if you want to make changes to the board. I found Sprint6 very easy to work with, as you can "just draw it". Has a pleasant user interface and is very stable.. it never crashed once in the several months I've been working with it. And one can generate Gerber files from this software, allowing boards to be printed just about anywhere in the world.
I think the software cost me about $60 USD for a license, but I think you can use the eval to open and do everything but save. $60 is cheap, compared to what most PCB layout software costs. So with this program you can load up the board's PCB Layout File to edit it, generate Gerber + Drill files, and send for printing. I used these instructions for saving out the Gerbers and having the boards printed.
Phone Extension Connector Pinout
Pinout for extensions on a single board.
Pinout for extensions on interlinked boards.