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.