ENGR 103 Final Project

The goal of this project was to create a program that involved the communication of multiple ESP32s. As we had three group members, we used three ESP32s. Our project's objective was to have a website that could identify gestures of two accelerometers and compare them, while indicating if they were similar. Essentially, two of the ESP32s have accelerometers attached to them. The ESP32 can read these values, and the code then converted this into average values in the form of degrees based on the three outputs, X, Y and Z. The next step was to have those average values sent to a website that would identify and differentiate the values being received based on the ESP32's Mac Address. This way it can identify which value is coming from which accelerometer. The values were then compared, and if all of the axis averages were within 25 degrees of each other, it would send a command for the third ESP32 to change the light color. The color would change from red to green when the values are equal, and from green to red when they are not.

3 Lifts 

Artifacts

Name Description
Server Code - Data Input PHP Script that takes the axis values as inputs and stores them to a JSON file.   Download
Server Code - Data Output PHP Script that compares the axis values from the JSON file and checks if they're all within 25ยบ of each other.   Download
ESP32 Code - LED Display ESP32 Code that continuously fetches the "data output" server code to check if the positions are matching.   Download
ESP32 Code - Gesture Detection ESP32 Code that reads accelerometer data and sends that data to the server   Download
Final Project Video This video details our final project. We discuss our goal, how we achieved it, perform a demonstration, and finally discuss the challenges we faced along the way.   Link