Driving antique phone bell

I recently received an antique phone, and would like to use my Arduino to make the bell ring. From research, I found that the phone company makes the bell ring by sending a 90V PtP AC signal at 20Hz. Is there a simple way to achieve this by using for example a FET driven by one of the Arduino’s digital output pins, and connecting that to a transformer with fewer windings on the Arduino side, and connecting the windings on the other side to the bell terminals as shown in the picture?

The second circuit down in the link shows a simple circuit using a timer chip driving a n channel mosfet which is driving a step up transformer to develop the the ring voltage required. You could just change the mosfet to a logic level mosfet and drive it's gate with a digital output pin outputing a 20hz square wave.


You can search for inverter circuits, like this one: http://www.kerrywong.com/2010/03/12/a-power-inverter-with-arduino-pulse-source/

Thanks for all the input! The Sparkfun example looks like the best documented, and I’ll learn a lot from it, though the inverter solutions have lower parts counts…

One question, in the Sparkfun example schematic, they show Pin3 on the Stepup converter having a polarized 1000pF capacitor

I thought it was an error, but the datasheet shows two circuits: one with a nonpolarized cap, one with…

Am I supposed to use a regular ceramic cap in that spot?

I couldn't get it:

The boost converter works by comparing the voltage at pin 5 to an internal reference of 1.25V. Since there's no current in the line to pin 5 (it's a comparator input, after all), you can back out what the output voltage is by Ohm's Law...60 volts! Well, ours won't do that, but it does go to about 54V without a load.

1.25 x 48 = 60 V , so this is correct. The same time maximum voltage for boost IC:

Switch Collector Voltage VC(switch) 40 Vdc

And SN75441 has even lower maximum voltage:

The SN754410 is a quadruple high-current half-H driver designed to provide bidirectional drive currents up to 1 A at voltages from 4.5 V to 36 V.

I'm misreading something here?

I thought it was an error, but the datasheet shows two circuits: one with a nonpolarized cap, one with…

Am I supposed to use a regular ceramic cap in that spot?

A capacitor of that value would normally be non polarized. If for some reason you had to use a polarized cap then you would observe the polarity as shown. I would use a mica cap in that part of the circuit.

I read this tread…and to connect the Ardiuno to the telephone line DIRECTELY is NUT !!! :astonished:

Telephone line is compose of two element. DC ans AC. No ring, a -48 V is present. When ringging, a 90 V ac @ 20 Hz is created. Just the site in retrolefty. Here a site to interface the telephone line. http://www.epanorama.net/circuits/telephone_ringer.html Just look it up.

To know what type a circuit a telephone ringer is, I “reversed” engineered a few phones ( take them apart – All certified by Industry Canada < — Goverment Department ) The circuit include : 1 fuse, a capacitor mylar ( NON polorize ) of 470 uF @ 250 V , a power resistor @ 2 Watt, 2 zener diode of 20 V @ 1 watt ( not so sure ) , 1 rectified diode rated @ 200 V, and a Varactor rated @ 250 V and the use of opto-coupler.

I am making a telephone call counter project, and my design follow the guideline to connect to the phone line. You DONT want the Tel company to sue you or the FED after you.

You can use the web site sudgested by retrolefty to test your project.


Than the simulated circuit of the site sudgested by retrolefty should work.

Capacitor at pin 3 define a frequency for boost up converter, in data sheet downloaded from SparkFun there is a figure 2 that help to select a cap. " Output Switch On?Off Time versus Oscillator Timing Capacitor" f = 1 / (t-on + t-off). IMHO, there is a typo on figure 12, capacitor should be non polarized type, ceramic is o'k.

It's not related to cap C2, that in series with bell coil, for low frequency resonance.

Here a code to simulate a telephone ring. I use a SPST switch to be “on-Hook” or “off-Hook” I use this program to test my Telephone Call Counter project. The output pin goe to the opto-coupler LED instead of a regular LED. After testing, I will connect the telephone ringer circuit.

As the PO case, he can use it to replace the 555 circuit. Just an Idea.

Here the code:

Size = 1258

This program simulate a telephone ring. It connect Digital pin 13
to an opto-coupler ( LED side ) and use Digital pin 12 as an On-Hook 

Part list :

4N35 Optocoupler or different type
470 ohms resistor ( between pin 13 and the anode LED side of the opto-coupler )
10 K resistor Part of the switch circuit
1 push-on switch or any ON-OFF switch connect to pin 12

Bear in mind to connect the cathode of the LED to the Arduino GND 
Not the other side ( transistor side ) of the optocoupler.

Program by Serge J Desjardins, Toronto, Ontario, Canada 


boolean data = 0; // Init data value to zero

void setup()
// seting up Digital pin 13 OUT and Digital pin  12 IN

  pinMode (11, OUTPUT);
  pinMode (12, INPUT);

void loop()
  data= digitalRead(12);  // Check the switch ON = 1 or OFF = 0
  delay (50); // debounce the switch
  if (data == HIGH ) // the ON-Hook mode
    pulsing ();  // The ringing subroutine
    delay (4000); // the 4 second delay
    digitalWrite (11, LOW); // the OFF-Hook mode
    delay (2000);

void pulsing()
  The ringing subroutine simulate a 20 Hz signal ( 0.05 second )
 so 0.025 on-time and 0.025 off-time for a duration of 2 second 
 ( is delay (2000) therefor 2000 divide by 50 equal 40 )  

 for ( int count=0; count <=40; count++)
   digitalWrite (11,HIGH);
   delay (25);
   digitalWrite (11, LOW);
   delay (25);