Pages: [1] 2   Go Down
Author Topic: Tones from Arduino to microphone port  (Read 1972 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hello,
I've been working on a project to convert pulses from an old rotary phone into tones that are played from the arduino (using the tone library).  I've wired up an old dect cordless to basically render the phone wireless. 

However, I'm playing the tones out the output of the board and need to play it into the microphone of the phone so that the line recognises the dialing.  As the mic is now in the handset of the old phone, and that is soldered to where the old mic was on the wireless phone. I don't want to run a speaker up to the handset.

So this leaves me with two choices.  Which both have problems and which I was wondering if you guys can help me.

1. Wire up a mic inside the phone body with the small speaker taped to it.  This would be in parallel with the mic in the handset.  Will this cause any problems?  Bar getting some noise when moving the phone body, which I can try to isolate as much as possible. 

2.  Wire the output pins from the arduino directly in parallel with the mic from the handset.  However, due to the voltage, this will cause problems.  I was wondering how I can mitigate this.  Or is this option totally out due to having a mic in place?

Any and all help is greatly appareciated!
Logged

Topsham, Vermont USA
Offline Offline
Edison Member
*
Karma: 23
Posts: 1759
... in The Woods In Vermont
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi, This is the place for a good old TRANSFORMER which can couple the audio while isolating the voltages.

You should have plenty of audio out of the Arduino so you can afford (probably need) some losses to match the microphone level.

You need some "Audio Transformer".. many different ones would probably work, as you can use a 2-resistor "voltage divider" (What we would call an "Audio L pad" in my ancient Broadcasting days).  

Sources?? Radio shack had some small audio transformers. something with impedances like 600 ohms to 600 ohms would be good. You could also use:

  • Output transformer from an OLD transistor radio
  • coupling transformer from an old dial-up modem
  • small "filament transformer" if desperate

Let us know what happens ...
« Last Edit: September 20, 2012, 07:27:43 am by terryking228 » Logged

Regards, Terry King terry@yourduino.com  - Check great prices, devices and Arduino-related boards at http://YourDuino.com
HOW-TO: http://ArduinoInfo.Info

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ah,
So I attach the mic and port to one side, but the arduino output to the other.  You are right though, I do need to drop some voltage, I believe that the mic input would need around 100mV whilst the arduino is kicking out 5V.

If I were to use a voltage divider with something like R1= 470 ohms and R2 = 10 ohms, giving 100mV out, would that isolate the voltage enough, but still allow the audio 'signal' to be interpited by the microphone input on the phone?

Just throwing these things out there as its been years since I've done any electronics! 

I'll buy a transformer, but just interested to know if the voltage divider would do in a pinch?!  Don't ask, don't learn!

Thanks for your help!
Logged

Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 509
Posts: 31452
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Yes a transformers the way to go. A resistive divider will do but the values need to be much bigger, start with 1K and 47K.
Logged

Anaheim CA.
Offline Offline
Faraday Member
**
Karma: 44
Posts: 2809
...
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

{Edit:}    
Quote
convert pulses from an old rotary phone into tones
The problem is that the OP said "Rotary Phone" that is a phone that when dialing shorts the handset and shorts the phone line in a 60/40 mark, space 10 PPS max rate (I could be off in the speed as it has been 30 years since I did this type of work). It isn't tone dialing unless the OP has mistaken his "nomenclature" and the DECT6 system is a digitally encoded audio and data stream between the base unit and the handset. So If you really wish to "Dial" from the handset you must emulate the dialing "Pad" or switch matrix to dial the number and IF it is automated calling what provisions do you have to detect dial tone so you can dial the number. There is also the condition where the phone number being called is busy or there exists a circuit busy condition. Both must be considered, first, I should think and you made no mention of any provisions for those conditions.

Doc
« Last Edit: September 20, 2012, 11:35:35 am by Docedison » Logged

--> WA7EMS <--
“The solution of every problem is another problem.” -Johann Wolfgang von Goethe
I do answer technical questions PM'd to me with whatever is in my clipboard

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi,
Understood.  The code I have written for the arduino takes the pulses and converts them into tones.  Basically if I detect 4 pulse counts on the pin, I send out the tone for 4 using the tone library.  This i have managed to get working enough to convince playing down an open line to dial 1471 (a nice handy test number).  Debound has also been considered in this matter. 

The reason for doing this was that I destroyed the tracks for the numbers on the cordless phone I was using.  Therefore I was going to play the sounds down the line when dialing to save distroying another phone (which i seems I have to do anyway, but thats another story). 

So my problem was how to tie in the two microphones.  I think the simplest is to leave the existing microphone and have a small (earphone) speaker glued beside it and insulated for noise so that we have a dedicated mic for hearing dial tones.  Although, later I will be investigating an audio transformer to do this job for me so I can tie in the ardunio outputs direct to the mic port without this hack.

As I'm not auto dialing, I'm not needing to detect busy signals or other such like, as the user of the handset should be able to hear this. 

Thanks for your post though!  It gives food for thought if i'm going to move on with my other project ideas....
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok,
So putting two mics into the same intput doesnt work.  I have left the mic on the phone, playing the tones down this mic works most of the time.  I then soldered wires on to the back, and tied them onto the handset mic.  Doing this stops the "internal" mic from picking up the tones, however the "external" mic still allows me to dial out. 

My question is why is this the case?  Why does the "internal" mic suddenly seem less sensitive when connecting up the "external" mic in parellel with it? 

Looks like the Voltage divider or transformer is really the only way if I want to keep everything internal.  I'll try a 600 ohm/600 ohm transformer, but is there a way of figuring out what I need or is it a suck it and see?  Are there any disadvantages to using a voltage divider (resistors are easier to get), bearing in mind that sound quality isn't major as long as it sounds about right to the phone switch.

Thanks for your help guys and sorry for all the questions, I just like learning things and figuring out why things are bad and why things are good.  And therefore, sorry for any stupid questions.
Logged

Anaheim CA.
Offline Offline
Faraday Member
**
Karma: 44
Posts: 2809
...
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The internal microphone is likely starved for voltage to operate it. Most if not ALL of the basic cordless phones use an Electret Microphone and they have a small Field Effect transistor (Jfet) internal to the microphone and If you try to load that point with another microphone it will not work as there isn't  enough current available to operate 2 microphones at the same time.

Doc
Logged

--> WA7EMS <--
“The solution of every problem is another problem.” -Johann Wolfgang von Goethe
I do answer technical questions PM'd to me with whatever is in my clipboard

Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 509
Posts: 31452
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

You can't wire microphones in parallel, just like you should not wire batteries in parallel. They are generators and one sees the other as a load and tryes to power the other. This loads it and they both end up not working. That is why God invented mixer circuits.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Well, its been a month and I took a different tacked with this project. I have used 12 relays to dial the numbers and pick up / hang up the phone.  However, I am going to look at it differently, and wire up two microphones and get the arduino board to switch the "Dial tone" and the "Voice" mics about when I am dialling the phone number.  I wonder why I didn't think of this before.....

Thanks for all your help people and I do appreciate it.  I learned quite a bit, but do expect me to be back with more dumb questions at some point!  smiley
Logged

Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 509
Posts: 31452
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
do expect me to be back with more dumb questions at some point!
Questions are never dumb.

Some people ask questions in a dumb way but the questions themselves are always something you don't know, so feel free to ask.
Good luck.
Logged

Valencia, Spain
Offline Offline
Faraday Member
**
Karma: 118
Posts: 4554
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

That is why God invented mixer circuits.

You think electronics engineers are gods?
Logged

No, I don't answer questions sent in private messages...

Anaheim CA.
Offline Offline
Faraday Member
**
Karma: 44
Posts: 2809
...
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The Arduino... as the beginnings of a PBX... Might be an application there to write about... A simple way to provide "Home" PBX service, limit access to/from some phones, provide multiple subscriber line switching, Provide public and private intercom W/Paging or signalling and should fit well into an Arduino Mega. !0 lines and 10 stations should be simple.

Bob
Logged

--> WA7EMS <--
“The solution of every problem is another problem.” -Johann Wolfgang von Goethe
I do answer technical questions PM'd to me with whatever is in my clipboard

the land of sun+snow
Offline Offline
Faraday Member
**
Karma: 149
Posts: 2790
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Quote
do expect me to be back with more dumb questions at some point!

Questions are never dumb.

There are a lot more dumb answers than dumb questions [not meaning you, G_M! :-)].

Quote
Quote from: Grumpy_Mike on September 21, 2012, 11:36:19 PM
That is why God invented mixer circuits.

You think electronics engineers are gods?

I estimate that EEs make errors at least 50% of the time. More dogly than godly.
Logged

Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 509
Posts: 31452
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

That is why God invented mixer circuits.

You think electronics engineers are gods?

No, it is a joke that seems not to cross cultures. That phrase is used to describe some obvious solution that some one is missing. Looks like it dosn't translate.  smiley
Logged

Pages: [1] 2   Go Up
Jump to: