We want to take a couple paragraphs to explain how our motion sensor works. This is the part of the monitor that reports body position and wake/sleep. Maybe you are curious how we know when your baby is awake or asleep, or maybe you want to know why we always say your baby is lying down when they are in a bouncy chair. This will tell you why!
We use an accelerometer to sense motion. It’s pretty tiny (about the size of a small ladybug), but it’s probably the same kind of device you have in your smartphone. It tells us if and how your baby is moving. This is straightforward: when your baby moves, he or she accelerates, the sensor picks it up, and we report back to you. It also tells us body position. For this, we basically look for gravity pulling on the accelerometer, we notice that this is the direction of the ground, and figure out how your baby is positioned relative to the ground.
A ladybug and an accelerometer. Sizes are approximate.
If you’re interested in how we do that last part (direction of gravity, relative body position, etc.) we explain it in greater detail below. Or you can totally skip this part if you think that’s boring.
Technical interlude:
The accelerometer reports the acceleration in 3 axes—x, y, and z—in the reference frame of the accelerometer and the turtle. What we really want is acceleration in the reference frame of the baby. So the first thing we do, before looking for gravity or anything else, is transform the data into the reference frame of the baby.
Once we have the data in the new reference frame, we start to look for gravity. The accelerometer is always measuring gravity, whether the baby is moving or not. If the baby is perfectly upright and still this is pretty easy. A graph of the acceleration would look like this:
We pick out that gravity is in the -x direction and voila! We know the baby is upright. It’s a bit more complicated if the baby is not perfectly aligned along an axis or moving, but it’s the same basic idea. If we read constant accelerations in multiple directions, we can combine them to figure out which direction gravity is in (say, 45° between x and z, which means the baby is laying back), or if we read varying accelerations we can look for the components that are constant.
Technical interlude over.
When your baby is at an approximately 45° angle, such as in a reclining bouncy chair or maybe a swing, we run into a bit of a problem. Do we say your baby is upright or lying down? We’ve made the decision to err on the side of lying down, since we figure this is what babies do best and most of the time you’re using the monitor when your baby is sleeping.
Then we have to figure out if your baby is awake or asleep. This is not as trivial as it sounds: babies move when asleep and sometimes don’t move very much when awake. We set thresholds based on thousands of hours of sleep data from babies, and these thresholds are constantly adjusted and tweaked as we log more hours. A common motion graph might look like this:
This approach doesn’t work perfectly for all babies. For instance, younger babies move less overall, or some babies kick in their sleep, which may result in some strange notifications. Also, the same weight is given to waking as it is to sleeping, though it is more likely for a baby to rustle in their sleep than to stay perfectly still when awake. This is an example of something we’ll be improving in the coming weeks.
Hopefully this clears up some questions and helps you understand how Mimo is monitoring your baby. We’ll be doing more posts like this in future to explain how the different components of the Mimo monitor work. We hope it helps!