how do smart watches count your steps?


It’s on your arm not your leg so how does it actually know how many steps you’re taking? And do things like how fast you walk and how long your stride is make a difference?

In: 160

By using the gyro mechanism inside to simulate the old style pedometers which used an arm and a spring to bounce with your walking movement. The detected movement would be counted as “steps”.

Modern devices also use GPS to determine if you are actually moving and how fast so that it can more accurately track walking and not give out free “steps” when you are exercising in place, riding a bicycle or driving in a car.

Gyroscopes can measure movement and inertia. Your arms move in a natural cadence directly proportional to your leg movement. This is calculated to determine steps.

They have an accelerometer chip in them which measures the change in speed. As your arm swings forward and backward, like a clock pendulum, the acceleration can determine a step. For example, when your arm at the end of the forward swing it is essentially stopped, so that can be considered one step, then when your arm is stopped on the back swing that would be another step.

Every movement humans do has a certain pattern at any given point on your body, that pattern can be filtered and spotted

Smart devices have gyroscopes and accelerometers in them, looking for a repetitive up-down movement regardless of orientation (the math itself is much more complex)

I have a relatively new model Fitbit and honestly it’s full of shit. It pretty evidently can’t tell the difference between me gesticulating enthusiastically while teaching and actually walking around. Thankfully I don’t take it too seriously but it does give me a jolt when it starts buzzing all of a sudden, congratulating me on 10k steps, and I’m just …doing a little dance about Tutankhamun, I guess 😂

They use an accelerometer. When your foot hits the floor, there is a spike of deceleration and this is counted as a ‘step.’

Generally it won’t make a difference how fast you walk or how long your stride is. If you walk so slowly/smoothly that there’s no significant deceleration though, it won’t count them.

When people walk there is always a small movement of the upper body and arms as well. So your smart watches are actually counting how many times your arm moves forward and backward.

This is pretty much unrelated to your stride length and walking speed as you always move one leg and the opposite arm together. So one arm movement equals one step.

Based on the assumption that when you walk you swing your arms opposite your legs, the number of arm swings should roughly equal the number of steps. The count can be thrown off if you’re walking and *not* swinging your arms… ie: pushing a grocery cart or holding the handles on a treadmill. And, it might over-count steps if you are swinging your arms but not actually walking… like if you’re raking leaves or waving your hands in the air like you just don’t care.



There are sensors that measure acceleration in all directions, and can detect the the abrupt change in acceleration each time you set your foot down, provided you walk “hard” enough.

Just to give you an idea of how sensitive these sensors are:

>First, we propose PINlogger.js which is a JavaScript-based side channel attack revealing user PINs on an Android mobile phone. In this attack, once the user visits a website controlled by an attacker, the JavaScript code embedded in the web page starts listening to the motion and orientation sensor streams without needing any permission from the user. By analysing these streams, it infers the user’s PIN using an artificial neural network. Based on a test set of fifty 4-digit PINs, PINlogger.js is able to correctly identify PINs in the first attempt with a success rate of 74% which increases to 86 and 94% in the second and third attempts, respectively.