The Problem

Chronic kidney disease costs the Canadian healthcare system $40 billion annually and is a leading cause of death. Current diagnostics require expensive lab equipment, trained technicians, and complex procedures, which creates barriers to early detection when treatment is most effective. Symptoms often don't appear until irreversible kidney damage has occurred.

The Solution

SpectraStream is a low-cost, accurate, portable spectrometer that uses miniaturized multispectral sensing to measure urinary creatinine levels. The device enables accurate at-home monitoring through simple chemical reaction analysis, replacing expensive lab-based tests with an accessible point-of-care solution.


The Final Device

SpectraStream final version, assembled PCB, and laboratory validation.

SpectraStream uses a 14-channel multispectral sensor to analyze light transmission through a urine sample that’s been mixed with a chemical reagent. When creatinine is present, it produces a colour change that the sensor detects across multiple wavelengths. A machine learning model then converts these spectral measurements into an accurate creatinine concentration reading.

Key Specifications:

  • 14 spectral channels covering 370-900nm wavelength range
  • 3Ah rechargeable battery (1000+ measurements per charge)
  • Wi-Fi connectivity for data logging and remote monitoring
  • 12-minute measurement time from sample to result
  • Portable design fitting in a 20cm cube

Skills Applied

PCB Design (Altium) Embedded Systems (C/C++) CAD Modeling (Inventor) Machine Learning (Python) Web Development Chemical Analysis Power Management Spectroscopy Medical Device Design Project Management

Background

Creatinine is a waste product generated from normal muscle metabolism that circulates in the blood until filtered by the kidneys and excreted in urine. In healthy individuals, kidneys efficiently remove creatinine, maintaining high urinary concentrations (typically 10-20 mM). When kidney function declines, creatinine builds up in the blood while urinary levels drop—making it one of the most reliable biomarkers for detecting chronic kidney disease.

Physiological origin and chemical structure of creatinine.

Current methods for measuring creatinine require sending samples to clinical laboratories or using subjective urine test strips, creating delays and limiting accuracy. SpectraStream brings this laboratory capability into the home by miniaturizing the spectroscopic measurement process.


How It Works

The User Experience:

  1. Collect a small urine sample (2.5mL)
  2. Mix with pre-packaged reagent in provided cuvette
  3. Place cuvette in device and press measurement button
  4. Wait 12 minutes for chemical reaction to complete
  5. View creatinine concentration on device display or web app

Behind the Scenes:

The device uses an AS7343 multispectral sensor; instead of measuring RGB wavelengths like a traditional colour sensor, it measures 14 separate wavelengths of light. A white LED illuminates the sample, and the sensor measures how much light passes through at each wavelength. As creatinine concentration increases, the solution turns redder, which the sensor detects as decreased blue light and increased red light transmission. A machine learning model trained on 20 calibration samples converts these spectral patterns into precise creatinine measurements.

Electrical architecture diagram and spectral responsivity of AS7343 sensor.


Technical Architecture

Hardware

  • Sensing: AS7343 14-channel multispectral sensor (370-900nm)
  • Processing: ESP32-C2 microcontroller with Wi-Fi
  • Power: TI BQ24259 charging IC with 3Ah Li-ion cell
  • Illumination: 4000K white LED with adjustable current
  • Enclosure: 3D-printed light-tight chassis with user interface

Software

  • Firmware: C/C++ on ESP32 for sensor control and data acquisition
  • Web Application: HTML/CSS/JavaScript interface for real-time monitoring
  • Data Analysis: Python with scikit-learn for model training
  • Communication: I2C sensor protocol, Wi-Fi data transmission

Key Learnings

First-Time PCB Success

Successfully fabricating and testing our custom PCB on the first revision required careful planning, thorough design reviews, and conservative component choices. This experience reinforced the value of spending extra time in the design phase to avoid costly manufacturing iterations.

Interdisciplinary Problem-Solving

SpectraStream required integrating knowledge from biomedical engineering, electrical engineering, chemistry, and software development. The most rewarding aspect was seeing how these disciplines came together to create a functional medical device that addresses a real healthcare challenge.

Integration Challenges

The most stressful moment came when our OLED display failed the day before the final demonstration. This taught me to always have backup plans for critical components and to test continuously rather than assuming familiar components will work reliably. Our earlier decision to support multiple output methods (serial, OLED, web app) saved the demonstration.

User-Centered Design in Medical Devices

Designing for elderly users with limited dexterity forced me to question assumptions about “intuitive” interfaces. The physical button controls and larger enclosure were essential accessibility features. This experience changed how I approach engineering problems: understanding the end user’s context is as important as technical performance.


Photo Library

PCB design, schematics, and CAD development • Click to view all 8 images


Documentation


Team: Lauren Stephens, Evan Gintonis, Ernest Spahiu
Advisors: Dr. Shahram Shirani, Dr. Ravi Selvaganapathy, Dr. Omar Boursalie, Dr. Qiyin Fang

Course: ELECBME 5P06 Engineering Capstone McMaster University September 2023 - April 2024

Updated: