IoT Doorbell System

A doorbell system that supports multiple doorbell buttons and many annunciators using Feathers and FeatherWings

Similar projects worth following
My wife and I are remodeling a house we recently purchased. This is a complete remodel to the studs inside.The house has four exterior doors, two stories, an addition, and a shop that is about 100 feet away. We want to have doorbell buttons at three of the exterior doors (the fourth is not accessible to guests), and want a different sound for each door so that we know which one the guest is at.We also want to be able to hear the doorbell no matter where we are. This means that we need five annunciators: upstairs, downstairs, the addition, the back yard, and the shop.I couldn't find any commercial solutions for this situation so I thought "Hmmm. Must be time to build my own."

The system is based on:

- Adafruit Feather (specific model to be determined)

- Adafruit Music Maker with Amp FeatherWing (

- Patrick Van Oosterwijck's PoE FeatherWing (

One of the units will be the "master". The doorbell buttons will be connected to GPIO pins on this unit. When a button is pressed, the master unit will send out a multicast UDP packet instructing the other (annunciator), units to play a particular sound file and will then play the same sound file itself.

  • Oops! The Feathe32u4 Isn't Going to Cut It

    David Patterson12/08/2020 at 19:23 0 comments

    I've been moving along nicely and have pretty much all of the network functionality up and running.

    I started to work on the Music Maker functionality and soon ran into a problem: Insufficient RAM and flash on the Feather 32u4.

    So I've switched my build environment to the Feather M0. I'll implement the majority of the logic and, if it fits comfortably in the M0, will then order one.

    I haven't really had to worry about space constraints since the mid eighties when I was still working on PDP-11s  ;-)

  • Now Using Visual Studio Code with PlatformIO

    David Patterson12/05/2020 at 22:03 0 comments

    I installed Visual Studio Code and PlatformIO IDE today and have been working with it for a few hours now.

    I'll say up front that I have never been a fan of Microsoft. That being said, I have to admit that the combination of VSC and PlatformIO seems to be much more stable than the current Clion/PlatformIO combination. I can build and upload every time. This is a good thing :-)

    I will also say, however, that VSC is far inferior to Clion from an IDE standpoint. Many things that are very easy in CLion are difficult or not even possible in VSC (at least as far as I have been able to determine).

    Still, in my opinion, the VSC/PlatformIO combination is far superior to the Arduino IDE.

  • Looking for a Better IDE

    David Patterson12/04/2020 at 18:17 0 comments

    I have to say that I am not a big fan of the Arduino IDE. I'm used to much more powerful environments.

    I am a developer by trade and use the JetBrains IDEs for pretty much everything I do.

    I also find the way the Arduino IDE pre-processes everything to rather baffling. I've been writing C since the early eighties so the "magic" it does seems a bit odd to me.

    Currently trying CLion with the PlatformIO plugin but it's not going very well. Lot's of problems getting it to properly recognize everything and build and flash.

    It seems really inconsistent. Sometimes I can create a project, write code, build, and flash just fine. Other times it fails utterly.

    I'm currently fighting a problem where the build/run/debug environment pull-down says "PlatformIO Upload | Nothing to run on". Go figure. ¯\_(ツ)_/¯

  • Proof of Concept

    David Patterson12/04/2020 at 18:11 0 comments

    I have successfully built a proof-of-concept using Feather ESP8266s (I already had them laying around).

    Two bread boards on my desk, one with three buttons.

    Push a button and both systems play the same sound file. :-)

View all 4 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates