Ask / Submit

An app for running efficiency?

asked 2014-03-22 23:50:30 +0200

vattuvarg gravatar image

updated 2015-10-07 15:14:14 +0200

I used to be a shitty programmer. Now I'm a lousy runner instead (and a fairly good maker of sandals). But I still get some strange ideas from time to time.

But first a question: How accurate is an accelerometer? Would it be possible to calculate the efficiency of running with the data from the accelerometer?

Overstriding, as an example, means that the foot lands too far in front of the center of mass. So the leg decelerates the speed. Does the accelerometer measue that? If it does then the telephone should be able to record it too.

I would like to improve my running efficiency and there's probably a few others out there with the same goal.

Could someone make a primitive app for biofeedback when running? An app that shows the accelerometer data in a 3D-graph somehow?

Apparently the accelerometer is sensitive enough to enable snooping of keypresses for a keylogger. My guess is that it should work fine for running analytics.

Look at the video about collision free running. Daniel Lieberman knows his stuff, but the statistics are much clearer.

The Wahoo Tickr seems to have a smoothness monitor.


Lumo Mbody running shorts Is a similar concept.

edit retag flag offensive close delete

3 Answers

Sort by » oldest newest most voted

answered 2014-05-02 19:25:38 +0200

juiceme gravatar image

Interesting idea but I am not sure it is feasible.

For an accelerometer to measure such running parameters accurately, I guess the phone would need to be strapped to your leg, and pretty tightly too so that there's no possibility of it to swing around even a small amount.

Also, for biofeedback, you cannot use any kind of display as how do you glance at it while running, even if it was not strapped to your foot?? Maybe some kind of audio feedback would be viable. (or vibrating the device when it detects unefficient stepping?)

edit flag offensive delete publish link more


Have a look at the app called "level" in the jolla store. I am pretty convinced that the accelerometer is sensitive enough to pick up the necessary forces even if strapped to the chest. Combining with a runner's metronome would help with breathing and cadence. One pitch for exhale and another for inhale. A lower pitch for effective steps and a higher pitch for wasteful ones. Looking down at the screen would change the posture for the worse.

A simple prototype app should be easy to test. I honestly think the idea is feasible. The app doesn't need to be very accurate to improve the running efficiency to at least some degree.

vattuvarg ( 2014-05-03 00:21:47 +0200 )edit

With some luck the app will even be able to suggest the best cadence for the user somehow.

vattuvarg ( 2014-05-03 00:28:47 +0200 )edit

Well, you could cook something with text to speech (such as Espeak) fairly easily.

MartinK ( 2015-10-07 16:16:00 +0200 )edit

@MartinK - I simply don't understand what you are talking about.

vattuvarg ( 2015-10-07 17:13:38 +0200 )edit

Could be what @MartinK is suggesting that the device could act like a "virtual coach" :)

With text-to-speech it could give verbal encouragment to the user!

juiceme ( 2015-10-07 18:07:45 +0200 )edit

answered 2015-10-07 20:15:04 +0200

Jeremy gravatar image

updated 2015-10-07 20:21:58 +0200

Hi everyone (first post around here,yay!)

Another lousy runner here, multiple really bad injuries because I did some classic mistakes when starting running, and also still shitty programmer. This kind of app would save my feet, my back and my legs.

The accelerometer in the Jolla is quite sensible (but noisy at high frequencies). As juiceme mentioned more than one year ago, the first problem, which might be solved with some DIY, is to strap the phone on your body. Best places would be close to the center of gravity (so usually pelvis position/in the back - which is the position in the literature for posture analysis) or obviously on a leg. I might be tempted to say that we can use the I2C connectivity of the Jolla to have another sensor (there are some nice really small I2C 9 axis sensors from company like Invensense)... Or simply use a bluetooth accelerometer... but let's focus with only one sensor, in particular the accelerometer from the Jolla.

For me there are (at least) two way to see the analysis :

  • We can try to assess the quality of the running, in particular the "stability" of the running dynamic. There is a couple of things existing to analyze the walking stability and reflecting the physiological behaviour of the entire body (neuromuscular systems, joints, etc.). Those methods are however, from experience, very CPU and real-time-unfriendly (non-linear time series analysis). But we can look into the walking/gait analysis science to have some idea anyway :) !

  • We can try to get some indicators directly from the data by "simple" (I hate this word sometimes) kinematic analysis. I found some interesting resources, including one using a belt and one using a accelerometer on the leg.

First, is more or less what we would like (right ?). The good news is page 21, where there is a difference on the patterns (from force plates, not accelerometers, however). From the same lab, in a poster ( they used those pattern differences to compute a time series from the data. It's quite easy to understand and the curves seems promising... However they can't reproduce the effect outside, this need some more investigations. I note they have a wonderful smooth graph of acceleration, don't expect this from the Jolla's sensor at full time-resolution... Some filtering will be needed (but it can be approached).

I also found a thesis ( which use a completely different approach, based on angles. I didn't read a lot, but as you can look from the page 37 to the conclusion, it might also be relevant. There are also a lot of "basic indicators" that we can easily compute as the step cadency, etc. Finally, the results will be very related to the subject/user, and some machine learning with a lot of subjects/users, with (or only) maybe an additional pre-training (for example "run on your heels for 10s", "run with exaggerated step length for 10s") might be necessary to have the app telling you directly "stop destroying your feet by running with sandals !" :-)

Actually I'm really busy those days, but if I have a bit of time, it might be fun to look into this project. I'll try to look more in details later and maybe record my next running session ! And I have definitively to check the videos to know more about this.

For feedback, I agree with the others, audio-feedback seems a great choice.

Sorry for the longpost and/or if I did mistakes and/or if I'm wrong. I'm sleepy and will probably come back on this message later ;)

edit flag offensive delete publish link more


A simple strategy would be to let the phone measure the impact of the landing and visualize the forces in a circular diagram (like a ball of yarn). Less impact forces should translate to less injuries. A high-pitched tone could be played in the earphones for high impact and a low-pitched tone for a softer landing. The feedback loop would be very short. The generated sounds could be mixed with music or a simple metronome when running.

A more complex solution would be to measure the direction and amplitude of the forces of each step. The hard part would be to create meaningful output for biofeedback. Measuring the forces at different cadence frequencies could help determine the optimum.

vattuvarg ( 2015-10-07 21:22:43 +0200 )edit

BTW, sandals don't destroy feet but bad technique does. ...even when wearing sandals...

vattuvarg ( 2015-10-07 21:34:41 +0200 )edit

answered 2015-10-07 22:04:23 +0200

tortoisedoc gravatar image

You'd need to have your phone on your foot; or at least in your leg pocket; or strapped around one of your upper ties.

Each of these have issues (phones on foots nono, in leg pocket is crappy for running, strapped around one tie will only consider one tie)

edit flag offensive delete publish link more
Login/Signup to Answer

Question tools



Asked: 2014-03-22 23:50:30 +0200

Seen: 610 times

Last updated: Oct 07 '15