A length message describes one length of a pool swimming session, either active (swum) or idle (rest). It holds the stroke type, number of strokes, time and speed of the length.
messageIndexStringIndex of the message among the messages of the same kind in the file, starting at 0. Other messages use it to reference this one.
timestampDateTimeMoment the length ended, in UTC.
eventEnumKind of event: timer, lap, session, activity, workout step, course point, battery, gear change, rider position change…
lengthsessionactivityworkoutlapworkoutStepcoursePointbatteryfitnessEquipmenttimerpowerDownpowerUpoffCoursevirtualPartnerPacehrHighAlerthrLowAlertspeedHighAlertspeedLowAlertcadHighAlertcadLowAlertpowerHighAlertpowerLowAlertrecoveryHrbatteryLowtimeDurationAlertdistanceDurationAlertcalorieDurationAlertuserMarkersportPointcalibrationfrontGearChangerearGearChangeriderPositionChangeelevHighAlertelevLowAlertcommTimeoutautoActivityDetectdiveAlertdiveGasSwitchedtankPressureReservetankPressureCriticaltankLostradarThreatAlerttankBatteryLowtankPodConnectedtankPodDisconnectedeventTypeEnumWhat happened for the event: start, stop, stopAll, marker, begin or end of a depreciated range…
stopstartmarkerconsecutiveDepreciatedstopAllbeginDepreciatedendDepreciatedendAllDepreciatedstopDisablestopDisableAllstartTimeDateTimeMoment the period described by the message started.
Total duration from start to end, pauses included (wall-clock time).
Duration during which the timer was running, pauses excluded. This is the time usually displayed as the duration.
Number of strokes swum during the length.
Average speed: total distance divided by timer time.
Swimming stroke: freestyle, backstroke, breaststroke, butterfly, drill, mixed or IM.
freestylebackstrokebreaststrokebutterflydrillmixedimimByRoundrimoAverage swimming cadence, in strokes per minute.
eventGroupUint8Groups related events together, so that start and stop events of the same group can be paired.
Total energy expenditure.
lengthTypeEnumWhether the length was swum (active) or was a rest (idle).
activeidleplayerScoreUint16Score of the user, for racket and team sports.
opponentScoreUint16Score of the opponent, for racket and team sports.
Number of strokes for each stroke type (serve, forehand, backhand, smash…), indexed by stroke type.
Number of hits for each zone, indexed by zone number.
Average respiration rate, with more precision than avgRespirationRate. Prefer it when present.
Maximum respiration rate, with more precision than maxRespirationRate. Prefer it when present.
avgRespirationRateUint8Average respiration rate, in breaths per minute.
maxRespirationRateUint8Maximum respiration rate, in breaths per minute.
Calories burned by the metabolism at rest during the period (basal metabolic rate), included in the total.
mesgNumStringGlobal message number identifying the kind of message. Decoders use it to know which profile to apply to the data.