HOWTO: make a bell-ringing Arduino doorbell

John Montgomery hacked an Arduino board into a cheap wireless doorbell, and connected that to an servo attached to a brass bell. Now when his doorbell rings, the wireless doorbell makes the twee and adorable brass bell go ding-a-ling-a-ling. I've got a drumming tiki idol made of resin that I want to do this with, so he beats the drum when someone's at the door -- now I know how I'll do it!

Montgomery's hack built on Roo Reynolds's Twitter doorbell project, which is also delightful.

With the hardware finished I then set about actually getting it all up and running as our real doorbell. So imagine my horror when upon placing the doorbell on our kitchen window sill and connecting the power everything went haywire and the arm just constantly moved! After some tweaking of the code and kitchen-side debugging I realised that I really should make use of the Arduino's internal pullup resistors for the doorbell pin. Up until that point I had left it "floating". When powered by the USB this rarely drifted to zero, so I thought it was working fine. However on mains power it regularly dropped quite low, making the Arduino think the button had been pressed, triggering the servo. Configured the pullup resistor and tweaking the activation threshold (as it was now higher than zero) sorted out this problem perfectly:
"Ultimate" Arduino Doorbell - part 1 (Hardware)


  1. My grandparents house had a wire sticking out through a hole next to the door. You pulled the wire that was connected to a bell inside, causing the bell to swing and ring. I guess I fail to see how an added microprocessor improves on their system in any way.

    If you rigged a tesla coil into the system I would be more excited.

  2. Bonus: if the clapper falls out of the bell, the noisy servo motor still lets you know that there’s someone at the door.

    /and that, y’know, the clapper fell out.

  3. I would hardly classify anything involving an Arduino “cheap”. Also, major overkill – some discrete circuitry could easily replicate a single ring.

    If he wanted the bell to play a little tune, I could see using the Arduino.

  4. Is that a UFO in the blue monitor on the bottom right, or is the cameraman just really happy to see me?

  5. My favorite DIY project was made by a friend’s father. In their suburb there were lots of large dogs left free to roam. For some reason they all favored peeing on garbage cans. So they put their can up on a fork lift pallet to get it off the ground and wired an automotive spark coil between it and ground. Pavlov was right.

  6. I don’t agree with the use of the work hacking in this context. The Arduino boards are “just” a processor and some IO connections, this is what it is built for. Hacking implies breaking something apart and rebuilding it to do something tit was not designed for.

  7. This seems like a good “build a better mousetrap” challenge. How simple can you get while still maintaining functionality? It seems that you could attach two live wires to the door bell with a fuse and a 120v momentary solenoid attached to the hand bell (via a long stick). If you had a larger bell you could use the solenoid as a hammer and some old piano keyboard parts. A microcontroller is neat, but seems wasteful for this project.

  8. To address some of the feedback here.

    @PaulR and @EH – yep servo is relatively loud. I plan on muffling it in the future, as the doorbell will eventually be covered/decorated/dressed.

    @Anon, @hadlock, @Blinde Schildpad and @fantasygoat – Arduino/microprocessor is overkill, but this was the easiest option *for me* with relatively little electronics knowledge or having to put holes into the walls of rented accommodation.

    @RedShirt77 – believe it or not that’s my kitchen.

    @Digilante – that’s probably my arm.

Comments are closed.