With how accessible online purchasing has become, it has brought significant convenience to people's lives. However, this has come with issues such as having packages being stolen. This is a common frustration shared by members of our team, as we all have experienced having our packages stolen when it is left in front of our door. Our innovation seeks to tackle this growing issue by offering a cost-effective and intuitive solution.
What it does
Using ultrasonic and IR break-beam sensors, and our state machine algorithm, Package Defender is able to detect when a package is taken from the front door. When a package is initially placed on the doorstep, it will send a notification alerting you that the package has arrived which will then provide the option to turn on the alarm. When it is alerted that suspicious activity has occurred, it will notify you on to detect when a box is taken from the front door and sound the alarm. Package Defender also stores the pertinent information including arrival time of package and when the package was stolen to be uploaded to the Google Firebase Platform. To demonstrate the versatility and adaptability of our software, we were also able to host our application on Dragonboard 410C with full functionality. This will allow us to further drive down the cost of adoption to support more applications of our system in a wide variety of environments.
How we built it
We used ultrasonic sensors to receive data regarding the position of the package on the front doorstep. Afterward, our algorithm filtered the data to determine an average distance based on the input data. The IR break sensors additionally provide an array of states to the Arduino to determine the presence of the object on the front door. First, the ultrasonic sensor sends in an array of 10 data points for the Arduino to analyze through a custom data cleaning algorithm to determine an average distance based on effective data points. Then, the IR break sensor sends in an array of states to be analyzed by the Arduino to determine the presence of the object in the container.
Using a state machine, we can manipulate the behavior of the Arduino based on its states: "empty", "device placed", and "taken." Once the device is taken, the user will be alerted and an option of raising the alarm will be given. The Android application is able to receive state outputs from the Arduino and notify the user about the specific event. Through two-way communication, users have the ability to turn the alarm on/off as well as reset back to the initial state. This allows users to gain instant notification of events pertaining to their online packages.
Challenges we ran into
We struggled to successfully communicate the Android application with the IoT device. Initially, we attempted to use a Dragonboard but ran into the challenge of a lack of documentation regarding communication. Thus, we decided to use Arduino, which had a lot more documentation regarding communication.
Additionally, we wanted to incorporate a camera to take a picture the instant the package is being taken. However, due to the limitation in technology as the camera provided in the hackathon did not work, we were unable to incorporate this idea. However, it would definitely be a feature that would be incorporated in future plans.
Accomplishments that we're proud of
We were proud of our persistence despite the challenges we faced initially with our original plans. Despite the difficulties, we were able to adapt and focus on possible alternatives in our idea. This allowed us to successfully create Package Defender to the extent where it can be featured in a demonstration. Furthermore, we believe our innovation has profound practical applications with how essential online shopping has become.
What we learned
In the past two days, we learned more skills involving Arduinos, sensors, as well as Android development. We also learned the importance of focusing on an idea with a practical application.
What's next for Package Defender
The future plans for Package Defender would be to add in the feature of the Arduino wireless communicating with the Android application. As well, the incorporation of a camera that takes an instantaneous picture would be a desired feature for Package Defender.