Project thumbnail image
College of Engineering Unit: 
Electrical Engineering and Computer Science
Project Team Member(s): 
Matthew Gragg, Renee Aimba, Jia Wei Cheng and Kristina Mason
Project ID: 
ECE.26
Project Description: 

The purpose of this project was to create an IOT Smart Home system that is currently using a Raspberry Pi for the Smart Hub and an ESP32 for the Smart Plug in order to communicate between different subsystems. The scope of this project consists of a central hub, a sub-system plug, and a control software. Users would be able to connect a variety of supported electronic appliances to the Smart Plug and be able to control them through the control software. 

The Smart Plug is designed to act as a wireless switch between a wall powered device and wall power. This way, one can create a wirelessly turn lamps on and off or other devices that could benefit from a wireless switch. This plug was designed to operate off of AC power, specifically in the United States where mains voltage is 120 VAC (RMS). Mains voltage is then used to power a relay and an ESP32 in order to wirelessly communicate with the software that allows for communication between the Smart Hub and the other devices on the network.  

The smart home hub connects devices in the home automation network and controls communication between them. It does so via communication with the smart plug. The hardware was implemented to power a Raspberry Pi module. This is the microcontroller used for this sub-system. The system will receive AC power via a wall outlet, which will be passed through a regulator circuit to convert it to DC power, and a filter and converter system to step it down.

The software exist throughout the entire project to serve primarily as means of communication. The two main protocols that are used is HTTP and MQTT. The main user interface is a web application that allows to assert commands to devices that are attached to the smart plug. The UI would then send HTTP requests to the backend API. The backend API would be in charge with parsing and structuring the command, and communicate it to the smart hub through MQTT. Which then finally, the smart hub would find according smart plugs based on the command, and send out the command through MQTT.

System Walkthrough Video

Project Website(s): 
Project Communication Piece(s): 
AttachmentSize
PDF icon User Guide150.92 KB
PDF icon Project Summary Document6.67 MB
PDF icon System PCBs323.18 KB
Opportunities: 
This team is open to networking
This team is open to collaboration opportunities
This team is open to employment offers

This team accepts email messages from attendees: 
aimbar@oregonstate.edu