Apps and online services

About this project

„Alexa, who is at the door?“ - A face recognizing Arduino camera using AWS Rekognition for my grandmother

Ever wanted to know who rang your front door by asking Alexa?

Imagine it rings at your door and you could just ask Alexa who’s there. Without going to the window or opening the door, you know if it’s a friend or a stranger, because Alexa tells you the name or if it’s an unknown person.

We had the idea to build this solution, since our grandmother is nearly 80 years old and short-sighted. Due to the distance of her garden door, she can hardly see who rings the door when looking out of her window. To help her distinguish people ringing at the garden door, she should be able to ask Alexa, without even the need to go to the window or opening the front door.

Demonstration Video

(Grandma hardly speaks English ;-))

To build the solution, we used:

an Arduino Uno with ethernet shield (can easily be ported to an esp8266 for wifi connectivity)

We wrote an Arduino sketch that, when the switch is pressed, records an image with the arducam. Due to memory constraints, the image is not saved locally, but read from the camera buffer in chunks and directly posted using a http put request to Amazon Web Services, where a Lambda function (via AWS Api Gateway) processes the uploaded image, stores it in S3 and then passes it to AWS Rekognition. If the face is already known, the name of the person is returned. If an unknown person rings the door, the image is not deleted but stored to be tagged later on.

Using any of your Alexa devices, you can then use the smart cam skill we created.

There are two intents:

- „...who rang the door?“: If the person has been tagged before, Alexa will say e.g. „Peter rang the door“

- „...the person is Peter“: if a previously unknown person rings the door, this will associate the name to the face. Alexa will then confirm the association, and remember the face.