Electronic Hook Switch (phone interface)

Hello all,

I am trying to get a relay to activate when a VOIP phone rings. I tried many options, but no luck so far. My latest attempt is with a Electronic Hook Switch. I am not sure how these devices work exactly, but the mount over the speak of the phone, and if it is ringing, it tells the headset to ring as well.

Does anyone know how these devices work? Could they somehow be added to to an Arduino and register has HIGH and LOW? I am really grasping at straws here, so if someone has a better way to active a relay when a VOIP phone is ringing, I am all ears. :frowning:

How is your phone wired to the internet? Eventually you can catch the ring signal there.

Without knowing what exact phone you have and what possible hooks it offers to connect your Arduino, we're dead in the water here.

It's an AVAYA VOIP Phone, connected over POE.

Here is the EHS cable.

I am not sure what this kind of sensor is called. But it is stuck on top of the speakerphone, and when it rings, the resistance changes. (Blowing on it works as well)

Is there is a way with an arduino, to do something if the resistance changes of this sensor changes? I can easily power on the relay by turning a digital pin to high, if that is the case.

Below is a sloppy workaround. It is from a broken Plantronics headset base. When the sensor is activated, the led circled flashes. If I have my data pin connected to it, while the led is in the on state, so is my relay. Messy, but it works, so I assume there is a way to get the arduino to do this, without this board. :slight_smile:

Sounds like a kind of microphone.

If it's indeed simply a resistance, you can make a voltage divider out of it with a fixed resistor - use a value of roughly the value of the sensor, so your "at rest" midpoint voltage is about 2.5V. The mid point goes to an analog input of the Arduino, and then it's a matter of sampling pin, and react on changes. Sampling should be fast enough for this.

What's the typical resistance of the sensor, and the change in resistance when the phone rings?

I do not know if it is just resistance, I honestly don't know what it is, and I admit I am far from an expert on any of this.

The device with no noise, sits at 1.408 kΩ. When the phone rings, it moves to 1.442 kΩ. Is this too small of a change to monitor successfully?

(If I blow on it, the resistance change from 1.408 kΩ, to 7~ kΩ)

EDIT: I found out that, it is in fact a little microphone. Not sure if that changes anything or not.

Yes, far too small.

I guess it's actually an electret type microphone. Now I understand what you actually try to do is react to the ringing - so why not use a ready-made sound detector board for that? Or you may even try to get a signal from the speaker that produces the ringing sound.

wvmarle:
Yes, far too small.

I guess it's actually an electret type microphone. Now I understand what you actually try to do is react to the ringing - so why not use a ready-made sound detector board for that? Or you may even try to get a signal from the speaker that produces the ringing sound.

Crud!

The speaker that rings is also the same speaker used for speakerphone. So if speakerphone is used, the ring will be detected false positively. All good info!

I may just stick with this headset contraption I made then.

Thanks for the help!

Then you have to go lower level: tap on a software level into your VOIP system, and have it produce a signal output that’s useful for you.

wvmarle:
Yes, far too small.

I guess it's actually an electret type microphone. Now I understand what you actually try to do is react to the ringing - so why not use a ready-made sound detector board for that? Or you may even try to get a signal from the speaker that produces the ringing sound.

You were correct. I had no idea these existed.

I ordered it, made some super easy code, and it's working flawlessly.

Thanks a ton!