1. By Jonah Kohen
MS Electrical Engineering (Exp Jun 2017)
Stanford University
Principal Investigator: Prof. Gregory Kovacs, M.D. Ph.D.
2. Congenital disease affecting 1 in 3,000 –
10,000 individuals.
Routine cardiovascular checkups need to be
done. Emergencies can result if heart is not
routinely monitored.
Notable Cases: Possibly Abraham
Lincoln, possibly Michael Phelps.
3. Stanford Hospital is one of the only clinics in
the tri-state area for treating patients with
Marfan Syndrome. For patients living far
away, it can be hours of driving just to get a
simple checkup.
YOU CLINIC
4. The RCEP is a handheld telemedical device
that measures ECG, stethoscope, and pulse
oximetry data.
Data is transmitted via video conference. The
doctor can tell the patient where to place the
device and analyze the incoming data.
Can be done in the comfort of the patient’s
home.
5. Circular handheld device with four electrode
pairs placed around the perimeter of the
device.
Patient places the device at various points on
their chest.
Haptic feedback guides movement. (varying
levels of vibration depending on
distance from desired spot).
6. Nathan Volman – PhD student: Project leader,
Hardware System Design
Mouhammad Fouruzanfar – Postdoc: Signal
Processing and Extraction
Jonah Kohen (me) – MS Student: Firmware
Programming
7. MAX32600 Wellness Measurement
Microcontroller. 24 MHz, ARM M3 Processor
High resolution AFE (16 bit channels, 500
ksps), useful peripherals, good part
ecosystem.
Programmed in C, Eclipse IDE.
9. 16 single-ended or 8 differential channels,
up to 500 ksps sampling rate.
Output can be optionally passed through a
PGA with gains of 1X, 2X, 4X, or 8X.
One channel can be sampled continuously, or
a set of channels can be scanned.
Averaged samples are placed into a 16 bit
FIFO 32 samples large. Interrupt flag is set
when FIFO is near full.
16
bit
ADC
Incoming
Data
10. At the time of programming, we did not have
the electrodes connected to the ADC inputs,
so we started with configuring one channel.
One channel is sampled continuously,
samples are taken in bursts of 8 and
averaged. PGA is set to amplify signal by a
factor of 8.
The actual sampling rate becomes 52.6 ksps.
16
bit
ADC
Incoming
Data
11. PMU is another name for Direct Memory
Access Controller (DMA).
Once the ADC FIFO is near full, an interrupt is
triggered, alerting the PMU to transfer the
data to the CPU.
Once the PMU has filled a 2048 bit buffer of
samples, encryption begins.
Peripheral
Management Unit
(PMU)
Output
when
ADC
FIFO full
12. Encryption needs to be done to secure the
transmitted medical data.
The encryption module has been configured
to run 256 bit AES ECB encryption.
The engine encrypts 16 8-bit blocks at a time
(128 bits total).
We need to run the TPU 16 times for 2048
bits.
13. The device is configured as a CDC-ACM
device.
The output data rate of the transceiver alone
was measured to be 1.25 Mbps.
14. 1.25 Mbps corresponds to roughly 1.25 MHz.
If a sample is 16 bits, this corresponds to an
output data rate of 1.25 Mbps/ 16 bits per
sample = 78.125 ksps.
Since data comes in at max 52.6 ksps, the
output data is not a bottleneck
15. To encrypt one chunk of 16 8 bit blocks, it
takes 1/32000 seconds, meaning it can
encrypt 32 kblocks per second.
If a block contains 8 full samples, that means
it can encrypt 32 * 8 = 256 ksps, which is far
faster than the adc.
There are no bottlenecks in our system. All
data is transmitted and encrypted properly.
16. ECG data, for all four electrode pairs, must be
sampled at1.2 kHz.
Stethoscope has phonocardiogram and
seismocardiogram, which has a max
frequency of 2 kHz, so 4 kHz Nyquist.
Pulse Ox = 400 Hz Nyquist.
Total Frequency is roughly 6 kHz, but we
want 10 kHz to be safe.
17. Maxim does not have nearly as large of a user
community as Arduino.
The API Guide was extensive but not
sufficient to cover boundary cases.
Result: Lots of debugging with JTAG.
18. The RCEP is supposed to be a wireless
handheld device.
USB was chosen initially because it has a fast
ODR and can be configured easily via the API.
This was meant to be a temporary solution
until we could properly configure the BLE
module.
19. All of our medical data needs to be
transmitted at MINIMUM 10 kHz
Unfortunately, BLE can only transmit at about
4 kHz.
Best alternative is a conventional WiFi
transceiver (RN-171), but power consumption
is worrisome.
20. Need front end video conferencing software
to be developed.
Haptic feedback so doctor can guide device
placement.
Reproduction of 12 lead ECG from raw data +
compression.
Work out wireless transmission.
Editor's Notes
This is the project I pursued last year. I am not in that lab anymore but I thought it was a good project to talk to you about.
ECG = Electrocardiogram
Seismocardiogram = stethoscopic measurement of the heart.
Pulse Oximetry = measuring oxygen in blood via a shining light. Also measures heartbeat.