Project

# Title Team Members TA Documents Sponsor
17 Shower Music Controller
Amar Patel
Shalin Joshi
Varnith Aleti
Eric Tang design_document1.pdf
final_paper1.pdf
presentation1.pdf
proposal1.pdf
video
# Shower Music Controller

Team Members:
- Shalin Joshi (shalinj2)
- Amar Patel (amarcp2)
- Varnith Aleti (valet3)

# Problem

People often like to listen to music when they are in the shower, but it is very inconvenient to control/play specific music with wet hands, foggy screens, and with devices that aren't waterproof. If the person wants to switch the song, it leads to issues of getting the phone wet, having to step out of the shower, or just being stuck with whatever song is being played.

# Solution

The solution is a waterproof device that can be stuck to a shower wall, which allows the user to play, pause, skip, and even search for their playlists/songs from Spotify. This device will act as a Bluetooth remote interface to connect to a phone companion app. The app will be able to call the Spotify API and communicate with the device in order to do each task. The device will include buttons for playback actions and D-Pad buttons to navigate the UI on a screen.

# Solution Components

## Subsystem 1 - Embedded UI (Screen + Buttons)

Displays different menus and music lists (search, my playlists, now playing) and captures user input by using physical buttons. The buttons will be different ones for playback controls (play, pause, skip, volume) and a d-pad to navigate through the menus and songs on the UI. D-pad implemented using 4 tactile switches (UP/DOWN/LEFT/RIGHT) arranged in a cross layout plus a center SELECT switch, all mounted on the PCB and covered through a waterproof silicone membrane.

Components:
- SPI TFT display module using ILI9341 controller
- Tactile Switches

## Subsystem 2 - Microcontroller + BLE Communication

Runs the software for the button controls and has Bluetooth communication with the phone. Sends commands (play/pause, search query, select track) and receives results/status updates from the phone.

Components:
- ESP32 Microcontroller

## Subsystem 3 - Phone Companion App + Spotify Integration

Handles Spotify authentication and all Web API requests. Translates Bluetooth messages from the device into Spotify actions and returns data back to the device. The app will do all the music control and Spotify connections and communicate with the device in order to know which actions to perform

Components:
- Mobile app using Swift or React
- Spotify WebAPI

## Subsystem 4 - Power, Charging, and Water-resistant Enclosure

Provides safe portable power, charging, voltage regulation, and physical waterproofing suitable for shower spray/steam. This subsystem will ensure that the device and its components are water-resistant and have charging capabilities. We will make sure that water doesn’t harm our device by enclosing it in a 3D-printed enclosure. The screen will be covered by a clear acrylic/polycarbonate display window, and the buttons will be lined with a silicone membrane. When the user wants to charge the device, they will remove it from the enclosure and shower and charge it elsewhere.

Components:
- LiPo Battery
- Li-ion charger IC/module (USB powered charging)
- 3.3V regulator for MCU and display
- Waterproof enclosure elements
- 3D printed enclosure for the device board and circuitry
- Clear acrylic/polycarbonate display window
- Silicone membrane for buttons

# Criterion For Success
- From the shower device, the user can successfully perform different playback actions with a maximum 1-2 seconds of delay: Play/Pause, Next Track, Previous Track, Volume Up/Down
- Users can enter a search query using buttons, submit it, receive at least 5 search results on the device screen, select one, and start playback.
- Device can connect through bluetooth to phone companion app and remain connected through the entire duration of a shower
- Device remains functional after 5 minutes of exposure to shower spray/steam.
- Device operates for at least 2 hours of active use on a full charge.


Digitizing the Restaurant with Network-Enabled Smart Tables

Andrew Chen, Eric Ong, Can Zhou

Featured Project

# Students

Andrew Chen - andrew6

Eric Ong - eong3

Can Zhou - czhou34

# Problem:

The restaurant industry relies on relatively archaic methods of management and customer service. Internal restaurant computer systems are limited and rely on staff members to monitor customer status. Restaurants lack contact-free transactions for clientele.

# Solution Overview:

Our solution to this problem is to develop a standalone LAN restaurant network system to manage customer status and occupancy for restaurants without the need for personnel to monitor it manually. Along with this, to accommodate for contact-free interactions, we propose a system for payment methods. To address customer preferences, we will provide height accommodation built into the table for different types of people.

# Solution Components:

[Self-adjusting Customer Height Accommodation] - The table will be held up with a linear actuator, thus allowing for the overall height to be adjustable. The table will adjust its height accordingly to the customers’ heights once they sit down. We plan to make the table adjust the table’s height by measuring the distance between the bottom of the table with the customer’s knees when they are sitting down using ultrasonic sensors.

[NFC Payment and Card Reader Payment] - The table will have NFC reader and magstripe reader for contactless delivery. The payment data will be sent to the centralized hub for processing and confirmation.

[Table Pressure Sensor] - The status of a table will be gauged based on the amount of weight on the physical table itself. An occupied (or even just an unoccupied and dirty table) will be marked as such since the weight of excess food, water, plates, and whatever else the customer may bring will be measured by this pressure sensor.

[Computer Mesh Network] - We plan to create a mesh network of raspberry pi’s to track the status of tables in a restaurant. This network will communicate via some form of wireless communication (Wi-FI, bluetooth, or Zigbee).

# Criterion for Success:

This project seeks to create a solution in which restaurants can minimize customer interaction with features that accommodate individual needs, such as the height of the table and payment methods. This project will be considered successful with a working prototype that includes features that may be included in an actual restaurant setting.

Project Videos