Do you wake up feeling tired? Do you wake up sometimes in the middle of the night gasping for air? Does your partner complain about your super high snoring noise?

Chances are you are one of the 42 million americans suffering from sleep disorders and that's just an estimate. Sleep apnea is a condition in which you stop breathing for short periods of time during sleep and over time it can lead to many problems such as High blood pressure, heart disease, stroke, diabetes, depression, hypertension, becoming less productive, etc. The main problem is that 80-90% of sleep apnea and other sleep disorders remain undiagnosed due to lack of accessible home sleep monitoring devices for everyone. Also, if you wake up one day thinking you have a sleep disorder, you will be hooked up with a bunch of wires all over your body and asked to sleep in a hospital for 1 day from which they will make your entire treatment plan.

We want it to be convenient for everyone so our plan is to start with monitoring of snoring sounds. If we find that you have been snoring chronically for a period of a month, the app will advise you to put on heart rate and spO2 sensor on your finger. If we still find abnormal patterns in HR and spO2 data as well, the app will advise you to go see a doctor.

What it does

The device uses a series of sensors such as heart rate, spO2 (O2 saturation in blood), and microphone to record data that contribute to the symptoms of sleep apnea. The audio sensor is used to detect chronic snoring sounds, the heart rate sensor is used to detect abnormal heart rate and SpO2 sensor to detect abnormal O2 saturation levels in blood. The information is transmitted to a web app to visualize the data for a day-to-day analysis of your sleep patterns.

How we built it

We attached the sensors to the Maxim Integreted microcontroller, connected it to a pc and were able to read the data through C++. We used PySerial to retrieve the information passed through the serial port and write it to a csv file which we can parse and visualize using D3.js. In our front end, we used HTML, CSS, and Javascript to present the data in a clean, intuitive interface that allows the user to easily see history, trends, and various relevant information.

Challenges we ran into

This was our first time working with Maxim microcontrollesr and sensors, so it took time to get used to using it. We did not find enough sleep apnea data to test our model. The MCU did not have a bluetooth or wifi module to transfer data wirelessly so we had to use Pyserial to generate csv files of the data.

Accomplishments that we're proud of

Serially transmitting data from MCU, visualizing data using d3, offline development

What we learned

We learned how to interface with various Maxim Integrated micro-controllers and sensors. We also learned how to visualize using the D3 Javascript library. We were able to communicate with the device through Windows, OSX and Linux operating systems. We also learned how to serially acquire data and store it locally using PySerial.

What's next for Sleep Easy

We want to make it to an all round sleep device to monitor everything while you sleep including you sleeping environment, temperature, ambient light, music, and provide you with data so you know what environments you sleep best in. We would like to integrate motion sensing devices and the addition of ambient light, temperature sensors to adjust for a more comfortable sleeping experience and see what environments you sleep best in. The information would communicate with IoT devices where applicable. We want to transmit all data through wifi. It would also be deployed on a server so that data can be automatically transmitted after recording. We also want to use machine learning for abnormal pattern recognition based on data collected and give feedback to user. We would also like to get the data into a mobile app. Thus, this can be used as a perfect tool for early diagnosis of sleep apnea for everyone.

Built With

Share this project: