Embedded-Systems

ESP32 Vitals Monitor
An ESP32 reading heart rate, SpO2, body temperature, and a single-lead ECG, serving its own live dashboard over WiFi from a self-hosted access point; no router, app, or internet connection needed.
- A self-contained vitals monitor: heart rate, SpO2, body temperature, and a single-lead ECG all read from one ESP32
- Serves its own live dashboard straight from the board over WiFi, no router, app, or internet connection needed
- Plots a live, adjustable ECG waveform on the dashboard, not just a single heart-rate number
- Timestamps every ECG sample as it arrives in the browser, so the trace stays accurate even if the WiFi send rate drifts

ESP32 Stabilised Spoon for Parkinson's Disease
A self-levelling spoon for hand tremor: an ESP32 fuses MPU6050 accelerometer and gyro data to hold the spoon head level with two servos, correcting roll and pitch in real time.
- Built to counteract hand tremor from Parkinson's disease or essential tremor
- Complementary filter fuses MPU6050 accelerometer and gyro data into a stable roll/pitch estimate
- Two servos actively counter measured tilt in real time to hold the spoon head level
- Boot-time auto-calibration zeroes out mounting offset in about a second

ESP32 Bluetooth Speaker with FFT Spectrum Analyser and OLED
A Bluetooth speaker built around an ESP32: A2DP audio into a custom amp stage, with a live 16-band FFT spectrum and scrolling track info on an OLED.
- Live 16-band FFT spectrum on an OLED, computed straight off the incoming Bluetooth audio stream
- Log-spaced, self-calibrating frequency bands so quiet and loud tracks both stay readable
- Custom amp stage: resistor-divider into a PAM8403 class-D amp driving two 5W speakers
- Debounced volume and play/pause controls, with a mode button reserved for a planned AM radio source

EEE Lunar Rover
A WiFi-controlled rover that drives across a fake lunar surface, tasked to hunt down artificial rocks, and reads their signals and classify rocks.
- Awarded Best First Year Project 2026 at Imperial College London
- Designed, tested, and debugged the infrared and magnetic circuits, and soldered three of the four sensor boards
- Built a separate analogue circuits for each of the four sensors, then combined them onto one PCB
- 3D printed chassis with ackermann steering and attached the flags of the nationalities in the team
- Controlled and monitored live from a browser over WiFi

Digital Alarm Clock
A 24hr digital alarm clock I designed and built from scratch for a real client brief: a custom-etched PCB, crystal-accurate timekeeping, and a 3D-printed case.
- Crystal-accurate 24hr timekeeping, using a 32kHz oscillator and EEPROM storage
- Etched and soldered the PCB by hand, with its own dedicated voltage regulator
- 3D-printed PLA case with laser-cut acrylic faces (190×90×90mm, 500g)
- Designed end-to-end for a real client brief and tested against every spec point