Ringer circuit for vintage telephone bells.

A number of these vintage telephone bells have been turning up in online auctions here. These have been refurbished and look quite nice, and the electrical and mechanical parts are original even with cotton insulated copper wire coils.

Bells.jpg

So I bought two of these and designed and made a ringer circuit which generates the "traditional" ring pattern, so I could power them from either a USB charger or a 6 volt battery pack. It produces a 36 volt 20 Hz "square" AC which is ample for maximum volume

Circuit2.jpg

In principle, it is quite simple. The main elements are (a) a boost converter which can produce 36 volts from a 5 volt input, (b) an H bridge driver to generate the pseudo AC and (c) an Attiny841 to drive it all.

Since I intend it to be powered by batteries in conjuncion with a PIR or other movement detector, I designed it all for low power consumption. For example, the power to the boost converter and the H bridge is switched via a mosfet load switch which I have been experimenting with (TPS27801) and the ATtiny841 (which I have also been experimenting with) goes into sleep mode.

There is considerable scope for simplification if you are not interested in running it from batteries and low power is not an issue. For example, you can drop the load switch and connect the boost converter and the H bridge to Vcc directly and you can strip the sleep mode code from the sketch. If you use an alternative processor, say an ATtiny85 or a Uno, you'll have to review the pin allocation and maybe the setup of the pin change interrupt for the push button.

There are a number of published projects, some even integrating a vintage telephone with a mobile network, which may provide an alternative solution to this one.

The attached PDF file contains the schematic.

Errata:
C2 in the schematic should be between U4 pin 6 and U4 pin 2. Not as shown between U6 pin 6 and GND.

Bells.jpg

Circuit2.jpg

ringer_V0_01.pdf (53.3 KB)

Ringer_v1_01.ino (3.52 KB)

It looks like you can simplify the whole thing then.
The ICSP is for programming the ATTINY841 using an external programmer because I had no bootloader installed.
The RX and TX pins are for connecting a serial console for debugging only.
I'm not sure about the three wires on your old phone. If there is a green and red, then try that pair first. A phone should work with 2 wires only. However, if there are more than one on the same line, additional wires suppress the nuisance ringing on the others during dialling out (as far as I know). Otherwise maybe a search on "old telephone wiring colours".

Hi.

I wonder if its possible to resurrect this old post?
I'm an artist working on a piece for an exhibition where I'm planning to ring an old phone from an arduino as above.

It will be plugged in and so doesn't require the same low-power sleep concerns as above - and so I was thinking a simpler version of the above would make sense.

As such I thought I'd have a boost convertor connected to a 5Vdc Supply as well as VCC1 of the HBridge.
And that I'd drive the 1A&2A of the HBridge from the arduino.

What I'm wondering about is how to size the boost convertor - is there a way to determine the current needed?
On the HBridge in your schematic there are caps C1 & C2 across the VCC1 & VCC2 to ground - what are they for ?

I've drawn a simplifed version of your schematic here.

Thanks a million for the help.

That will depend on the ringer winding impedance, and needs to be measured.

Okay - great. I have two phones coming and I'll work that out.

In the circuit design above the voltage boost is 5V to 36V - am I right to assume that operates like +36V and -36V as far as the bell is concerned and so a total 72V difference.

I could run the arduino from a supply up to 12V and so could presumable have a large Vout of the boost convertor if so?

Have never used a boost convertor so not sure how they work.
Thanks

A boost converter increases the voltage, with some loss of power as heat (say, 15%).

You can work out current and voltage relationships by assuming power (P = voltage x current) in, minus the loss, is equal to power out. If you multiply the voltage by 7 (5V to 35V), the ratio of the input current to output current is 7/0.85 = 8.3.

The current draw from the source can be estimated from these formulas:

Pout = 0.85*Pin

Vout*Iout = 0.85*Vin*Iin

The H-bridge effectively doubles the converter voltage, as it can drive the bell with both positive and negative polarity.

1 Like

Before you design a monster, get a 24 VAC door bell transformer and see if your bell is loud enough at 24 VAC. If not, get a second transformer and wire the secondary windings in series to get 48 volts and try that. Worked years ago to play with the bells.

