EE292S - Sensors in Smartphones

Over the course of Fall quarter 2024, I worked together with a partner on three unique labs meant to help us develop and understanding of how various sensors in our everyday smartphones work.

All projects used a Raspberry Pi and Python programming.

IMU - Tilt & Dead Reckoning

Using a sense hat with integrated gyroscope and accelerometer, we wrote an algorithm to compute tilt of the sensor - similar to the tilt measure app on an iPhone.

The second part of the project involved using a Kalman filter to estimate position based on gyro and accel. Different algorithmic approaches showed different tradeoffs - either greater compounding error, or underestimation.

Capacitive Touch Sensing

Using a capacitive touch sensor, we implemented PRBS drive and sense lines to track touch. Our code generated both a heatmap of the touch as well as a centroid estimate.

PPG - Heart Rate and HRV Sensing

Using a fingertip PPG sensor and AD/DA board, we wrote an algorithm to record heart rate data with minimal noise. We performed an FFT analysis to determine the peak heart rate, and also computed HRV from the time-domain signal.

Previous
Previous

Custom PCB: T^2

Next
Next

3D Object Scanner using ToF