iOS 14 HealthKit Mobility Metrics

Hello,

My company is interested in querying the new mobility metrics introduced in iOS 14 / watchOS 7.

I have been having trouble collecting samples for some of these new data streams on my devices. I have an iPhone 7 and an Apple Watch Series 4. They are both upgraded to the latest version of the iOS 14 beta watchOS 7 beta.

The data streams that have worked are the VO2max and the six minute walk test. The VO2max seems to require a workout session. The six minute walk test data first showed up after wearing the watch consistently for a week, as described in the WWDC video.

However, the other data streams (walking speed, step length, walking asymmetry, double support time, stair speed up, and stair speed down) are not automatically generating samples. I was able to manually enter samples in the Health app, but we are interested in the automatically collected data.

The walking speed, step length, walking asymmetry, and double support time sections in the Health app says that you have to hold your phone in your pocket and walk over flat ground to record this data. I have gone for several walks (~20 minute / 1 mile) up and down my street with my watch on my wrist and my iPhone in my pocket. I also enabled an outdoor walk workout to make it extra explicit that I was walking. Still, none of these four data streams automatically collected any data.

So I am wondering how flat does the ground have to be for this to work? My street is certainly not 100% level; it has small and gentle slopes over it’s length. Do I need to find a larger indoor course or perhaps an outdoor track where the ground is really perfectly level? If so, how much distance is required for the samples to be computed?

Similarly, the stair speed up and stair speed down sections in the Health app says the Apple Watch will record this data when you go up or down a flight of stairs that is at least 10 feet tall. I have gone up and down flights of stairs in my house over ten times to attempt to collect this data without success. I measured the vertical distance with a tape measure, and found that my staircases are only 9 feet tall from the starting floor to the ending floor. I tried to compensate for this by going up two cases of stairs in one try (eg. From the basement to the second floor), but that didn’t work either. I assume that the stretch of level ground from the top of the basement stairs and around to the bottom of the main stairs was enough for the watch to break up the stair climbs into two separate 9 foot instances instead of a single 18 foot instance. Can you confirm that this is the case and let me know if I should expect this functionality to work if I find a building with bigger stairs and tighter turns?

Interestingly, under the Activity section of the Health app, there are some metrics that seem related to these mobility metrics. For example, the Health app is recording my walking distance and step count, from which I could imagine computing the step length as a simple division (distance per step). Since the walking samples are timestamped, it may also be possible to compute the walking speed as the distance over duration. Finally, the number of stair flights climbed is also timestamped. So again, the stair up/down speed might be computed as vertical distance per second. Perhaps the estimation algorithms are more sophisticated, and so the computations do not follow so easily from these other data points, but I thought I would mention this observation in case it indicates a problem with my data collection approach.

Thanks for any clarity you can provide on the details of the requirements for the data collection on these streams!

Cheers,

Dan Jackson Amato
Senior Engineer, Digital Artefacts

Exact same issue with exact same setup: watch 4 / iPhone 7 Plus. Originally I only got VO2. Did a reset on watch calibration and that got me 6 minute walk. None of the other mobility metrics show any data sources. Both devices updated to most recent betas.
Thanks for sharing your experience, intelinc.

I've now tried to verify my suspicion that the stair ascent/descent speed was not reported because my home staircases are only 9 feet tall and not 10 feet. I went to my office building, which is 14 stories tall, and climbed from the ground floor to the top floor and back down. I had my iPhone 7 in my pocket and my Apple Watch series 4 on my wrist. The HealthApp did detect a large number of stairs climbed, but it did not report the ascent/descent speed.

The only strange thing about those stairs is that they are tightly wound in a confined space, so you climb roughly 5 vertical feet to an intermediate landing, make an immediate turn, and climb the remaining 5 vertical feet to complete the flight. If the ascent/descent speed is only based on the barometer, then I would not expect these turns to make a difference. If there is some accelerometer / gyroscope component to the algorithm that is detecting the change of direction, maybe that is throwing it off.

I will try a more continuous flight of stairs and also some laps on a track to test the walking-related mobility metrics and report my findings.
My watch (and I expect by association yours) is pretty competent at counting flights climbed. Mine show up in the Health app under Activity->Flights Climbed.

Much (if not all) of the raw data underpinning the new Mobility section seems like is is already being collected, so I'm not sure why it doesn't show up for me. The relevant hardware difference between the iPhone 7 and 8 would appear to be the addition of the neural engine chip in the 8. This coprocessor may be getting used to derive these more advanced metrics from the limited instrumentation data available from the watch. It would be nice to surface this limitation in the UI if this is the case.
For anyone who arrives at this page in the future, Apple has done a really nice job with updating the documentation on these quantity types. Those pages are now much clearer and make it explicit that you must have an iPhone 8 or later, and an Apple Watch 5 or later, for certain metrics.

So that explains why my iPhone 7 and Apple Watch Series 4 were not gathering the new data types.
iOS 14 HealthKit Mobility Metrics
 
 
Q