• Pt.1 Sensor Design and Prototyping

    Octavio.Makes03/27/2019 at 15:30 0 comments

    Full video on this subject (this is literally the script): https://www.youtube.com/watch?v=Psy6lRcdGtk

    Introduction

    Old houses, like my parents’ home, comes wired with simple electromechanical doorbells. They’re a simple electromagnet with a metal rod that when energized, gets pulled to one side and hits a metal plate, like a vibraphone. When the power is cut, a spring on the other end of the rod will accelerate it to the other direction and hits another plate. These plates generally emit different tones when hit, that’s why these doorbells are known for their chime: DING-DONG.

    Doorbell chime
    Doorbell chime

    That’s all there really is to it.

    Not that I'm throwing shade at this technology for its simplicity, in fact simple is definitely better all else being equal. But this dumb ding-dong machines are hard to expand on. Adding another chime somewhere else in your house will require a ton of wiring that will be hard to hide and expensive once you realized the mess you made and call someone to repair it.

    Modern approaches like the Nest Hello or Ring Video will require you to gut all of your system and replace it with their proprietary hardware and protocols, not to mention the elevated price tag, questionable privacy and perhaps redundant camera on the doorbell.

    Don't get me wrong, it a good deal if you want something to work right off the box, but they’re not exactly what I am looking for.

    See, my dogs are getting old, and now you can't rely on them to warn you when someone is ringing the doorbell, especially while everybody else is watching a game. Adding another chime would be the easiest solution, but there simply wasn’t a pretty way to place cable all the way to the living room. And even then, a chime might not be heard in the middle of a goal and it would definitely disturb your binging session.

    But how would do you notify someone that the doorbell is ringing without being intrusive or ignored? Well, you could make a sign the lights up whenever someone rings the doorbell. But that’s easier said than done.

    So, in this series of videos, we will build just that. A Wi-Fi enabled, smart and visual doorbell system that will light up a sign when someone rings the doorbell as well as many other IoT feature that can be coded in.

    The Problem

    In this first post we will focus on building a working prototype of the sensing part of the system. The doorbell sensor. The sign and other aspects of the project will have their own post.

    To tackle this, is a good idea to define exactly what we need. Let’s start with the basics, then we'll add additional features and characteristics as we go along. First and foremost, we need a way to detect when someone is ringing the doorbell. Secondly, the mcu needs to process the signal and communicate with the sign. And finally, the MCU needs to be able to run on batteries for a long time. This breaks up the design into 3 problems we can solve, detection, communication and power.

    Part 1 - Detection

    For the first problem, there are multiple ways to check is someone is ringing the doorbell, you could sense the loudness of the plates with an acoustic sensor or the movement of the rod or even the strength of the magnetic field of the coil for example. For multiple reasons, the most reliable way to test if someone is ringing the doorbell is sensing the voltage at the coil. In my case, the doorbell's solenoid is operated with 120v ac 60hz. This may be different on your house.

    My doorbell works with 120V AC
    My doorbell works with 120V AC

    A simple and compact way to detect an AC signal is to build a simplified transformerless power supply.

    Transformerless power supplies or TPSU are what’s typically used in compact low power applications like smart relays and many other IoT devices. They work in a similar fashion to regular power supplies but instead of relying on a transformer to lower the voltage level to a usable level, they use the reactance...

    Read more »