Ring detector
The first question, therefore, is how you will detect the ring signal. A simple way, if you’re willing to dedicate the modem on a PC to the task, is to let the modem do the work.Windows will tell your application when a ring occurs with the Telephony Application Programming Interface (TAPI) LINE_LINEDEVSTATE message. If you’re writing in C++, you can use MFC (as we’ve done in this book). Microsoft’s “Creating a TAPI Connection Using CTapiConnection”. Your program will have to use the ringing information to get the control signal to the television, but there are several good ways to do this that we discuss later in this chapter.
Alternatively, you can use a circuit to detect the ring independent of any PC. The left-hand image in Figure 2 shows the Radio Shack Fone Flasher 2, which provides a loud ringer, a flashing light, or both when the phone rings. The right-hand image shows the connection to the piezoelectric module, across which you could tap to generate a control signal. The device connects to the power line as well as the telephone line, so there’s no high voltage inside — you might want to think twice about modifying one of these for your ring detector.

FIGURE 2: Radio Shack Fone Flasher 2
We also found modules on the Internet designed for use as ring detectors. Figure 3 shows the ELK Products model ELK-930 doorbell and telephone ring detector. If you look closely at the figure, you’ll see the board is perforated to let you separate the three modules (two doorbell and one telephone) into individual elements. Each has four connections, and requires no external power. The doorbell modules connect to the 24 VAC signal in parallel with the doorbell itself; the telephone ring detector connects across the phone line. Both module types provide an open collector transistor output you can use for the control signal.

FIGURE 3: ELK-930 doorbell and telephone ring detector
Alternatively, you could also design your own circuit, such as the one in Figure 4. The incoming telephone line signal is applied across the series stack of a capacitor, pair of Zener diodes, signal diode, and resistor. The capacitor blocks all DC from the circuit, and should be rated to withstand the high input voltages. The back-to-back Zener diodes block any AC signals (such as audio) smaller than the ring signal, and should be rated at 10–20 V. The optoisolator ensures that the high voltages on the telephone line do not appear on the control circuit, while the diode cross connected across the optoisolator limits the voltage the optoisolator sees when reverse biased.

FIGURE 4: Typical ring detect circuit
The end result of the circuit is that the optoisolator output turns on whenever a ring voltage is present, much as the ELK unit open collector output does.