I usually read the newspaper in the morning at breakfast. This is delivered every day in the mailbox. But it sometimes happens that I've to walk in the cold or in the rain over our driveway to the mailbox to see that there's no newspaper delivered yet.
This made me think about creating a smart mailbox that keeps track of when mail has been delivered to your mailbox. This way you can easily see from your mobile phone whether the mail has already been delivered or not.
So the smart letterbox means:
- Keep track of whether there is mail in the mailbox.
- You can monitor when mail has been delivered and when the letter box has been emptied.
- You can open the mailbox with an RFID card instead of a normal key
Step 1: Collecting Materials
IoT stuff (min. € 45 estimated costs):
- Raspberry Pi 3 Model B +
- Servo motor SG90
- Distance sensor HC-SR04
- RFID module RC522
- Magnetic contact sensor
- 16x2 LCD display
- A bunch of cables
Items for the housing (min. € 30 estimated costs):
- Wooden plank
- Small sliding lock
Tools used for the project:
- Visual Studio (front-end development)
- Pycharm (backend development)
- MySql Workbench (database)
- Various woodworking tools (for making the housing)
Step 2: Test the Sensors Separately
You best start by testing the sensors separately so that you know what the sensors can do. And what they can do for the project.
Step 3: Housing Sketch
Once you know what your sensors can do. You can start designing your case. So I made a "prototype" out of cardboard so that I could clearly see the size of the mailbox
Step 4: Make Complete Circuit
Note: to make it clearer, I placed the components separately in the diagrams. So in the final version they are indeed linked to 1 Raspberry Pi.
Step 5: Write Code and Create Website
Now that you have your entire circuit, you can actually start writing all the code for the functionality of the smart mailbox.
Step 6: Make Housing
Collect all the necessary materials for your letterbox, and start working on the housing.
Step 7: Implement Circuit in Case
Put the circuit in the case and mount all sensors and actuators in the right place.
Step 8: Database Structure
Step 9: Code
Step 10: How Did I Proceed?
- Brainstormed about what exactly I wanted.
- Test all the sensors I was going to use and see how they work exactly.
- Made the complete circuit and then programmed the backend.
- Made the frontend (HTML & CSS) and linked it to the backend
- Made the housing.
- Mounted everything in the housing.