2

Not sure if this is possible, but could I use my existing doorbell setup to power an Arduino? I'd also like to preserve the existing chime's functionality either through the existing button or triggering it through the arduino.

My doorbell chime is made by Nicor and its input is 120VAC, but outputs 12VDC. This seems to be a very unconventional setup, but I've confirmed its output with a multimeter (it's also printed on the chime itself). The chime is very similar to this: http://www.amazon.com/Nicor-18888-Door-Chimes/dp/B006T38PTU (only difference I can see is the output). The 12V line runs to my front door where it's connected to a light up button. Here is a picture of the button's circuitry: http://imgur.com/IjA50rT

What I'd like to do is use the chime's 12VDC output to power the arduino so I don't have to rely on another power source or batteries. I will be adding smart features to the doorbell via the arduino, but my main hangup is getting power to the arduino. I've tried connecting the doorbell wires to VIN and ground, which successfully powers on the Arduino, but it also triggers the chime. It appears closing the circuit triggers the chime to play.

Is this possible to do?

  • 1
    Connecting 12v to an Arduino's VCC pin would likely destroy it. You want the Vin pin. But you also don't want to be in series with the buzzer - the voltage drop from that second mistake might be the only reason your Arduino still functions. – Chris Stratton May 20 '16 at 17:34
  • Sorry, I actually meant the VIN pin. – SterlingW May 20 '16 at 17:39
  • The button board looks amazingly complex for "just a button". As others have noted, it may just carry signal-level voltage, not enough to power the Arduino. Plus, if pressing the button closes a circuit, the +12V might disappear at the exact time when you want it - when you want to hear a chime. – Nick Gammon Jun 20 '16 at 21:02
3

This seemingly simple task is actually quite complicated; a good challenge that's not impossible or easy to overcome.

The AC/DC transformer in your link only provides "12VDC/6mA"; not enough to run the Arduino, chime, and button LED; so it likely needs upgraded to something beefier; you can't have too many amps on such a transformer.

Then there's your chime, which could use a lot of current (buzzer/bell) or a little bit (speaker-based chime tones). If it uses a lot, you should replace it to simplify the other connections. Remember that power goes through the chime to get to the button; otherwise the circuit would be incomplete and the ringer's LED would be dark.

The chime is activated by the resistance of the button lowering itself to the point where the chime gets enough power, no longer being current-limited by the diode, 2.2k resistor, and small LED. Very simple design, but not ideal for easily intercepting.

So what's the easiest way to accomplish your task?

Looking at it closely, it seems the basic circuit is there for you already; you have a power-consuming node on the network in the form of the button's LED.

You need to replace/augment the LED on the ringer with the Arduino. The 2.2k R19 could/should be replaced with the Arduino as well; just make sure your LED isn't over-drawn when the Arduino is chugging at full-steam, and add additional inline resistance as needed to keep it safe.

The other problem is powering the MCU while ringing. You'll notice the LED goes out while ringing. While that's nice feedback to the user, it's not because the circuit designers were UX-focused, it's because the chime's simple circuit pulls all the current out from under the LED, just as it will an MCU in the same slot.

You can get around this using a super capacitor. I would use an LM7805 in front of the Uno to deliver VIN +5 V instead of 12 V. Then you can "short" the Uno's GND to VIN with a 1 F 5.5 V capacitor ("F", NOT "uF"). Those caps are (amazingly) available for just a few dollars on eBay.

So, at the end of the day, you basically just need to "upgrade the LED" and maybe upgrade the transformer. You could also re-create the switching pattern on your ringer with diodes if you're handy with circuit design, but if i were you, i would just "bodge" a few wires onto the existing PCB, and possibly alter that resistor.

Good luck; sounds like a fun project and a good challenge.

EDIT: I realized you might not need any circuit mods at all; a hall-effect current sensor anywhere the line, or just paralleling the chime terminals with a voltage-divider input to the Uno might suffice, if you didn't need the MCU physically at the button. Heck, a microphone sensor taped inside the chime could accomplish the task of detecting doorbell rings...

1

You need to find the transformer for your doorbell system and take the power from there. It seems like somehow you are using the signal wires for the door bell instead of the power wires.

The door bell transformer should/could be in a utility room, closet, by your heating and air unit. once you find that look at the output of the transformer. I know some are AC 12 volts, and I feel like that arduino will not like that...

  • The transformer is part of the chime and it's connected to mains power. The chime takes 120VAC in and outputs 12VDC. If you take a look at the amazon listing (amazon.com/Nicor-18888-Door-Chimes/dp/B006T38PTU), you can kind of see what the wiring looks like (see the other images). – SterlingW May 20 '16 at 17:43
  • So get a little 12Volt or 9volt transformer and wire it into the mains at the door chime. I bet you have one laying around the house! – Mason Younger May 20 '16 at 19:03
  • But the problem is that I am unable to run additional wires so I'd like to use what's already there – SterlingW May 20 '16 at 19:10
  • I understood that you were putting the arduino by the door chime, if so You wouldn't be running any extra wires. – Mason Younger May 20 '16 at 19:34
  • Sorry, I'd actually like to have it by the button – SterlingW May 20 '16 at 19:54
1

If your extra features only need to sense the button press, then your arduino can go at the chime and use the 12V source that also powers the chime.

You put an opti-isolator's led side in series with either leads of the button loop. A digital input with high pull-up can read the state of the detector side of the opto-isolator.

This assumes that your extra features do not include providing some kind of visual or auditory output at the button. But remember that just because you want to read the button state, you need not detect it at the button physically--just electrically.

-3

You must connect the arduino vin pin to the doorbell 12vdc and it should work. Edit: Now I understood the chimes out, that is connected to relay coil driven by the button. If the relay is mechanic you can play with delay times and use pwm to drive your arduino without turning on the chime. The system I have described is used in NEST thermostat, that self powers with heater relay wires.

  • without having seen a wiring scheme is clearly unresponsible. – Ariser Jun 21 '16 at 11:20
  • This does not work because it triggers the chime to go off constantly. – SterlingW Jun 21 '16 at 19:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.