Email Notifications

Setting Up The Porch Vault Email account was set up to use as an automated email service. In order to set this up to do so two things needed to be done. First the gmail account needed to have outside applications access sending from the email account. The second was setting up an SMTP service on the back end server. Setting up the gmail permission was straightforward. Then setting up the SMTP service required setting up an email sending service on the backend of the web server. »

Author image Sean O'Sullivan

Mechanical Redesign

The original design of the porch vault enclosure was using welded sheet metal. This would create a strong body and minimize the number of seams in the design. However, as the Ontario-wide January lockdown was enacted, the feasibility of this solution came into question. Heavy use of the University of Waterloo’s E5 student machine shop would be needed for the sheet metal components, and as it would be closed for student use for an indeterminate amount of time, a simpler solution was required. »

Author image Bennett Fleming

Electrical Fabrication Revisions

Soldering It was decided that a perforated board, or perfboard, would carry most of the discrete electrical components, since it could easily slide on an off of the Pi. Next, wiring harnesses for the gyro and keypad were cut and crimped into dupont connectors. this allowed for ease of switching out faulty components. The relay, LiPo battery, and solenoid were also wired up using custom cables and connectors. A benchtop test was performed using the discrete components and a breadboard. »

Author image Matthew Romlewski

Authorization API

The first and arguably most important part of the Back-End service is the authorization API. Purpose The authorization API is built to handle authorizing clients. Clients can be the device or the user of the chrome extension. To the authorization service there really is no difference between the two. The authorization API is there to take in a client name and password. It then returns the client a JWT. The JWT is used to ensure that the client can secure its connection with the product API allowing the product API to remain stateless. »

Author image Sean O'Sullivan

Electrical Design Revisions

Overview PorchVault’s electrical design is centered around a Raspberry Pi Zero-w, which is equipped with Wifi and general purpose inputs/outputs (GPIO). This made it simple to integrate any peripheral devices needed and connect to the pin validation server. Initial Designs Integrating the keypad, inertial measurement unit (IMU), speaker, and LEDs was as simple as planning in wiring buses and resistors to their GPIO pins, whether it be I2C or digital IO pins. »

Author image Matthew Romlewski