Smart Door Bell
Overview
The goal of this project is to develop a "Smart Door Bell" that allows users to unlock their door using a fingerprint sensor. In addition, the doorbell will be able to capture an image of anybody that rings the doorbell to provide security so that the user can later review the images for suspicious activity if needed.
Protocols
Camera Module: I2C for configuration, SPI for capture image (on preset the settings using I2C on an Arduino so I only used SPI on STM32)
Fingerprint Sensor: UART
HC-05: UART
Goals
Interface fingerprint sensor with STM32 ✓
Be able to add/remove fingerprints to fingerprint DB ✓
Verify if fingerprint is stored in fingerprint DB (user is authenticated to unlock the house) ✓
Interface camera with STM32 ✓
Whenever pushbutton (doorbell) is pressed, capture an image and store bytes in array ✓
Interface HC-05 with STM32 ✓
Receive commands to add/remove fingerprints from fingerprint DB ✓
Transmit image data to reciever Raspberry Pi ✓
Stretch Goals
Stretch Goal 1: Create script on that listens to COM Port and can automatically process hex bytes of image to JPEG format
Create expect script that expects "0xFF 0xD9" (termination byte sequence for JPEG format) and triggers an hex to JPEG script
Hex to JPEG script: Use grep and awk to find last occurance of "0xFF 0xD8" (start byte sequence of JPEG) and all bytes that follow until "0xFF 0xD9" (termination sequence). Pipe those bytes through xxd -r -p and store command output into "date".jpeg where date is the date-time string at the moment of processing. ✓
Use gsutil cp to upload image to cloud bucket to user to view
Stretch Goal 2: Expand expect script on Raspberry Pi to turn
Expand expect script to expect string "Found" which is what we send if the Fingerprint is found ✓
Turn Servo Motor if found (call back function from expect script)
Stretch Goal 3:
Design minimal PCB for board ✓
Since the Discovery Board has a lot of components that are not required for this project, it would make sense to manufacture a minimal PCB that could interface with the HC-05, Fingerprint Sensor, and Camera Module ✓
Fabricate/Assemble PCB
Order PCB from OSHParks (Note: Need to review PCB and check loading capacitance on crystal before ordering)
Hand Assembly?
Team
Venkat Krishnan
Block Diagram
Demo Video