One late night many decades ago, I chanced upon a technical description of the Touch-Tone system. The book I was reading had an explanation of how each key on a telephone sends a combination of two tones down the wire, and what’s more, it listed the seven audio frequencies needed for the standard 12-key dial pad. I gazed over at my Commodore 64, and inspiration hit — if I can use two of the C64’s three audio channels to generate the dual tones, I bet I can dial the phone! I sprang out of bed and started pecking out a Basic program, and in the wee hours I finally had it generating the recognizable Touch-Tones of my girlfriend’s phone number. I held the mouthpiece of my phone handset up to the speaker of my monitor, started the program, and put the receiver to my ear to hear her phone ringing! Her parents were none too impressed with my accomplishment since it came at 4:00 AM, but I was pretty jazzed about it.
Since that fateful night I’ve always wondered about how the Touch-Tone system worked, and in delving into the topic I discovered that it’s part of a much broader field of control technology called in-band signaling, or the use of audible or sub-audible signals to control an audio or video transmission. It’s pretty interesting stuff, even when it’s not used to inadvertently prank call someone in the middle of the night.
Two Tones, No Waiting
The Touch-Tone system that I was exploring that night was AT&T’s attempt to update the pulse dialing system that had dominated the phone network pretty much from its inception. Pulse dialing interrupts the loop continuity to create a stream of pulses that encodes each digit dialed. While robust and reliable, pulses weren’t terribly useful for much other than stepping electromechanical contacts in the central office and making a direct connection between two subscribers. Long distance calls required human operators to connect calls, and none of the features we now alternately take for granted or curse out loud, like voice mail or automated voice response systems, were even possible.
DTMF was developed to cure these ills and open up a wide range of potentially lucrative services. AT&T had been working on push button dialing since the early 1940s, first using mechanical systems that used vibrating reeds. World War II interrupted much of what Bell Labs had been working on, but the invention of the transistor once the war was over paved the way for the compact electronics needed to produce oscillators small enough to fit into a telephone set.
Bell Labs conducted exhaustive research to determine the best methods for tone dialing. They settled on a DTMF system for the control tones, and human factors research led the engineers to a 12-key arrangement for the 10 needed digits. The two extra keys were labeled with the now familiar asterisk (“star”) and hash mark (“pound sign”). Each key would be encoded by two audio tones, one for the row in which the key was located, and one for the column. The four row tones were the lower-pitched tones, from 697 Hz to 941 Hz, while the three columns ranged from 1209 Hz to 1477 Hz. A fourth column tone of 1633 Hz was also described by the standard, allowing for a 16-key dial pad. Few of these were ever fielded for the consumer market, but having the ability to encode 16 characters would prove important to the fledgling computer industry.
As with all Bell Labs projects, the DTMF spec was carefully crafted. The audio tones for the low-group and high-group were carefully chosen to avoid harmonics that might interfere with decoding the tones. The total acoustic energy between the two tones was carefully balanced, and strict minimum timing for digit and inter-digit periods were defined, especially important since as an in-band signaling scheme, DTMF decoding can’t be triggered by a human voice on the same channel and has to be tolerant of the other tones that might be present, like busy tones or dial tones.
Encoding DTMF
The original Touch-Tone dial pad was a robustly engineered affair, built to be as simple and reliable as possible. While we’ve got DTMF chips to take care of generating tones today, Western Electric, the manufacturing arm of AT&T, had only the simplest of components to choose from. They built their classic 35-Type station dial around a single-transistor oscillator; each key pressed would switch two different tapped inductors into the circuit to produce the dual-tone audio signal. Other switches controlled power to the oscillator circuit as well as attenuating the “side tone” heard in the telephone earpiece, since the tones sent down the line had to be uncomfortably loud for the receiver to decode them.
Many versions of the 35-Type station dial were fielded. The classic 12-key pad with the square gray keys familiar to readers of a certain vintage is perhaps the most recognizable, as is the hardened version deployed in pay phones — remember pay phones? As the technology progressed 35-type dials were even hooked to magnetic card stripe readers, so that callers could simply swipe a credit card to pay for a call. But the basic encoding circuit remained very much the same.
Decoding DTMF
On the receiving side, DTMF tones are easy to decode — at least now. We’ve got DSP chips to do the job all in one package, or we could roll a simple circuit from phase-locked loops. But how did the phone company do it back in the 1960s?
Surprisingly, finding solid information on the original DTMF decoding circuits is difficult. Most of the original Bell Labs journal articles are behind paywalls, so digging into the primary literature is tough. I did manage to find a few references to the original decoding circuitry being bulky and expensive arrays of bandpass filters, which the indispensable Steve Ciarcia discussed briefly in Ciarcia’s Circuit Cellar, Volume 3 from 1982. In the same article, which was the construction of a home automation system using DTMF control, Ciarcia uses over 100 separate components to build a full-featured decoder based on the 567 tone decoder chip. Clearly, before the advent of DSP chips and hardware implementations of the Goertzel algorithm, decoding DTMF was a much harder task than encoding, but it only needed to be done at the switchboard.
DTMF Is Everywhere
It’s hard to know if the original engineers that designed the DTMF system for in-band signaling really knew what they were starting. They were searching for a more flexible user interface to the telephone network, one that would simplify and automate the business of making connections and enable features like Call Waiting and Call Forwarding that people would pay dearly for. True, their system gave us the hated “voice mail jail,” but DTMF sees in-band duty far beyond the original intentions of Bell Labs, from the control of amateur radio repeaters to signaling local TV stations when to switch on and off their affiliate network feeds.
We’ll be exploring more in-band signaling techniques in coming installments of this series.
I remember certain keypads would play only the row/column tone if you pressed two keys in the same row/column at the same time. Figured out how to play the Close Encounters tones on a touch-tone phone and phreaked out my friends (cough, I’m sorry).
This sounds like a good use for old Phreaking equipment, a kind of pre-chiptune composition.
That keypad is a triumph of classic electronics and ingenuity. Like many other things, this simple elegance is being lost with the relentless march of lithography.
Remember the call back code? you typed in a phone number or something, hung up the phone two or three times within a certain time period, and the phone you dialed from would ring back? think it was some type of test used by techs to test a line or phone.
We had fun with that one.
I remember there was 410-222-2222, which would read back the number you called from. There was another, I don’t remember what it was – something like 511, a 3-digit code – that would shut off the battery to the line for 5 minutes. Really evil people would use this on payphones when there was a line behind them. “It worked just fine for me, weird.”
Try MCI’s 1-800-444-4444. It reads back your real number (ANI) and not your Caller ID which could be faked with SpoofCall.
I remember back in the late 70’s when our local 2m repeater got upgrades for a phone patch. At the time, it did require the 4 additional keys, A,B,C, and D, so that only a few people, those with the true 16 keypad touch tone interface, could dial out. Due this one little feature, when I got my driver’s license, I didn’t have a curfew as I could always call home and tell the folks where I was, all to the chagrins of the elders on frequency hehehe.
So one source says that the frequencies in DTMF are carefully chosen to be a ratio of 21/19.
But … the difference between 21/19 and exp(0.1) is so small I really have to wonder.
I believe the actual chosen ratio was the 7th root of 2 (1.1041+). That’s very close to 21/19. My memory of this goes back some 50 years, so YMMV.
Wouldn’t DTMF make for a cool NUMBERS STATION in-audio-band transceiver over a 2-way radio or a telephone. Design an Arduino to do Text-to-DTMF and vice versa. You can even pre-encrypt it before sending. It would sound like a person going nuts pressing the TT pad but symmetrically.
You could use the 16 DTMF tones to represent hex 0-F, which would mean only 2 DTMF tones per byte.
i actually did that in processing (a superset of libraries in java)
didnt actually have the time and energy to spend on goertzel so i had to settle to some builtin FFT and experimentally found the bins i need to set thresholds upon.
i managed to get about 2 characters (4 dtmf baud) per second.
needles to say, noise on the line kinda makes it bork, and if it misses one of the two dtmf keys per letter, it gets thrown out of sync in my version.
i am pretty sure i can do beter with goertzel, but the libraries i used make it hard to actually get to the sampled audio, and i really cant be bothered….
@Nathanael Dale Ries – Ideally you would have to send two TT (DTMF) keys per letter or numeric. Like A would be Zero and then One and Z would be TWO and then SIX.Numerics would be TWO and then SEVEN for numeric ZERO up to THREE and then SEVEN for NINE. Space could be THREE and EIGHT. Unlike Enigma machine you would not have to spell out numbers nor use an X for spaces (or delimiter) as the byte is expected to be two characters for each alphanumeric. But that gets problematic on noisy phone lines or 2-way radio if you miss a TT key sound. Maybe some audio filtering could be used as well. VOIP is very problematic too due to intermittent poor audio response and intermittent echos. The faster the DTMF encoder can send and the DTMF decoder can decode the better IMO. Less window for random QRM/QRN to intermittently interfere with DTMF signal.
One problem is finding a small portable 2-way acoustic coupler still extant. This would be used on the now rare payphone which has no RJ12 jack unless you can find a handicap version at the local mall.And you also don’t want to be using this thing in a public area as it sounds really like something that seems like nosy people should pay attention to if you aren’t an AT&T technician or something seemingly authorized to send loud DTMF sequences into a payphone. Brings back memories of Kevin Mitnick and such. :-)
http://www.upl.co/uploads/threedayscondorskills1504724534.jpg
Or Robert Redford trying to run a ‘cheesebox’ rig…
Why should it be suspicious to send DTMF tones down the phone line? I know that classic answering machines (with the tapes) are grossly outdated, but at their time most did include a DTMF transmitter for remote control and remote listen to voice messages. Here in Europe we had rotary telephones much longer than in USA.
@Martin – grüße wie gehts?
Here in USA we get paranoid when something doesn’t appear to be normal out in the public space. A guy running a long string of touch tones at high speed into a acoustic coupler at the local shopping mall would appear suspicious at best. Yes entering one or two tones to access your answering machine or accessing an automated attendant would appear normal. However, I’m envisioning a terminal that sounds like something out of a AT&T C.O. room with all line monitors active on loudspeaker. You’d have to know who Kevin Mitnick is to appreciate the humor there.
The picture above is Robert Redford in the 1975 movie 3 Days of the Condor in where he’s acting like a “Captain Crunch” wannabe. He somehow cross connects several lines at a NYNEX C.O. in Manhattan NYC and calls CIA field office WTC and he appears to be calling from all over the world. That was an old 1930’s ‘bookie’ telephone trick called “cheesboxing”. Later people like Mitnick developed it into something called a “blue box” or some color (I forget). Basically a telephone call diverter. Mitnick is still around doing consultations and stuff. He’s on TWITTER right now talking about bad weather and Mexican earthquakes…
https://en.wikipedia.org/wiki/Kevin_Mitnick
I hadn’t ever really thought about the 16 key pads before, but would be a convenient and relatively fast (for the time) way of sending data octects over the phone system back in the day. I wonder if that is how the earliest modems might have encoded/transmitted data?
Early modems used frequency shift keying to send one bit at a time, probably to reduce the complexity of the encoder and decoder.
In the burglar alarm industry Ademco Fast Format used DTMF to send a four digit site identifier and nine digits of alarm status. I have spent years of my life listening to the output while designing transmitters and receivers for the industry.
‘ … . The two extra keys were labeled with the now familiar asterisk (“star”) and hash mark (“pound sign”).” See ‘octothorpe’
I seem to recall that some of the early touch tone phones omitted the * and #. It seemed like a sensible thing at the time as no one had any use for them until the ’80s.
A touch tone phone I noticed in an episode of Mad Men only had the ten numeric keys. I had forgotten about that until I saw it on the show!
Unless you heard it dial, it was probably a push-button pulse-dial phone.
Before the 80ies here in Austria no one had any use for any of the other 10 keys too. The first “digital” central offices (with touch tone dialing) were opened 1986 and the last “analog” (electromechanical) subscriber lines were converted end of 1999. In Germany this was some years earlier
When Bell Labs developed TT in the late 1940’s the tones had to sound for 50 milliseconds to be recognized. The new “dial” would first be used by people familiar with pecking numbers into a calculator, fast. There is memory in even a mechanical calculator but not in TT dialing. 50 milliseconds is a lot longer than quick digitation on a number pad.
Sooooo, they handicapped the user by flipping the 789 and the 123 rows, keeping the screwed up relationship of 9 being closer to 0 than 1 that is on rotary dials, but not in math. Thereby they along with rulers marked with 1 in the zeroth inch or cm. handicapped generations of math encumbered students. Quite a mess as the “Bell handicap” number keyboard (dial) is still with us. Check the difference in the calculator app on your smartphone and it’s “dial” mode. Shouldn’t be at all.
DTMF = Dial The M_ _ _ _ _ F_ _ _ _ _
LOL! Real funny. I did accident swear “MF” at my 8th year and my teacher reminded me not to say that again.
I remember when HBO used touchtones for something, still remember the sequence too. I have vb code that can generate touch tones. Aside from ham radio and voice mail systems, there doesn’t seem to be a lot of other uses for it that I can think of off the top of my head.
Wow — you’ve tweaked a memory c.1986 of endless library searches and dumpster diving in a quest to learn as much as possible about telephony, switching systems in particular. Something rings a bell (ha ha) that the DMS systems that were being transitioned to weren’t very “open” … I was lucky enough to still be on a crossbar switch so imagine my delight when a MS BASIC for Mac program I whipped together to send 2600 Hz then KP + 151 + ST in MF resulted in an inbound operator answering (if I remember correctly). 2 3/4 hours later a police officer was at my front door with a couple of representatives from the local telco who “wanted to find out what was going on” at my place. I ended up working for them but my books & binders were never returned. Shame, they’d make interesting reading now.
Picked up “Basic Telephone Switching Systems” by David Talley in the early 70s, and it was ‘borrowed’ by a friend before I even read it! About a decade later I was helping him move and spotted my book. “Oh, is that yours?” Book was set aside and then forgotten when I left. Sometimes the universe doesn’t want you to know certain things. Maybe for the best, I had already experienced the thrill of using a ‘black box’ and amazed friends by having the pay phone return their coins when they hung up after calling me. Ah, the joys of youth.
Why two tones rather than one? Seems like it would be even easier to recognize a single tone.
Two tones are less likely to be generated by background noises and line interference.
A full 16-key pad would need 16 distinct tones. By using one tone for each row and one for each column, only eight tones are needed. So, it’s more efficient. For the ten or twelve key pad, seven tones are used, so the savings isn’t as much, but the design was for a 16-key system, which gives a 50% savings in the number of tones.
> Long distance calls required human operators to connect calls
Direct Distance Dialing (customer-dialed long distance calls, with no operator assistance) was available for 12 years before touch-tone dialing was first implemented. There is nothing about pulse signalling that makes customer-dialed long distance calls impossible, and nothing about DTMF dialing inherently makes them easier.
” Most of the original Bell Labs journal articles are behind paywalls, so digging into the primary literature is tough. ”
University library. The older the better.
Wow, HaD picked up on the Goertzel Algorithm! Very good HaD! I fully expected to comment here and fill in the blanks. But you got it this time HaD. Kudos…
I am surprised that there was no mention of phone phreaking as that was the “original” hacker.
Our phone networks were different here. They used multi-frequency signaling internally long before they used DTMF externally.
Also because our vast distances we more often used suppressed carrier transmission (hierarchical SSB) which meant tones from external sources would have caused problems due to frequency drift so we ONLY used out of band signalling that was exclusively internal and couldn’t be phreaked.
This brings back memories of that great hacker movie “Three days of the condor”. I must watch that again.
Without giving too much away, the protagonist was what I’d call a broad-spectrum hacker. Lots of interests in different fields.
That video :) demonstrating the telephone of things – turning on and off stuff via telephone!
Build your own blue box:
http://www.nutsvolts.com/uploads/magazine_downloads/phreak_out.zip
Great story, love it. Bit far-fetched at times though, I mean ‘girlfriend’, really?
HA ha ha ha ha ha
Many years ago a flashy C64 phreaking program made its way through a local pirate house and my friend Allan Pilgrim snagged a copy even through he had no interest in such things. He showed it to a journalist by the name of Tim Onosko and Tim just happened to be about to call somebody when he got distracted and bounced out a 2600Hz and other tones on the C64. My friend Allan looked at him with great concern knowing those tones just dialed god-knows-who in a less-than-kosher way. Allan informed him of the crime-in-progress and quickly slammed the receiver down in the cradle.
I remember using a portable cassette recorder to record the touch tones of phone numbers I dialed most often, first speaking the name of the contact, pausing for a second, then typing out the numbers on the keypad. This way I could “quickly” do an audio lookup of the number I wanted to call, press pause, then place the handset near the speaker of the the cassette recorder to “audibly” dial the number. It was like carrying an electronic address book that was not set up in alphabetical order. It might have been a little slower than looking up the number in an address book, but at the time it actually impressed a lot of friends that never thought about doing something like that, or that it was even possible.