Pulse dial to DTMF converter for rotary dial telephones demo
HTML-код
- Опубликовано: 9 сен 2024
- A demo of a pulse dialing to DTMF ATTINY85-based converter that is connected inside an old rotary phone. It allows rotary dial phones to be used on moderm PBXs and VOIP systems. Access to functions requiring DTMF, like banking and IVR systems is enabled.
Construction details, source C code, and pre-compiled Intel hex programming files for the ATTINY85 are on Github at:
github.com/don...
Blue box version adds blue box functionality:
github.com/don...
Amazing engineering you’ve done there. I’ve got a beautiful Call Director that I’ve gutted for some kind of home-use project. This looks great!
Amazing. I played with phones more than I wanna admit. I got in trouble a lot but find them fascinating. I have that phone. 50 cents at a tag sale
Nice! I just stumbled upon this video when I looked up “DTMF tones” into RUclips. I was born in 2002 and through the internet and television, I figured out how a rotary phone actually worked! I looked at this video and just learned something! I may not know what you’re talking about most of the time, but this was fun to watch!
Edit: What does the chip do, exactly? I kinda understand that, one feature, is so you can redial without having to slide the numbers all over again.
i was also born in 2002!
@@user-pr9lw9de8j The chip converts te DC current pulses generated by the telephone dial to the corresponding DTMF or Touch Tone digit. It also has a redial function, a few memories, and adjustable parameters. It can be programed to "hot dial" a pre-programmed number immediately when the phone goes off-hook.
I like the sound of the beeps and the features.
super great. Enjoyable and fascinating, coming from computer programmer just kinda interesting to see all this stuff for sure. Thanks for putting together
I was wondering of you could tell me how you came up with that cool vintage dial tone from your obitalk ata
This is awesome!
Amazing
How did you get your ATA to generate the old style dial tone? I have a grandstream HT802 and I can change the dial tone but I’m not sure what the correct frequencies are and syntax to use.
Here is a list of the tones, including the old modulated tones (not simply an addition of two tones, like modern tones). Not all ATAs can do the modulated tones. An "x" between tones means the first tone is modulated by the second. A "+" between tones indicate the two tones are summed. Not sure of the Grandstream syntax.
Modulated (Old) Low Tone (600x120) - Used for Dial Tone and Busy at modern cadences
Modulated (Old) Ringing 1 (420x40)
Modulated (Old) Ringing 2 (500x40)
Old High Tone (500)
Precise Dial Tone (350+440)
Precise Ringing (440+480)
Precise Low Tone (480+620)
Receiver Off-Hook (ROH) tone (1400+2060+2450+2600)
New High Tone (480)
Test Tone (1004)
UK Old Dial Tone (400x33)
UK Old Ringing (400x133)
UK Precise Dial Tone (350+450)
UK Precise Ringing (400+450)
UK Equipment Engaged Tone/Congestion/Number Unavailable tone (400)
Crybaby (US Old Vacant Number) (200 to 400 to 200 at 1 Hz, interrupted every 6 seconds for 500ms)
What a simple solution, especially with the added functionality. Congratulations.
I have a 1939 WE302 that worked fine at home for decades until recently but now it can no longer dial out, I assume because of telco upgrades to the local loop. Though we mostly use it to pickup calls in the living room, I really want to be able to dial out. I love the sound and feel of the older
clickity click rotary dials.
So I want to implement your project but have one question, can the 4Mhz ceramic resonator can be replaced by a 4Mhz crystal and if so, would the Attiny85 fuse settings remain same? I'm retired overseas where it's harder to find the ceramic resonator.
Many thanks.
The fuses should be the same, but you will need to add the loading capacitors from each crystal leg to ground. The resonators I use have internal loading capacitors, so only require connection to the two oscillator pins plus ground (three terminals).
Hi, Don.
I hope you still monitor comments for this project, as I do not know how to get in touch with you for questions.
After reviewing your C code for this project, I am wondering how you prevent the Hotline feature from sending DTMF when the user picks up the handset to answer an incoming call?
Thanks and best regards, Ed.
I looked at implementing some way of suppressing dialing on a received call, but the ATTINY85 and circuit can only distinguish on hook/off hook, dial on/off normal and dial pulse contacts open/closed. Short answer is, the circuit will happily autodial after picking up an incoming call. I figured it did not matter much for hotline use. I just disconnect the bell for most hotline use cases.
@@df9999999999 Thank you for your quick reply, Don.
I have an idea to stop the Hotline feature from sending the number after going off-hook. As soon the user starts dialling a number (before the hotline timeout), the "DIAL" pin will be activated, and PCINT0 will wake the processor (instead of the timeout). So if the wakeup from sleep is due to starting to dial a digit instead of the timeout, then the HL number will not be sent. It turns out that, for the two dials that I have (for a model 500 C/D and an Automatic Electric Type 40 "Monophone"), the user can turn the dial only slightly (not quite to the "1") and the "DIAL" switch will close, but subsequent release of the dial will not cause a pulse. If this is true of all dials, then the user can just turn the dial slightly after answering an incoming call to prevent the HL number from going out. If the user wants to MAKE a call to a number different than the HL number, then just start dialling immediately after picking up the handset, and the HL number will not be sent. (This all assumes that the HL delay is long enough to allow the user to interrupt it with the dial.) I would use the watchdog timeout to delay for 1, 2, 3 or 4 seconds (depending on the selected delay).
On another note, I am also thinking of a way to make the dial arrangement programmable by the user for non-standard dials (New Zealand and Oslo dials, as well as Sweden dials), instead of using a "#define" preprocessor macro at software build time. (Standard, NZ/Oslo and Sweden are the only three dial arrangements I know about; are there others?)
One more question: Do you know a good source for ordering ATtiny85V parts (with the "V" suffix for low voltage) in 8-pin PDIP packaging? Amazon.ca only seem to have SOIC packages available and, even then, they are too expensive (at least, in Canada via Amazon.ca).
@@ed6213 Digikey in the US (Minnesota) has the "V" version for about USD $2.00 each.
Every dial I have ever tested, including various WE and AE models, close the off-normal contacts long before reaching the point where they will open the line as the dial returns after release. The modern Western/Northern Electric dials only open the line when the dial is rotating counter-clockwise under spring control, through an interesting little cam arrangement. I think your code mod is practical to attempt. I haven't looked at the original code I branched from in Github for sometime. The original author never showed any interest in merging my fixes.
I have a Bell System Technical Journal that documents the various dial numbering arrangements as of around 1962. It's the same issue with the MF frequency pairs.
Hi, thanks for informative video! I bought a Dialgizmo to connect a 500 series rotary to my Voip. I can’t seem to get the call holder feature (for dialing “#” or “*”) to work. I have the dipswitch at the proper setting. It does allow outgoing calls. Would you know if this is a bug with the Dialgizmo? I use ATT in Chicago. Thank you, Mike
Very interesting since, in this country, we will be plunged into the darkness of fibre and voip.
looks like youmade that on something like veroboard as we woould call it here.
Do you do a kit for this?
We call it Veroboard here too, but this is clone stuff from China! Yes, easy enough to assemble on proto board. A bit tricky to install if you don't know your way around analog phone internals, but can be fitted to almost any phone with an "off normal" muting contacts on the dial.
No kit, alas, but the hex and source code is freely available.
This is awesome. Did you do any amplification on the earpiece as my earpiece seems extremely soft
I was using an amplified speaker plugged into a phone line coupler that I built for the phone line audio on the video.
You can see the "Archer" Radio Shack speaker and amplifier and the coupler circuit board behind the phone in the video.
@@df9999999999 Oh yes I saw it now watching a second time. I am thinking of building a small amplifier to install in the phone's base to amplify the speaker a bit. But brilliant video!!!
I have found a good result by taking a Trimline earpiece element and placing it inside where the old element went.
Hi, thanks for this great video. I’m in Australia and would like to buy one of these dtmf converters. Are you selling these?
Also I’m super impressed with the ATA that produces the dial tone from the step exchange time. Could you please let me know what this ATA is called?
Thanks again for this video.
I am not selling these. I have made the code and schematic available on GitHub, however. The ATA is an Obihai model. Like most ATAs, the dial tone and other progress tones can be set to about anything you like in the web interface.
7:19 What was the * key used for on a dial phone? Call display?
It was used for what Ma Bell called “vertical service codes”. For example, *67 dialed before the phone number would disable caller ID for that call. Other codes were used to block certain numbers or activate other features on the line. Rotary dial phone users would dial “11” instead of “*”.
What is the meaning of KP and ST? ST is maybe START? BTW I really like 2600Hz and I use it as notification tone on my mobile and as a roger beep on my transceiver :) This is not a coincidence, of course. :)
Because the tones used on the long distance trunks could have a variable length, a way was needed to indicate the start and end of a dialing sequence. KP stands for Key Pulse. It is slightly longer than the other MF tones and indicates the start of dialing. ST stands for Start and indicates the end of dialing and that the numbers between KP and ST should be processed.
This will be fun to use with project mf (version of asterisk pbx that can be controlled with these tones so you can get the feel of being Cap'n Crunch...seizing trunks and whatnot)
Yep. I built and run ProjectMF. The MF mode works well with it.
@@df9999999999 Well that makes sense ;) I'm going to build this to put into an Automatic Electric 3 slot payphone. (Looks like someone modernized it in the 80's..some PCB boards in the back that I'm trying to figure out.) Also, not sure I get what L1/L2 are in the schematic. The dial and phone line make sense, but don't know what you mean by "phone network/ induction coil"
How much would you charge me to build one and mail? I am in U.S.A. I'd do it myself but far too many projects and time is limited. By the way--- EXCELLENT presentation.
Telco Steve Same here. Far too many projects and too little free time.
@@df9999999999 Darn. I would trust yours. Ok I understand.
I know OldPhoneWorks Pulse to Tone Converter does not really play well at all with the Western Electric 302 because the voltage while dialing is Zero, but I wonder if the Dialgizmo converter would play better with the 302... Do you have any idea?
@@ethan1970 On Dial Gizmos website it states it is NOT for the PSTN (meaning regular phone lines from the phone company) and SOME VoIP ATAs do NOT work with it. Your seeing voltage at Zero because the two pulse contacts in the dial open the L1 lead of the line when it pulses. On-hook measure L1 and L2. You must have at least 48v DC. Now measure those leads at Off-hook. You should see 5.1 Volts DC to 6.4 VDC. The bottom line is the RotaTone does work but it is a super PAIN IN THE ASS to wire it up with the Polarity guard that is required to put + and - correctly for outbound touchtone signalling. The real issue is because the people that sell the thing don't have clear instructions. Sorry. But that is the truth.
@@ethan1970 Don't know about Dialgizmo. This circuit works great with the three 302s I've installed it in due to the 5 volt zener diode which insures sufficient voltage drop to drive the circuit under normal loop current conditions.
Hello, is it somehow possible to convert a phone without hearing the sound at the end of every number?
Not with this circuit.
@@df9999999999 ok, thank you. But it is possible?
@@palracz6179 I think you would need a processor with more pins (maybe a 14-pin ATtiny84 ?) with some added firmware, and a relay or something, to shunt the earpiece (like the "DIAL" pin did in the original telephone phone circuit, to mute the pulse noise in the earpiece during pulse dialling). Having written that, keep in mind that Model 1500 and 2500 "Touch Tone" phones DO sound the DTMF tones in the earpiece while "dialling" an outgoing call.
How did you get the old dial tone?
Any chance I can get you to build a few extras? ...
Time at a premium, so likely not. I could sell the programmed chip and resonator, if I have some around (which I believe I do).
If I wanted to polish that phone to the max to restore every single nano scratch, what do you recommend?
It depends if the phone body is made of thermoplastic (most common) or die-cast painted metal. On plastic versions, I use Novus 3-step plastic polish and hand buffing with good results. Deeper scratches would require buffing with a powered cloth polishing wheel and various grades of jeweler's rouge polishing compound. The handsets are all Bakelite. Bakelite tends to degrade over time, exposing the wood chip composition beneath. If this has happened, black shoe polish works pretty well as a cosmetic repair and polish. Otherwise, the same Novus polish works well.
@@df9999999999 Thank you . Mine is 302 made in 1949. Pretty good to minty shape but has some nano scratches I'd love to eliminate.
Hello Ray! Whats going on wit the phones?!
I want to make a rotary phone with bluetooth connectivity. Is that something you would be interested in working with me on?
Just look at an XLink module
How do I change the dial tone on my ATA?
It depends upon the ATA. There is usually a method to adjust the tones via the web interface.
hi i love my antique telephones and now verizon has forced me to get a fiber optic line and my sweet rotary phones only get calls in im not a happy guy most of my friends have no clue what a rotary phone is anyway this is the answer to my problem but im so confused where do i get this do you make them ? i have no idea where to go from here im just a handy guy that fixes old stuff as a hobbie but im lost on this i love that original dial tone sound i want that on my phones and i want a weird feature i have the same phone you got and the wait for dial tone allways interested me i always thought how cool it would be if i pick up the phone and there was a few second delay and then the dial tone would come on not sure if that would be possible i hope someone can help me out thanks everyone
As the video info says, there is a link to the code, schematic and installation guides on my GitHub page. The project requires microcontroller compiling and programming experience to prepare the Attiny85 chip. You would then need to wire up the circuit. Fitting it into the phone also requires some knowledge of where to place it in the circuit for proper operation. This can vary a bit depending upon the specific phone. Not a beginner’s project! There is a very similar commercial product called the Rotatone that is pre-assembled, but still requires phone re-wiring to install.
The old dial tone sound is from the ATA VoIP adapter. The dial tone sound is usually programmable in most ATA VoIP adapters.
@@df9999999999 i can see it takes some skills wire into the phone and all that is no issue for me can you atleast tell me where do i buy a microcontroller compiling if i can get the parts i can do it but i have no idea where to get that
@@swedacashregisters rotary dial.hex at the GitHub link contains the pre-compiled code. attiny85_fuse_settings.txt contains the settings for the three fuse bytes in the chip. You need a programmer that can program the Attiny85 chip. Load the hex file into the programmer software, set the three fuse bytes and program the chip. Then move on to constructing the circuit. You will not need to compile the code, unless you are making changes.
@@swedacashregisters Everything needed to compile, program and build this are at the GitHub page, but a certain level of experience working with microcontrollers is assumed.
Cool
Hey I just made this board and I'm having trouble getting it to work i can dial and hear the beeps but i can only hear the tone of the number 123 sometimes 4 and 7 i cleaned the dial and still the same issue , i mounted the board in a breadboard double check connection and still the same changed breadboardt and nothing changed , my best guess is that connected something wrong as i could find any schematic of my itt phone it has a very strange network buy that i did was connect the dial and shunt cable together at ground then the other shunt output cable to the Attinys and the dial attin85 the same , tried swapping connection of those two but get no beeps no tone so that connection i think is right then I connected the line + at my phone on a connection f and the ground to a connection c , i made those choices based on a similar Network installation of the rotating device , so i think that wrong but i cant find a way to figure out the correct connection any help will be apriciate I'm really new to attin85 and phones so bear with me i would think it would work first try but i cant figure out what's happening also it seams the microphone and headphones are really low when recivin callss
Do you have a model number of the phone? I need a good schematic of the network and switchook wiring to advise. I haven’t found a phone yet I couldn’t get to work. The guys at TCI usually can come up with a schematic for any phone.
@@df9999999999 thanks for the fast response , there are no markings on the phone only an itt logo on the hanset but looking for itt500 phones on the internet i found that it looks very similar to late models itt500 phone on the outside and the inside with its weird network (it kinda looks like an itt2500 network but its not the same) but i could fin the schematic for it though im not very familiar with this stuff, the guys at TCI whats tci?
@@briansegarra9312 TCI is Telephone Collectors International. They have a huge online repository of telephony-related tech documents. Is this your phone? www.telephonecollectors.info/index.php/browse/itt-practices/kellogg-timm-handbooks/13136-itt-kellogg-timm-64ca-telephone-instrument-maintenance-manual/file
@@df9999999999 ohh thanks is very similar externally but mine dosent have letters only numbers and the network is very different let me show you how the network on mine looks like , it like like exactly the same as the network show on this links www.classicrotaryphones.com/forum/index.php?topic=7.0
@@briansegarra9312 Oh, those! I used to have a dozen or more and have a few of the network boards here. Will look over some old docs.
Does this also work with incoming calls?
Yes, the tones will be generated any time the dial is used and the phone is off-hook.
Nice! Which Obihai is that?
Obihai (now Polycom) 302. It has two FXS ports. It can NOT be made to work with Google Voice. It was a gift from an Obihai engineer at a conference.
I just realized that the Obihai and the old Western Electric phone have the same model number - 302!
Did you ever do the video on the blue box?
ruclips.net/video/jyhchR5O4hw/видео.html
Lol imagine if u could record someones dial tone on intercom with handheld voice recorder
Then replay that dial tone on a analog phone aka office phones anything that have a handset to decode what there number is like the casio DBA 800 watch that had phone dialer u enter the number to save it then it plays the dtmf tone put that tone to the phones handset and it dials the phone using the dtmf sound
@@loraguzman1107 This would work fine, as long as the recorded tones were coupled into the phone line with enough volume and low distortion. Often simply playing recorded tones into the telephone mouth piece would successfully dial a call.
@@df9999999999 "Often simply playing recorded tones into the telephone mouth piece would successfully dial a call" ... as Steve Wozniak and Stephen Jobs found out before they became "Apple-famous". They were early adopters of "Phone Phreaking", a technique used to make (illegally) free long distance calls by sounding trunk control tones into the mouthpiece. One would make a free call on a payphone, then, at the right moment, insert special trunk control tones into the mouthpiece to make the long-distance call that the "phreak" REALLY wanted to make, all without having to pay for it. Don F also knows about this, as he has a special "phreaking" version of this circuit.
I'm trying to figure out how to achieve getting a pulse phone to wirelessly connect to a Spectrum Cable VOIP RJ11 port/line, as my house is not wired for phone and I don't have a way to run wires/cord from desired phone location to modem. Any ideas if there is some sort of wireless hardware (ideally off the shelf or kit) to get this to work? I really don't want to use a cell phone. Also, will need to have a way to provide power for the phone ringer/bells, even just a little and can adjust the bias spring maybe . . .
I use a VOIP ATA adapter connected to a WIFI Ethernet bridge for this. The Ethernet bridge connects to your WIFI network and provides one or two remote Ethernet jacks.The ATA is plugged into the jack and the phone now connects wirelessly to your Asterisk switch or VOIP provider. Works great.
Most ATAs will not accept pulse dialing, so you would also need to build and install this rotary to DTMF converter.
Can you send one?