I would like to connect my doorbell (see picture) to the internet.
... but I would like to do that in a bit special way.
The idea:
In my living room I am having a AIY Voice Kit (= raspberry pi with micro and speaker) that is also running Node-RED. I would like to extend this raspberry with a kind of "recognize my doorbell" service. So this service is constantly listening to any sound (using microphone) and once it recognizes the typical sound of my doorbell it publishes a message to my MQTT broker.
Extra requirements:
- limited CPU power (let us says that it should be able to run on max 50% of the available CPU capacity of a raspberry pi 3)
- responsive : the mqtt message should be posted within 2 secs after the person has rung
- also works when there is ambient sound (television, radio, people, dishwasher).
- also works when door to the living room is open / closed.
- also works when the bell rings very shortly.
- all bell rings must be detected
- the number of false positives should of course be limited
So what is the best way of doing this ? I have no idea how I can best tackle this problem.
And of course I am especially interested in any ideas linked to Node-RED.