Units for pace in ActivitiesDB incorrect when reading from an account that uses metric
Opened this issue · 2 comments
Describe the bug
When running activities.ipynb, I noticed that the Pace value is displaying a per mile
pace, but the rest of the DB is metric, See attached imaged.
To Reproduce
Steps to reproduce the behavior:
- Garmin Connect units set to kmph
- Create database using garmindb_cli.py
- Run activities.ipynb
- See error
Expected behavior
The pace calculations should be per kilometer
.
Additional context
I have traced this and would like to suggest a change to ActivityFitFileProcessor._write_steps_entry().
My current guess is that GarminConnect stores the pace information as mph
which converts nicely to the numbers shown in the attached image. I tried working on a solution for this, but am not sure where to get the measurement system information in this processor file to write an if ... else ..
statement to handle this.
Is the speed correct? The pace is derived form the speed:
'avg_pace' : fitfile.conversions.perhour_speed_to_pace(message_fields.avg_speed),
Yes the speed is correct in kph, so that's why I'm suspecting it is a conversion issue.
Taking the last row, a 12.3kph speed is a kilometer pace of 4:48.6 and a mile pace of 7:51.2 which is what is being shown in the screen shot.