-
-
Notifications
You must be signed in to change notification settings - Fork 47
Description
I noticed that the distance estimates between my Apple Watch and the SmartSpin2k were pretty wildly off. When I investigate the actual raw distance samples, I notice that the samples are all pretty much 6.9 ft, which matches the wheel size - makes sense. The Apple Watch is turning the rotation samples into distance measurements based on the selected wheel size (which is configurable on the watch itself).
However, what I'm noticing, is that I have a fair bit fewer of these samples than I should given my cadence. I speculate that the Apple Watch cannot keep up with the rate at which these are being updated by the BLE server (which I think is supposed to be every 503 ms according to the code).
It appears that the way the code is written, it always increments the rotation count by 1 if enough time has elapsed. Given the update rate of 503 ms, this would allow a maximum cadence of roughly 120 rpm to still be represented. However, I'm only getting about 20 updates per minute on the Apple Watch - significantly fewer than the SmartSpin2k is actually reporting.
I assume there is a good reason that the SmartSpin2k updates this quickly in some use cases, but it would be nice if it could actually be slowed down in the configuration. An update every 2 to 5 seconds would be perfectly fine for my use case (and cause the Apple devices to record significantly fewer samples - which is nice for data efficiency). Of course, the code would need to be changed to report multiple increments of rotation/cadence if slowed down.