@@ -768,21 +768,27 @@ class phpFITFileAnalysis
768768
769769 20 => [
770770 'mesg_name ' => 'record ' , 'field_defns ' => [
771- 0 => ['field_name ' => 'position_lat ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'semicircles ' ],
772- 1 => ['field_name ' => 'position_long ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'semicircles ' ],
773- 2 => ['field_name ' => 'altitude ' , 'scale ' => 5 , 'offset ' => 500 , 'units ' => 'm ' ],
774- 3 => ['field_name ' => 'heart_rate ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'bpm ' ],
775- 4 => ['field_name ' => 'cadence ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'rpm ' ],
776- 5 => ['field_name ' => 'distance ' , 'scale ' => 100 , 'offset ' => 0 , 'units ' => 'm ' ],
777- 6 => ['field_name ' => 'speed ' , 'scale ' => 1000 , 'offset ' => 0 , 'units ' => 'm/s ' ],
778- 7 => ['field_name ' => 'power ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'watts ' ],
779- 9 => ['field_name ' => 'grade ' , 'scale ' => 100 , 'offset ' => 0 , 'units ' => 'percent ' ],
780- 10 => ['field_name ' => 'resistance ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
781- 13 => ['field_name ' => 'temperature ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'C ' ],
782- 39 => ['field_name ' => 'vertical_oscillation ' , 'scale ' => 10 , 'offset ' => 0 , 'units ' => 'mm ' ],
783- 40 => ['field_name ' => 'stance_time_percent ' , 'scale ' => 100 , 'offset ' => 0 , 'units ' => 'percent ' ],
784- 53 => ['field_name ' => 'fractional_cadence ' , 'scale ' => 128 , 'offset ' => 0 , 'units ' => 'rpm ' ],
785- 253 => ['field_name ' => 'timestamp ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 's ' ]
771+ 0 => ['field_name ' => 'position_lat ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'semicircles ' ],
772+ 1 => ['field_name ' => 'position_long ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'semicircles ' ],
773+ 2 => ['field_name ' => 'altitude ' , 'scale ' => 5 , 'offset ' => 500 , 'units ' => 'm ' ],
774+ 3 => ['field_name ' => 'heart_rate ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'bpm ' ],
775+ 4 => ['field_name ' => 'cadence ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'rpm ' ],
776+ 5 => ['field_name ' => 'distance ' , 'scale ' => 100 , 'offset ' => 0 , 'units ' => 'm ' ],
777+ 6 => ['field_name ' => 'speed ' , 'scale ' => 1000 , 'offset ' => 0 , 'units ' => 'm/s ' ],
778+ 7 => ['field_name ' => 'power ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'watts ' ],
779+ 9 => ['field_name ' => 'grade ' , 'scale ' => 100 , 'offset ' => 0 , 'units ' => 'percent ' ],
780+ 10 => ['field_name ' => 'resistance ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
781+ 13 => ['field_name ' => 'temperature ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'C ' ],
782+ 29 => ['field_name ' => 'accumulated_power ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'watts ' ],
783+ 39 => ['field_name ' => 'vertical_oscillation ' , 'scale ' => 10 , 'offset ' => 0 , 'units ' => 'mm ' ],
784+ 40 => ['field_name ' => 'stance_time_percent ' , 'scale ' => 100 , 'offset ' => 0 , 'units ' => 'percent ' ],
785+ 43 => ['field_name ' => 'left_torque_effectiveness ' , 'scale ' => 2 , 'offset ' => 0 , 'units ' => 'percent ' ],
786+ 44 => ['field_name ' => 'right_torque_effectiveness ' , 'scale ' => 2 , 'offset ' => 0 , 'units ' => 'percent ' ],
787+ 45 => ['field_name ' => 'left_pedal_smoothness ' , 'scale ' => 2 , 'offset ' => 0 , 'units ' => 'percent ' ],
788+ 46 => ['field_name ' => 'right_pedal_smoothness ' , 'scale ' => 2 , 'offset ' => 0 , 'units ' => 'percent ' ],
789+ 47 => ['field_name ' => 'combined_pedal_smoothness ' , 'scale ' => 2 , 'offset ' => 0 , 'units ' => 'percent ' ],
790+ 53 => ['field_name ' => 'fractional_cadence ' , 'scale ' => 128 , 'offset ' => 0 , 'units ' => 'rpm ' ],
791+ 253 => ['field_name ' => 'timestamp ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 's ' ]
786792 ]
787793 ],
788794
@@ -836,6 +842,12 @@ class phpFITFileAnalysis
836842 ]
837843 ],
838844
845+ 78 => [
846+ 'mesg_name ' => 'hrv ' , 'field_defns ' => [
847+ 0 => ['field_name ' => 'time ' , 'scale ' => 1000 , 'offset ' => 0 , 'units ' => 's ' ]
848+ ]
849+ ],
850+
839851 101 => [
840852 'mesg_name ' => 'length ' , 'field_defns ' => [
841853 0 => ['field_name ' => 'event ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
@@ -853,6 +865,72 @@ class phpFITFileAnalysis
853865 253 => ['field_name ' => 'timestamp ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 's ' ],
854866 254 => ['field_name ' => 'message_index ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ]
855867 ]
868+ ],
869+
870+ 142 => [
871+ 'mesg_name ' => 'segment_lap ' , 'field_defns ' => [
872+ 0 => ['field_name ' => 'event ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
873+ 1 => ['field_name ' => 'event_type ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
874+ 2 => ['field_name ' => 'start_time ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
875+ 3 => ['field_name ' => 'start_position_lat ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'semicircles ' ],
876+ 4 => ['field_name ' => 'start_position_long ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'semicircles ' ],
877+ 5 => ['field_name ' => 'end_position_lat ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'semicircles ' ],
878+ 6 => ['field_name ' => 'end_position_long ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'semicircles ' ],
879+ 7 => ['field_name ' => 'total_elapsed_time ' , 'scale ' => 1000 , 'offset ' => 0 , 'units ' => 's ' ],
880+ 8 => ['field_name ' => 'total_timer_time ' , 'scale ' => 1000 , 'offset ' => 0 , 'units ' => 's ' ],
881+ 9 => ['field_name ' => 'total_distance ' , 'scale ' => 100 , 'offset ' => 0 , 'units ' => 'm ' ],
882+ 10 => ['field_name ' => 'total_cycles ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'cycles ' ],
883+ 11 => ['field_name ' => 'total_calories ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'kcal ' ],
884+ 12 => ['field_name ' => 'total_fat_calories ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'kcal ' ],
885+ 13 => ['field_name ' => 'avg_speed ' , 'scale ' => 1000 , 'offset ' => 0 , 'units ' => 'm/s ' ],
886+ 14 => ['field_name ' => 'max_speed ' , 'scale ' => 1000 , 'offset ' => 0 , 'units ' => 'm/s ' ],
887+ 15 => ['field_name ' => 'avg_heart_rate ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'bpm ' ],
888+ 16 => ['field_name ' => 'max_heart_rate ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'bpm ' ],
889+ 17 => ['field_name ' => 'avg_cadence ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'rpm ' ],
890+ 18 => ['field_name ' => 'max_cadence ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'rpm ' ],
891+ 19 => ['field_name ' => 'avg_power ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'watts ' ],
892+ 20 => ['field_name ' => 'max_power ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'watts ' ],
893+ 21 => ['field_name ' => 'total_ascent ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'm ' ],
894+ 22 => ['field_name ' => 'total_descent ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'm ' ],
895+ 23 => ['field_name ' => 'sport ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
896+ 24 => ['field_name ' => 'event_group ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
897+ 25 => ['field_name ' => 'nec_lat ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'semicircles ' ],
898+ 26 => ['field_name ' => 'nec_long ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'semicircles ' ],
899+ 27 => ['field_name ' => 'swc_lat ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'semicircles ' ],
900+ 28 => ['field_name ' => 'swc_long ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'semicircles ' ],
901+ 29 => ['field_name ' => 'name ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
902+ 30 => ['field_name ' => 'normalized_power ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'watts ' ],
903+ 31 => ['field_name ' => 'left_right_balance ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
904+ 32 => ['field_name ' => 'sub_sport ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
905+ 33 => ['field_name ' => 'total_work ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'J ' ],
906+ 58 => ['field_name ' => 'sport_event ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
907+ 59 => ['field_name ' => 'avg_left_torque_effectiveness ' , 'scale ' => 2 , 'offset ' => 0 , 'units ' => 'percent ' ],
908+ 60 => ['field_name ' => 'avg_right_torque_effectiveness ' , 'scale ' => 2 , 'offset ' => 0 , 'units ' => 'percent ' ],
909+ 61 => ['field_name ' => 'avg_left_pedal_smoothness ' , 'scale ' => 2 , 'offset ' => 0 , 'units ' => 'percent ' ],
910+ 62 => ['field_name ' => 'avg_right_pedal_smoothness ' , 'scale ' => 2 , 'offset ' => 0 , 'units ' => 'percent ' ],
911+ 63 => ['field_name ' => 'avg_combined_pedal_smoothness ' , 'scale ' => 2 , 'offset ' => 0 , 'units ' => 'percent ' ],
912+ 64 => ['field_name ' => 'status ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
913+ 65 => ['field_name ' => 'uuid ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
914+ 66 => ['field_name ' => 'avg_fractional_cadence ' , 'scale ' => 128 , 'offset ' => 0 , 'units ' => 'rpm ' ],
915+ 67 => ['field_name ' => 'max_fractional_cadence ' , 'scale ' => 128 , 'offset ' => 0 , 'units ' => 'rpm ' ],
916+ 68 => ['field_name ' => 'total_fractional_cycles ' , 'scale ' => 128 , 'offset ' => 0 , 'units ' => 'cycles ' ],
917+ 69 => ['field_name ' => 'front_gear_shift_count ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
918+ 70 => ['field_name ' => 'rear_gear_shift_count ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
919+ 71 => ['field_name ' => 'time_standing ' , 'scale ' => 1000 , 'offset ' => 0 , 'units ' => 's ' ],
920+ 72 => ['field_name ' => 'stand_count ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ],
921+ 73 => ['field_name ' => 'avg_left_pco ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'mm ' ],
922+ 74 => ['field_name ' => 'avg_right_pco ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'mm ' ],
923+ 75 => ['field_name ' => 'avg_left_power_phase ' , 'scale ' => 0.7111111 , 'offset ' => 0 , 'units ' => 'degrees ' ],
924+ 76 => ['field_name ' => 'avg_left_power_phase_peak ' , 'scale ' => 0.7111111 , 'offset ' => 0 , 'units ' => 'degrees ' ],
925+ 77 => ['field_name ' => 'avg_right_power_phase ' , 'scale ' => 0.7111111 , 'offset ' => 0 , 'units ' => 'degrees ' ],
926+ 78 => ['field_name ' => 'avg_right_power_phase_peak ' , 'scale ' => 0.7111111 , 'offset ' => 0 , 'units ' => 'degrees ' ],
927+ 79 => ['field_name ' => 'avg_power_position ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'watts ' ],
928+ 80 => ['field_name ' => 'max_power_position ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'watts ' ],
929+ 81 => ['field_name ' => 'avg_cadence_position ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'rpm ' ],
930+ 82 => ['field_name ' => 'max_cadence_position ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 'rpm ' ],
931+ 253 => ['field_name ' => 'timestamp ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => 's ' ],
932+ 254 => ['field_name ' => 'message_index ' , 'scale ' => 1 , 'offset ' => 0 , 'units ' => '' ]
933+ ]
856934 ]
857935 ];
858936
@@ -1419,7 +1497,7 @@ private function setUnits($options)
14191497 }
14201498
14211499 // Set units for all messages
1422- $ messages = ['session ' , 'lap ' , 'record ' ];
1500+ $ messages = ['session ' , 'lap ' , 'record ' , ' segment_lap ' ];
14231501 $ c_fields = [
14241502 'avg_temperature ' ,
14251503 'max_temperature ' ,
0 commit comments