Embedded Systems · York University · 2024
Pulsefex

An embedded heart rate monitor built on the STM32WB55RG microcontroller — capturing real-time heart rate and SpO2 data from sensors and displaying it live on an OLED screen.

C · STM32 Embedded Systems Circuit Design I2C Protocol
The System

What is Pulsefex?

Pulsefex is an embedded systems project built as the final project for the Embedded Systems course at York University. The system captures and displays real-time heart rate and SpO2 (blood oxygen) levels using medical-grade sensors.

Built on the STM32WB55RG microcontroller, Pulsefex interfaces with the MAX30102 pulse oximeter and TMP102 temperature sensor via I2C, with all real-time data rendered on an SSD1306 OLED screen.

My first embedded systems project — I stepped far outside my software comfort zone to learn low-level C programming, MCU architecture, and physical circuit fabrication.

C STM32WB55RG STM32CubeIDE Embedded Systems I2C Circuit Design Soldering
Pulsefex — live system demo
Hardware Stack

System Architecture

Four components working in concert — from signal capture through to real-time display.

Microcontroller
STM32WB55RG
ARM Cortex-M4 · STM32CubeIDE firmware
Pulse Oximeter
MAX30102
Heart rate + SpO2 · I2C interface
Temperature Sensor
TMP102
Ambient temp monitoring · I2C
Display
SSD1306 OLED
128×64 pixel screen · custom I2C driver
My Role

My Contributions

My primary responsibility was the low-level I2C driver for the SSD1306 OLED screen — written entirely in C. I built custom drivers to send bit data directly to the display, allowing the team to render and update heart rate visuals in real time.

I was also responsible for the circuit design and physical fabrication — laying out the connections between components, building the circuit on a breadboard, and soldering the final assembly together. First time soldering anything; learned fast.

The experience gave me hands-on confidence with MCU architecture, I2C communication protocols, hardware debugging, and real-time data retrieval — a completely different mindset from software-only development.

I2C
Protocol · custom OLED driver in C
Circuit
Design + fabrication + soldering
Real-Time
Live heart rate + SpO2 output
Team

Group Members

A five-person team from York University — each contributing across firmware, hardware, and integration over a two-month development period.

MeConnor Chan
MemberJustin Chiu
MemberLeroy Musa
MemberMame Mor Mbacke
MemberNicole Xiong

Want to know more?

Reach out to talk about the hardware build, the I2C driver implementation, or what it's like doing embedded systems for the first time.