Sleep Tracking using an Arduino

Sleep Tracking

Background and motivation

This project was motivated by two things: my almost complete inability to get out of bed in the morning, and my fondness for recording data from routine activities and making graphs with that data.

Sleep Tracking

My main problem with waking up in the morning is that feeling of grogginess along with an intense desire to sleep more. However, I’ve noticed that sleeping without an alarm clock, and just waking up whenever I wake up, helps. And I’ve also noticed that sometimes when I wake up I am dramatically more refreshed than usual. Reading about sleep on the web led me to learn more about sleep cycles. One interesting page (“The power of the Sleep Cycle”) claimed that it wasn’t the amount of sleep one gets, but the part of the sleep cycle we wake up in. The author suggested that, because we sleep in cycles about 90 minutes long, we should aim to wake up in the transition between sleep cycles, since the brain is more alert and refreshed at that time. He quotes from the Center for Applied Cognitive Studies:

“Studies show that the length of sleep is not what causes us to be refreshed upon waking. The key factor is the number of complete sleep cycles we enjoy. …A person who sleeps only four cycles (6 hours) will feel more rested than someone who has slept for 8 to 10 hours but who has not been allowed to complete any one cycle because of being awakened before it was completed…. ”

Here’s another paper of which I have since learned, that describes a “wearable interface for controlling the awakening time” based on this hypothesis:
Biorhythm-Based Awakening Timing Modulation


The length of the sleep cycle varies for each person, and averages about 90 minutes. I wanted to try to measure the length of mine, without having to wake up and check a clock. I also wanted to get an idea of how much I naturally move around during the night, and what patterns I might find therein.Sleep Tracking with Arduino diagram


Read more: Sleep Tracking using an Arduino

Leave a Comment

Your email address will not be published. Required fields are marked *