We all know that there are very few people who declare all their income to the state. We always run into the expression "keep your money on the mattress". Technology is evolving, and the money is coming.
This safe comes as a solution to this problem. The safe has 3 states, given by the 3 LEDs. The closed state in which the yellow LED is continuously lit, the wrong password state given by the red LED and the open state given by the green LED. When the safe is open, the password can be changed by introducing a new password.
The controller of the safe has five buttons and a display. Four buttons are used to control the digits value(each button for a digit, when pressed the value is increased by one and from 9 goes to 0) and one is used to validate the password, which is used to send the password to the safe module via kafka on a public IP.
Another important part of this project is the kafka server. It must be installed on a cloud server because a public IP is required. This solution was chosen for its lowest difficulty of being used remotely. The VPS comes with debian 10 installed. The next step is to connect to it with putty (SSH2 connection). After that you can follow this tutorial to install and run kafka on your machine: https://www.digitalocean.com/community/tutorials/how-to-install-apache-kafka-on-debian-10
So, how Kafka works? Kafka stores key-value messages that come from arbitrarily many processes called producers. The data can be partitioned into different "partitions" within different "topics". Within a partition, messages are strictly ordered by their offsets (the position of a message within a partition), and indexed and stored together with a timestamp. Other processes called "consumers" can read messages from partitions
After the Kafka server setup is done, the pi boards also need the client packages to connect. More details on how these can be acquired are found on: https://pypi.org/project/kafka-python/.
The stepper motor is used for the safe lock. It has 2 possible fixed positions, one for closed safe and one for open safe. The motor is turned on to open the safe when the owner enters a correct password and the safe is closed. The button also acts on the stepper motion, every time when it is pressed and the safe is opened, the lock closes.
After the development of the project was over, we used system services to make the project Plug and Play (connect pi to a power source and our program starts automatically). More details on how to achieve this can be found at https://www.raspberrypi.org/documentation/linux/usage/systemd.md.
Videos and pictures:
Controller with display and buttons for password input
For the implementation of this project we used the Plusivo Pi Zero W Super Starter Kit. The documentation for the kit with examples can be found here: http://www.kits.plusivo.com/.