OKay great. So for example if my bell is drawing 0.5a (at the VCC2 into the HBridge) then I would need a 4.15a 5V supply (in the case of 15% loss above.

You should not operate devices at the maximum load, so you need a 5V supply that can provide significantly more than 4.15A (25 to 30 watts minimum).

You will also need a boost converter that can easily handle that much input current. Pololu has a good selection of boost converters, and they specify the input current rating.

As @Paul_KD7HB suggests above, before you build a monster, do some testing!

The capacitors C1 and C2 on the 5v and high voltage power rails are for decoupling and should be located as close as possible to the chip(s). This is to protect against the considerable electrical noise such a circuit will generate.
The boost converter I used is something like: DC to DC Adjustable Step-up Boost Power Converter Module XL6009 Replace LM2577 | eBay but anything with a similar specification should do.
In a telephone, the bell is wired in series with a ~2uF capacitor to prevent the bell presenting a DC load to the line so it is not so hard on the boost converter. The H bridge simply swaps the polarity of the high voltage power rails to create a pseudo AC supply. You can use any 5 volt Arduino here (say a Uno V3) if you strip the sleep routines and the pin change interrupt out of the code since these use direct register manipulation and may restrict the compatibility with other boards.
I'd say, since the components are so cheap, just put something together and test it.

Ah great. My electronic ability stretches (almost) as far as understanding where the signal and the power is going but stuff like this is great to know.
Out of interest is there a particular place where the noise would manifest? On the "AC" signal to the bell or ?

Ah great - that's really helpful - I was looking at stuff like this - https://ie.rs-online.com/web/c/?searchTerm=+LM2577 - which is just the chip by the looks of it so I'll get that module instead.

Yeah great - I've a some code I used for testing the rest of the setup that will do the interfacing with the phone buttons and some other gear so I'll just borrow the output signal for the H-Bridge!

Also yes - for sure - thanks.
That said I've no idea yet what the actual power required for the bell is so will start working that out when I get the phones next week.

Any ballpark guesses out there?
Thanks
Tom

If my memory is working you need about a 20 Hz signal at around 100V. It was a square wave in the days. They also used some "tuned" bells that worked on a different frequency. This allowed selective ringing on a party line. Rings were normally the Ring and Tip lines but as party lines grew they started ringing to the ground as well.

The phone line should be about 600 Ohms. When the phone was picked up that 'shorted' out the ringer and caused it to shut down. That phone is actually a two circuit device where they used a network to combined to a single pair of wires and at the CO it was switched back to two circuits. One circuit was talk, the other receive. That square brick with lots of screws is the network. That brick controlled the back talk which is what you could hear from your carbon microphone.

I hope this helps it has been a long time. If you want to talk on the phones put about 3V in series with them IE the phones connect together and a battery is inserted in only 1 line so + goes to one phone and - goes to the other. We use to have 2 very large 1.5V batteries to run the phones.

gilshultz
You are forgetting that the phones used a cranked magneto to ring the bells on a single circuit and the number of rings were different for each family on the party line!

Yes ours was a long and short on 17. We had one with a 90V battery and no crank but our neighbors had a crank (magneto) and you could get a nice zap from one of those.

I'm not sure what you mean here. It appears that you want to do more than simply generare a ring tone. Detecting the telephone is off hook, detecting dial pulses or dtmf from push buttons starts getting non-trivial.
I did publish a basic battery powered 2 way intercom using 2 old dial telephones here: Intercom using two old dial telephones but I wouldn't recommend it unless to someone who could do some trouble shooting.

EDIT

The old European phones I have played with could produce a satisfactory ring tone even at only 24 volts AC but a higher frequency, say 50Hz however not all phones may be so tolerant. Check the ability to ring your own phones at an early stage of the project.

Hello everyone.

Thanks for all the advice.

Yeah - my understanding was this was the Irish ringing pattern.

I do remember this on the two phones connecting my grandmothers shop and house.

Yeah - the plan is that the phone will ring for a set length of time and if someone answers it it will play back a piece of audio using an audio player.
I've already tested another version that used the hook and dialing to detect a user and select an audio track that was played back - but that didn't have a ring element and so that's what I was referring to.

The basic logic is -

Using RTC determine time to ring phone
Stop ring on hook (or timeout)
Play audio

You are packing quite a lot into the project and it is good that you can add functionality and test it incrementally. Using the alarm function of an RTC is one way of initiating an action but you also have to think about the user interface for specifying the alarm schedule.
The ring pattern is not determined by the frequency, more by the pauses. That ringer project implements a GPO (British General Post Office) ring pattern. Something like dring 500ms pause dring 4s pause . . . Repeat

Anyway, it sounds like an interesting project and good luck with it.

Thanks - yeah - it'll be nice to get the bell working and see how to combine it with the rest.
I'm going to use and arduino WiFI as this uses the wifi to set the RTC.
The alarm schedule will be set in advance and repeat daily - the phones (two of them actually) will ring a gallery at specified times with two alternate audio messages on them when picked up.
Thats the plan anyway. I'll have to experiment with the ring pattern once I get the phones next week.

Again - thanks for all the help - has been really useful.
T