Hackaday Prize Entry: An Internet Doorbell

The Internet of Things will kill us all and is the worst idea anyone has ever had. However, just because something could be labeled an ‘Internet of Things thing’ doesn’t mean it’s a bad idea. The Hackaday Prize’s Internet of Useful Things challenge was all about finding the Internet of Useful things, and one of these projects is so simple yet so elegant, we’re surprised no one has thought of it yet.

[David]’s entry to the Hackaday Prize is effectively an Internet of Things doorbell. You might think an IoT doorbell would just consist of a device sending push notifications to your phone. That’s part of the project, but it gets so much better.

The brilliant part of this build boils down to a simple relay. On command, [David] can turn his doorbell off. This means no ringing doorbell interrupting meals or naps. By sending a command to the ESP32 in this little device, [David] can enable or disable his doorbell. Of course, this doorbell also sends push notifications to his phone, so if the UPS guy throws a package at his front door and manages to hit the doorbell, [David] will still hear it even if he’s upstairs, in the garage, or in the backyard.

This is the simplest and most brilliant Internet of Things device ever created. It solves an obvious problem with surprisingly little hardware. The only data this device collects is the state of a doorbell, and even if this device was completely hacked by balaclava-wearing hackers, they still can’t F5 the doorbell. This is the best the Internet of Things has to offer, and we’re proud to have the Internet of Doorbells make it to the finals of the Hackaday Prize.

29 thoughts on “Hackaday Prize Entry: An Internet Doorbell

  1. It’s interesting to see how the amount of computing power is thrown at a device not because it needs it, but because you can.

    By the way I love it and want one I never hear my doorbell.
    Perhaps a camera attached with person recognition added so it triggers when a person approaches sends a SMS including a photo as well.

    Then if it detects a cat about to spray on the door it activates a flame thrower or some other suitable incendiary devices to toady the offending feline….

    Talk about feature creep – how much processing power did he say he had ;-)

  2. “The only data this device collects is the state of a doorbell, and even if this device was completely hacked by balaclava-wearing hackers, they still can’t F5 the doorbell.”

    They can F5 the phone though.

  3. This really is the best use of IoT I think I’ve seen. The UPS guy insists on ringing the bell, which drives the dog crazy – he loves delivery people. I already get delivery texts for most things, but having my doorbell notify me in a quiet way would be great, too.

    Well done.

  4. Why is that so complicated? Why is this not enough?

    Door switch ⟶ optoisolator chip ⟶ ESP ⟶relay where doorbell switch once connected to chime.

    Then the ESP always sends an MQTT message, and also reads instructions as to what to do when the button is pressed. If you want a little more complexity and a whole lot more functionality add indicator light for silent operation and or MP3 playback module and speaker for custom messages. This also lets you read button press sequences so that you can identify expected visitors.

    1. Mine does away with the opto-isolator and just runs directly from a digital in pin to the doorbell button. Uses an wemos d1 with associated relay and communicates via Mqtt. Total cost less than $10 excluding existing doorbell hardware. Probably less than $5 if you exclude shipping.

      Opto-isolator is probably a good idea, however the wemos are fairly disposable on their own.

      Has been running fine for a year or so.

      1. Yeah, the button is a potential path for static electricity discharge off a person’s finger. That and potential security weaknesses, so isolate just to be sure.

  5. My first ESP8266-project was a wireless doorbell connected to Azure.
    No relays etc. needed, only seperating a line on the existing microcontroller to get both notifications, and allowing the ESP to control the chime. Also replaced the batteries with a powersupply (I hate to replace batteries).

    I developed a app for iOS, Android and Windows Phone, in which the household members could subscribe to one or more events, like “Doorbell”, in specific
    Then I added support for Philips Hue, so that my office lights flashes (breath cycle) when the doorbell rings.
    I’m normally wearing headsets, so I can’t hear the doorbell or my phone.

    I Also added a homepage hosted in Azure, which displays device information (like supply voltage, datetime for last message etc. for each ESP8266), and event history.

  6. I’ve had pretty much that exact thing wired up for about a decade now, minus the ESP8266, but instead linked to an existing host via usb. Works a charm, never fails to report when someone rings.

    I’ve experienced, though, that it made me immensely nervous when people rang in my absence and I didn’t know who or why. Dunno, perhaps I’m worrying too much about burglars trying to figure if somebody is home?

    Anyway, attached the host to a speaker and now, whenever somebody rings in my absence, a virtual dog is going nuts barking and growling behind the door. :-D

  7. Ah, I love coming to Hackaday comments for my daily dose of mean, “I can/did do it better”, and “This is stupid”. I got Bingo on this comment section so far.

    1. Ever notice how the “no big deal, done that” commenters never grace us with a link to their awesome write up of how they did it better for less and on time? Links or it didn’t happen, amiright?

  8. > if this device was completely hacked by balaclava-wearing hackers, they still can’t F5 the doorbell.
    They can. They’ll slap a F5 sticker on the doorbell button then press it. Easy peasy.
    BTW, today’s hackers don’t wear balaclavas. They wear “Hackercrombie”-branded shirts.

  9. This is cool for the silencing bit, but I ended up using a small x10 remote with a reed switch wired onto one of the buttons, Putting the reed switch against the solenoid, I get a reliable firing of the button when the doorbell rings, but then you need something to listen for the x10 rf signals

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.