I got several messages back from fenix 5x users stating that they notice a bug related the heartratezones. I could limit it down to the below code. When this piece of code executes an error is thrown and the catch block is executed. My current investigations point to the lines where I start using the hrz-array - so to my best guess it does not seem to be initialized. The error does not occur in the simulator running fenix 5x emulator.
I did not get usable error logs back and I do not own the device myself.
Versions info: fenix 5x 6.00 (and various beta versions including 6.75), CIQ 2.3.5 in Eclipse
I assume it is the same bug reported here: https://forums.garmin.com/forum/deve...eports/154680-
function setHeartRateValues(field, value) {
field.value = (value == ActMon.INVALID_HR_SAMPLE ? 0 : value);
try {
var hrz = User.getHeartRateZones(User.HR_ZONE_SPORT_GENERIC);
var min = 2*hrz[0]-hrz[1];
var max = hrz[5].toFloat();
field.min = min;
field.max = max;
field.scalecolors = [
[(hrz[0]-min)/(max-min), Gfx.COLOR_DK_GRAY],
[(hrz[1]-min)/(max-min), Gfx.COLOR_DK_GREEN],
[(hrz[2]-min)/(max-min), Gfx.COLOR_GREEN],
[(hrz[3]-min)/(max-min), Gfx.COLOR_YELLOW],
[(hrz[4]-min)/(max-min), Gfx.COLOR_RED],
[(hrz[5]-min)/(max-min), Gfx.COLOR_DK_RED]
];
hrz = null; min = null; max = null;
} catch (ex) {
field.min = 0;
field.max = -1;
field.scalecolors = [
[1.0, Gfx.COLOR_DK_GRAY]
];
}
}