Automating call transfers with a Panasonic PBX
One problem with last years Telethon was the complicated process of allowing outside callers to talk to Baird. This was achieved by starting a “conference call” with Baird and including the outside caller. However, this process is extremely error prone when performed by a person without training or the proper phone. Worst case, the call with the outside person would hang up if the sequence of button presses was not done correctly. Ian and I have come up with a solution to the problem: an automated call transfer device.
To begin tackling this problem, we needed to first be able to dial numbers automatically. There is two methods of doing so: Dual tone multi frequency (DTMF) and pulse dialing. DTMF is the newer, modern standard that uses the iconic beeps and boops you hear when pressing buttons on a phone. Before that however, we had pulse dialing, which used pulses from the phone being on and off-hook. Ian came up with a design that would allow us to dial using the pulse dialing technique:
Ian’s pulse dialing circuit using two relays and two transistors
After Ian built his design on a breadboard, I wrote some C code on an STM32 Nucleo board to handle the pulsing logic. The following video shows the two control pins hooked up to LEDs for visual clarity (blue would be hooked up to controlSW in the schematic, and green is hookSW in the schematic):
This demonstration video dials “1234567891”, with each flash of the green LED signifying a pulse on the phone line.
Shortly after we got this prototype working, we hooked it up to the real circuit and tested if it worked. Unfortunately, my pulsing logic had an off-by-one error, which actually ended up being tricky to find due to how the pulsing logic worked. After 20 minutes of debugging however, I managed to find and fix the issue. Although I didn’t get a video of it working before we left for dinner (we were both in a bit of a rush since we already spent a few hours getting to this point), it successfully managed to dial another phone connected to the PBX. It was really cool to see, but its only the first step in automating the call transfer process, especially for multiple phones instead of just a single phone. Hopefully it will prove to be a useful system in our next telethon!