In the world of theatre, it is often necessary to make telephones ring, and often in different cadences. This (UNFINISHED) article describes the design and construction of a four channel DMX512 controlled ringer.
Note: The Mk 2 will not be further developed or documented, as it'll be replaced by the Mk 3 that is in design at the moment. There were a few errors in the schematic of the Mk 2, and thus I feel the need to have another go and get it right. The Mk 3 will also incoporate a ringing supply generator, and thus be reproducible by others not in posession of the BT ringing supply Number 7.
Update: The redesign is delayed due to Parallax discontinuing the Spin Stamp; once the dust has settled on a replacement then the redesign will happen.
The ringer is microprocessor controlled, using a Parallax Propeller based chip, specifically the Spin Stamp, part number SSC1-IC, which is a 24 pin packaged processor with just the right amount of I/O for this project. Spin Stamp Data Sheet. The actual Propellor data sheet and free development software is available from the Parallax web site, http://www.parallax.com.
Unfortunately, and most annoyingly, Parallax have discontinued the particular part as used in this project as of about August 2012. Parallax - sometimes, you suck. There are many other Propellor chip options, but the Spin Stamp is highly cost and size effective.
The propeller chip is a great chip to use for this type of project; it's unusual architecture makes this sort of project a breeze.
This ringer does not actually generate the ringing voltage, as I have a genuine British ringing generator No. 7, which provides the (approx) 50VAC at 25Hz. However, it would not be difficult to add this to the ringer, and some notes on this are given later.
The table below describes the DMX channel rage requirements for the ringer; it is assumed that these would be coded into a personality into a moving light capable consoole, or perhaps as memories on a conventional desk.
|32||63||Stop Ringing, Battery Off|
|64||95||Ring UK, Battery off when answered|
|96||127||Ring USA, Battery off when answered|
|128||159||Ring User Defined, Battery off when answered|
|160||191||Ring UK, Battery on when answered|
|192||223||Ring USA, Battery on when answered|
|224||255||Ring User Defined, Battery on when answered|
"Battery" refers to the line being powered when not ringing. If someone picks up a phone while the battery is on, they will hear themselves speaking like on a normal phone. With battery off the phone appears to be dead.
The battery is always on while the phone is ringing to detect when the phone is picked up, but for theatrical use, its generally best that the battery is off, so as not to throw the actor.
When a phone is commanded to ring, it will ring until the phone is picked up. Once the handset is replaced, the phone will not ring again until the function changes. SO to ring the same way again (ie ring UK, then later ring UK) one must command something else, this is what No Change does.
Send a Stop Ringing command to stop a phone ringing before it is picked up.
The user cadence pattern is not yet imlemented in software.
Phones work with two differing types of signal, which are treated independently. One signal is DC, and the other is AC.
DC is used to monitor the on-hook / off-hook status of the phone, and when off-hook, the DC voltage is modulated with speech and tones. A real phone exchange supplies 48VDC to the line, but it is expected that there will be a lot of copper wire between the supply (the "Central battery") and the handset. Although the open circuit voltage may be 48V, when a phone is off-hook the voltage across it drops to maybe 8V.
An AC signal is used to operate the phone ringer.
Both these signals are on the line whilst the phone is ringing.
The line circuit is what actually connects the phone to power and also supervises that circuit.
The ringer uses a simplified supply system compared to a public exchange. Both the DC and AC supplies have a common ground point, shown as the ground symbol on the following diagram. CB+ is a 12V supply equivalent to he Central Battery of a real exchange. This is switched to the line by relay RLY1, and current limited to the line by the ballast resister R5. D1 prevents ringing current from returning to the CB+ supply.
RINGHOT is the ringing supply. It is switched to the line by relay RLY2 and coupled by C8, a 2.2uF 250V rated cap. (Note: the schematic incorrectly shows 0.22uF)
One of the most awkward part of the design of phone systems is, and has always been, what is called ring trip detection. This is the point when the user picks up a ringing phone, and the phone system has to detect this event has happened. What is required is to detect that a DC circuit has been made in the presence of the AC ringing current.
Traditionally, this has been done by relays of special construction. This relay has to detect that the phone is off-hook, by detecting the the passing of DC current. It also acts as a choke of several Henries to stop the superimposed speech modulations reaching the CB supply. For far more information on these principles, see the Links section below.
After trying several designs involving relays, a design using an opto-coupler was devised. This has proven to work well with the many types of telephones, ancient and modern, that this system has been tried with.
The optocoupler operates of a 5V supply, but the Propeller chip has 3.3V I/O, so R7 provide a pullup to 5V for the open collector opto, and then R8 provides a series resistance to match the 3.3V input of the Prop.
R6 is just a leak resistor to stop any static problems across the line during connection, taking no part in the operation.
The eight relays are driven by an octal darlington driver, a ULN2803, which has the ever-handy integrated back-emf supression diodes. As the ULN2803 is a low side switch, the relays are commoned to a +12V rail.
An external power supply is used. It is actually two power supplies in one; a BT No. 7 ringer providing the 50VAC 25Hz ringing current. One side of this supply is commoned to mains earth. The other supply is a transformer providing about 18VAC floating; this transformer ultimately supplies all utility, non-ringing power.
The utility supply is conventionally rectified by a bridge rectifier, and smoothed by a 2200uF electrolytic. This about 28VDC rail is then dropped to 12V by a Power Trends switching regulator that looks to all the world like a 7812, but without the heat. This main 12V rail supplies the relays, and then is clkeaned up for the 12V CB+ supply. THe main 12V rail is also fed to a conventional 7805 regulator to provice the 5V VCC line.
The Propellor Stamp chip has an on-board 3.3V regulator, that provides the required spply for the prop chip.
The No. 7 ringer operates by having a transformer fed by a rectifier so it only gets fed on one half cycle of the mains. A capacitor swings back to provide the other half cycle.
A PDF of the schematic on Sam Hallas's Telecomms site can be found here. A local copy of the important bit is here.
A Romanian radio amateur, Csaba Gajdos, yo5ofh has several telephone circuits, and one of which, "Telephone Ring Generator Using Small Power Transformer" (local copy of schematic). This circuit has a power stage that works in a very similar way to the No. 7 ring generator.
Rather than using a 556 to drive the switching MOSFET, it could be driven by a spare pin on the Prop. Using PMW (which the Prop chip can do very well) and a 12V supply to a 24V transformer, it should be possible to trim the output to about 50VAC. The selection of MOSFET and resistors around it is quite critical with only 3.3V drive, so an IFR510 as shown in this diagram is probably not workable.
For those in range of a Jaycar, I suspect that transformer with the catalogue number MM-2018 would do nicely, but I have yet to try it.
(Csaba Gajdos actually lives in Transylvania, and everyone in theatre must be familiar with Rocky Horror, if not (as am I) and outright fan, so having this link is very cool!)
The software is written in Spin, a propellor specific language. Spin is quite an unusual language, but it is well usable with a bit of getting used to. It is worth persevering with, as Spin works well on the Propellor chip.
The Propellor chip has eight "cogs", each of which is the equivalent of a processor in some other sort of chip such as a PIC. However, the Propellor has no peripheral chips like UARTs, one makes a peripheral in software using a cog.
For this four channel phone ringer, a cog is used for DMX512 reception, and four cogs are used for driving phones, one cog per line. Thus there is just one function in the code to drive a line, and the four cogs operate like a multi-threaded application on a bigger chip with comprehensive OS support for threads. Three cogs are left over, and a couple will be used for the user interface driving a LCD display with a single button interface. The prime purpose will be to set the DMX start address, which is currently coded into the program.
This is a terribly brief introduction to the software.
To make this software work on an arbitrary system:
A higher res version: here.
It is important to realise that much to do with telephony hasn't changed significantly since Bell's day, and the important telephone innovations were made a very long time ago. Nothing much happened for decades until the electronics revolution. Thus olde books tell the way that it works, and the bible on how telephones and related equipment is "Telephony; a detailed exposition of the telephone exchange systems of the British post office" by James Atkinson, which is itself a reboot of an earlier work by Herbert Procter (1875-1943).
The ePanorama.net Telephone technology page containes many links and lots of information on telephone systems in general.
The Mk I ringer (not that it was called that at the time, of course) was limited in only having one cadence (the British ring) and it had become unreliable. Without a schematic, fault finding would be hard.
Farewell Mk I, you served me well for decades beyond the show you were built for.