9 ms·
Turning AirPods into a fitness tracker
- lazerjesus 2y agois the app going to be released?
- zackify 2y agoI was expecting to see the download link in the post too!
- cleverbit 2y agoThanks! I’ll post it soon, stay tuned!
- ulf-77723 2y ago+1 for release. Strava Sync would be great - but keep it simple
- cleverbit 2y agoSimple is the hardest thing. I’ll look into Strava Sync and see what I can do!
- cleverbit 2y agoI was curious to see if there’d be interest, but I’ll open source the code and release the app soon!
- photonbucket 2y agoFeels like something Apple might want to do a first-party version of
- cleverbit 2y agothanks
- _Microft 2y agoIs this data that could be fed into the Health app (type of training, time of training, repetitions, duration of training)? The Health app is relatively picky about what sports are supported though…
- cleverbit 2y agoThat’s a great idea. HealthKit doesn’t track anything at the granularity of the number of reps, and while it doesn’t have a workout type specifically for pushups, this could probably be classified as Strength Training. I’ll add it!
- ttul 2y agoI’d love to see whether you could tease out heart rate and respiration from this data. If you already wear an Apple Watch or Fitbit, that data is continually collected. Shoving everything into a time series model with enough samples might do the trick.
- cleverbit 2y agoI’ll see what I can do, thanks for the feedback!
- nradov 2y agoHeart rate will probably be tough without a dedicated sensor. Sennheiser now sells earbuds with an optical HR sensor but accuracy is bad. https://www.dcrainmaker.com/2024/05/sennheiser-momentum-temperature.html https://www.dcrainmaker.com/2024/05/sennheiser-momentum-temp... Respiration rate is harder. It requires precise heart rate variability data to detect the start of a breath.
- pedalpete 2y agoI wonder if "accurate enough" hr could be achieved through filtering accelerometer data? You'd have to be quite still, but if the device knows you're doing push-ups, and what range your heart-rate could be in, it may be able to filter out other movements. Respiration can be measured with microphones, and again, movement, but I suspect this may be more challenging than filtering HR.
- dameyawn 2y agoTrain AI had some time ago added AirPods (in addition to Apple Watch and phone) to their automated workout tracking: https://trainfitness.ai/ https://trainfitness.ai/
- w10-1 2y agoI've considered using CoreMotion data from AirPods to recognize at least yes/no head-shaking, but mainly targeting a vigorous shake in order to mute without hands or voice. An open-source example would be a great starting-point!
- kejaed 2y agoThanks for this, I’ve wondered if AirPods data could help me track if I’m grinding my teeth, I’ll dig in now!
- jser 2y agoApple has a patent on it: https://www.patentlyapple.com/2022/10/apple-invents-a-new-health-feature-for-airpods-that-will-provide-diagnosis-monitoring-of-bruxism-.html https://www.patentlyapple.com/2022/10/apple-invents-a-new-he...
- riffic 2y agothere's a whole lot of compute in those little cans. the case does too if I'm not mistaken.
- cleverbit 2y agoThe amount of engineering that goes into these things is truly phenomenal, as highlighted by the CT scans done by Lumafield - check it out here: https://youtu.be/kRpIg23qGY8?si=r2t8_8VHVCwkDDLP https://youtu.be/kRpIg23qGY8?si=r2t8_8VHVCwkDDLP
- koinedad 2y agoLove the idea and the code examples. Thanks for sharing!
- deepGem 2y agoThis is cool. I am using body pose angles to determine the correct pose for a pushup/squat/whatever. It will be really nice not to use the camera for this and somehow determine the correct pose only using the CoreMotion data. I will dig into this. A combination of watch + airpods should probably solve the overall body pose and positioning. However, people would still want videos for reference and to get visual feedback.Perhaps not. Just an audio feedback supplanted by occasional video should help.
- bsandbox 2y agoVery cool! Have been trying to complete murph workouts in prep for Memorial Day, and this app would be a perfect companion for counting the reps, which get pretty hard to track in your head during the workout. So, feature request - please add squat and pull up detection!
- cleverbit 2y agoWOW Murph Workouts! Respect. That is an awesome mission. I’d love to help.
- sen 2y agoI’ve wanted a super minimal app that just “counts reps of any repeating motion” without using the phone itself, for many many years. It’d work for pushups, squats, chinups, etc etc. So many exercises are the same idea of “move body repeatedly”. I don’t want my phone in my pocket while doing it, I like having my phone in front of me while I do pushups/situps/chinups/etc so I can see the timer/stats. I’d happily pay for an app that could do that and just let me tag what each one was to add to a log.
- lloeki 2y agoGarmin watches do that. I'm mostly doing dips pushups pullups and abs, and it counts each rep. The simplest form is starting a generic strength activity, where pressing the lap button moves to "rest" and displays a quick optional "Hey I counted this, fix the count" thing before resuming to the next exercise with the lap button. Once you're done with your workout and it synced to the phone both each exercise type and reps can be fixed after the fact. You can also set up more structured, scripted workouts with exercises known beforehand, which slightly improves rep counting (otherwise it's very generic and approximate)
- cleverbit 2y agoGarmins are amazing! They are pretty much the de facto equipment for fitness.
- aosaigh 2y agoI have a Garmin and didn’t realize this is how it works. Thanks!
- 1234letshaveatw 2y agoI wish I didn't have to start activities with my garmin fenix. I would like it to just prompt me "I've noticed it appears you just went for a walk, confirm yes/no" When I enter an activity such as weight lifting it seems to be able to infer what exercise I performed, it seems like it should be able to infer when I am going for a run or a walk.
- maxglute 2y agoLimitations of this method is it won't track exercises where head is stationary, i.e. all the bench/pressing movements.
- cleverbit 2y agoThat’s true, and since it’s only tracking head movement at the moment, some further refinements would be needed to account for good positioning. I’d like to develop it further to see what else this technique can recognize.
- maxglute 2y agoYeah wearables limitation is they rarely track both open and closed chain exercises. closed chain = dips/pullup where you move body through space, usually hands locked so watches/bands don't work, open chain = body fixed, move limbs like BP where this method won't work well. If it's something being worn, it needs to be adjusted to differnt positions to track different exercises, which makes implementation finicky.
- Mathnerd314 2y agoI guess it could be possible on Android, but currently it is not https://stackoverflow.com/questions/75125772/is-it-possible-to-read-head-tracking-data-from-pixel-buds-pro https://stackoverflow.com/questions/75125772/is-it-possible-...
- user_7832 2y agoI remember an android app years ago that would simply use the proximity sensor to count push-ups. I think you could put it on your abdomen and count sit ups too using the accelerometer/gyroscope.
- Mathnerd314 2y agoI have seen people with tripods in the gym. Filming the exercise and doing video analysis is probably the way to go - for example it can track bench press, like the other comment mentioned. The author here mentions that there are "plenty of apps on the App Store" that do that. But the tripod itself is an investment that I am not sure everyone will make.
- bamboozled 2y agoI wish I could get accurate HRM data from AirPods. I have an Apple Watch and do kettlebell training. I have to take it off to train or else I’d smash the watch to pieces with the heavier bells. I always wear my airpods when training though. Would be a killer feature.
- hnrodey 2y agoWhen using kettlebells, I rotate the watch so the face is on the inside of my wrist thereby protecting the screen.
- corry 2y agoTwo comments and 1 question for OP: (1) Thanks for the writeup, this is classic HN content, a simple app that solves a person's problem with enough interesting technical detail to make it interesting. (2) Definitely post this to the App Store! I'd happily pay a few $ for it even. (3) How would it handle burpees? Would it just ignore the 'jump' phase? But still count the push-ups since it's zeroed in on the up/down motion of the push-up itself?
- cleverbit 2y agoHey thanks for your feedback, it’s really appreciated! Since there’s interest, I’ll publish the source code to help others learn, and put the app on the App Store for those who just want to use it. Regarding burpees and other types of motion, I’m looking into their motion characteristics, so that I can include them for detection. Burpees would likely require recognizing different phases (the jump, the stand, the push, etc) and then when it detects them in sequence, incrementing the count. Something like that, but stay tuned! :)
- corry 2y agoMakes sense! For burpees, I think the jump part is perhaps 'just noise', in the sense that if you are accurately counting the push-up at the bottom (i.e. can ignore 'the noise' in-between push-ups) then it would work fine. Just a thought.
- jackflintermann 2y agoI liked this article a lot - information-dense but approachable. It feels like you can understand the entire app using only the code snippets in the article, which speaks to the quality of the design. The only part that made me roll my eyes was the AI piece - I don't think there's any actual AI involved in the app, it seems like the author just used it to figure out what metrics to use, and then hardcoded them into the app? (That's probably how I'd do it, tbh - I just think the AI part distracts from the overall point and doesn't need to be in the post.)