For my Computer Networking course, I worked with three other students to build a classroom instant messaging and file-sharing application that would allow a one-to-many connection from professors to students and a one-to-one connection from students to professors. We used multicasting to reduce the bandwith of the messages and files sent from the professor. We used UDP as our transport layer protocol. Since UDP is not reliable, we added our own loss-detection and retransmission layer on top. Watch a video demo of our app’s messager and file sharing capabilities.

I had just moved to a new apartment, and was constantly looking up directions on my phone. It would have been a fine solution, except I was usually biking while doing so. I wanted to create a safer option for people who use their phones to give them directions while biking. 

For my Tangible User Interfaces course, I worked with two other students to design a system where a user could look up directions on their (Android) phone, and then safely store it in their backpack. The phone would communicate over bluetooth to a microcontroller, which would cause either the left or the right glove to vibrate to indicate a right or left turn approaching.

I was responsible for the gloves, and sewed in a microcontroller, LEDs, and vibrating motors. I also programmed the microcontroller in C so that it would control the operation of the LEDs and motors, and helped create the interactive mockup of our “app”.

To learn more, you can check out the project website, a tutorial video I star in, and the blog I kept for the class.

In my Principles of Engineering course, we were tasked with creating a product that has a significant electrical and a significant mechanical component. I worked with two other students to build a Wii-fit like balance board that a user could stand on to control different applications. My responsibilities were programming a game and a Google Maps launcher that would work with input from the board. For more details, check out the project website.