Notification when door intercom is pressed - ESP8266

Hi guys!

I’ve done a little and mostly typical project which is to open my apartment’s door from Blynk using an ESP8266. That’s working flawlessly! :slight_smile:

(sorry no more pics, new users can only post one)

Legend:
Green is the button connected to the relay module
Red is obviously the 2 wire general intercom line powered at 12VCC unfortunately not constant, drops to 10 quite often…
Yellow microphone
Blue speaker
Ah and I forgot about the white button, this is always pressed when the phone (intercom) is hung. No need to pick up to action the opener button.

As you might see it’s a digital circuit, every apartment has its own codification (as shown on the 1 to 8 panel).

Now, I what I would like to ask the community is for ideas on:

  1. (This one should be easy enough…) Get a Blynk notification every time someone dials my apartment intercom. Seeing that circuit. How do you think the central is notifying my intercom which then triggers the alarm sound across the speaker? Dont worry about the Blynk setup, I know how to read the documentation.
  2. (This one is more complicated…) Would it be possible to send or receive sound across the ESP8266 back to the intercom circuit? Saw some projects related here and here. Obviously Blynk is still lacking of a functionality like this.

Thanks in advance for all your feedback! :stuck_out_tongue_closed_eyes:

1 Like

I was google-ing around and found about the Schmitt trigger
That would be an IC 74LS14N. With this and a couple of resistors I think I should be able to detect the sound signal…
If anyone else have more ideas feel free to comment.

BTW I didnt mention that when I get a call the intercom power drops from 12VCC to around 9VCC

up! no one ?

i assume when someone dials your apartment, the buzzer sounds.
from your description it is not very clear to me, that you have an esp8266 hooked up physically to this circuit?

if yes, then theoretically you just have to monitor the buzzer terminal (blue), via an appropriate voltage divider and a digital pin on the esp, and when it receives a signal, it sends a notification.

also, it is not clear what you want to achieve. you want to sound the built in speaker (blue terminal) or to send a signal to the microphone terminal? by sound you mean just a tone / beep, or human voice?

i do not think this is relevant, because the esp anyway operates on 3.3v

for better understanding your project, you should post a schematic about the whole circuit, including the esp, not just the intercom.

i assume when someone dials your apartment, the buzzer sounds.
from your description it is not very clear to me, that you have an esp8266 hooked up physically to this circuit?

if yes, then theoretically you just have to monitor the buzzer terminal (blue), via an appropriate voltage divider and a digital pin on the esp, and when it receives a signal, it sends a notification.

correct. buzzer sounds.
i just have a rely module connected to the green. when i push the button in blynk it activates it. therefore it opens the door downstairs. very simple setup.

thanks for the tip regarding the voltage divider and the digital pin. I’ll research how to do this.
BTW I just saw that the ESP has an analog input, maybe I can use this? http://www.instructables.com/id/ESP8266-ADC-Analog-Sensors/

also, it is not clear what you want to achieve. you want to sound the built in speaker (blue terminal) or to send a signal to the microphone terminal? by sound you mean just a tone / beep, or human voice?

when i talk about sending or receiving sound i mean:

  1. (obviously get a notification in blynk that someone called)
  2. action white button to simulate the phone is unhang.
  3. receive sound across blynk app (in the circuit the output is in blue- speaker signal)
  4. send sound across blynk app (in the circuit the input is in yellow - microphone)

i appreciate your help. thanks!

it’s very simple!

you just need a reasonable quality trimpot (around 40k, but it really doesn’t matters, anything above 10k will do). you have to set the trimpot as the voltage on the wiper to be ~3.0v when the buzzer sounds. hook up the wiper to a digital pin, and write code for when the pin is high, send notification to blynk. after sending the notification, you probably will have to disable this function, because the pin will stay high until the buzzer sounds. but it should be easy to write code for this.

if you have basic electronic knowledge, you can use this to make the voltage divider:

just take care that the esp works with 3.3v not 5.0 like the arduino!
the trickiest part will be to reliably measure the voltage what the buzzer uses, because that will not be a steady voltage. you should measure somehow the highest voltage, and set the trimpot for that, to protect the digital pin… probably a simple dmm will can not measure as fast. but you can try.

for this, you have to make a little research, what that button is actually doing on the pcb. probably brings a digital pin on the ic in the intercom high or low…

this is not hard to find out, with a dmm on continuity tester (with the intercom powered off!), or measuring the voltage on both sides of the button, while pressed and unpressed (with the intercom powered on).

if the button brings a pin on the ic low, than also measure the current flowing through the button (just short the button with your dmm on mA setting, and check the value). if that value is acceptable for the esp, you can hook up the pin from the intercom ic via a protection resistor to the esp, and write code for it, to bring it low when necessary.

if the voltage / current is too high, you still can use a mosfet or relay, depending on the situation. still not hard to do…

as for sending and receiving sounds via blynk app, you still not clarified what do you mean by sound… human voice or just tones?

2 Likes

indeed, for voltage dividers normally you need analog pins, but in this special case you do not want to measure the voltage with the esp, you are just want to know if there is voltage or not. (1 or 0). this is why you do not need the analog pin, just a digital. the voltage divider in your case is needed to protect the esp from the (probably) too high voltage the buzzer uses.

thanks for your tips. yes, i mean human voice sorry.

human voice will not work for at least 2 reasons:

  1. to transmit analog sound via microcontroller (in your case esp8266) the mcu need to have analog to digital (adc) and digital to analog converter (dac). with a reasonable resolution, of course. the esp8266 doesn’t have any of this.

  2. even if you would use a beefier mcu, with these ports present, the blynk platform afaik doesn’t have this functionality.