Search code examples
iosiphoneaccelerometersensorscore-motion

Problems with acc/gyro sample rate in different iPhone models


As described in the docs here, I am processing a steady stream of motion updates, namely 60 readings/second from the accelerometer and gyroscope sensors.

However, for the same movement recording, I get 98 readings on average on an iPhone 6 and SE2 but 205 on average on the latest versions (12 & 13). This is a significant difference. The movement's pattern remains similar apart from some value changes in intensity. But I am not sure why the older versions have much fewer readings than the newer ones.

Any ideas why this is the case and if something can be done to improve it?

Edit:

It seems that the older versions are not actually sampling 60Hz. For some reason, some data is being thrown away. Currently, the real sampling rate appears to be ~40Hz in one of the old devices. The new versions are the ones that are indeed sampling 60 readings per second.

In this forum here, for example, people suggested that it is a firmware problem. This makes sense for iPhone 6. Though iPhone SE2 came out on 2020. Seems odd that they didn't fix it.


Solution

  • Looks like this is a deep underlying problem with the devices themselves. Nothing much can be done for it.