I have had our Doorbell switched out with an Arduino + Wave Shield for a few months now.
It hasn't been working like I had hoped. There was one problem at first where I was missing a pull-up resistor. So I installed that it worked so much better.
Now the problem was that for some reason every morning or almost every morning around 8:00am it would trip. It would trip every so often throughout the day as well.
I increased the resistor on the pull-up resistor and that helped but, it would still trip every so often. Then I decided to search good ol' YouTube for help with the Arduino and pull-up resistors. That's when I learned that every digital I/O pin on the Arduino has a built in pull-up resistor. ( DigitalWrite(doorbellPin, HIGH); )
So tonight I downloaded the newest version of the Arduino software 1.0.1 and decided to give it a try.
After making the change to the code I tried to upload my Sketch to the Arduino. And now there were a bunch of errors. Such as "error: 'FatReader' was not declared in this scope". I thought "Oh great, the new version is going to keep me from using this same code." Back to Google and the forums and then it hit me... "Libraries!"... Arghh... I hate it when I forget these sort of things.
So I copied over my WaveHC libraries into the new version and uploaded successfully.
Now it's time to plug the doorbell back in and see if this on-board pull-up resistor is the key to getting this doorbell to be fixed. I will for sure let you know if it doesn't work. Otherwise if you don't hear back from me, consider it fixed!