Activity.currentCadence stuck at 0

I'm struggling to display the Activity::Info.currentCadence value on a custom watch app I'm creating. It seems to work intermittently and record accurate values for about 5-10 seconds every minute or so off and on.

The activity type is set to 'SPORT_ROWING' and 'SUB_SPORT_GENERIC'.

I am not enabling sensors or a sensor listener (although I've tried that without success, and the sensors record accurate date in the FIT file)

I am recording the Average and Current Cadence in the application logs and you can see accurate average data, but the current cadence will only work briefly and then returns 0 values only.

The FIT file DOES record the current cadence correctly and when the application is simulated and the FIT file played back, the values are displayed correctly. It is only during execution on the watch itself that current cadence is stuck at zero.

I am using a Vivoactive 3 with updated firmware.

Any ideas?
  • I'm just guessing, but I don't think this will work for detecting strokes. I went out for a walk with one of my apps that displays cadence, and at a normal pace I was seeing a current cadence in the 100 range, but as I slowed down but kept walking, it went to zero. With rowing, it could be low enough it's considered zero. The "normal" cadence is more of a running thing, so maybe it's looking for higher values.

    Maybe try to use something like the accelerometer instead of cadence?
  • That's what I was thinking too, that it just wouldn't work given the slower speed, and work around it through a moving average calculation or smoothing function. But then I saw that valid, on-time values were being stored to the FIT file at regular intervals for the duration of the activity, and you can see the same in the activity graphs. But for whatever reason the SensorInfo and ActivityInfo don't assign those values to cadence or currentCadence.

    I figure I'm missing something, and wanted to look into it before starting in on accelerometer data.
  • I've just discovered this  2 year old thread as I realise it is exactly what I am now faced with....my custom App behaves exactly as yours, cadence correctly recorded in FIT file, but only very occasionally appearing on the watch, which mostly just shows 0 (and when the cadence is shown, it twice the actual stroke rate....not a problem as I can divide by 2, but just wonder if this signifies anything). Yet when I use the OOTB rowing app, or Indoor Rowing app, then the cadence works correctly on the watch, and also saves the same info in the FIT file. 

    Don't suppose you found solution?

    btw, also using Vivoactive 3