Suunto app Forum Suunto Community Forum
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    The Future of SuuntoLink / Movesink / DM

    Scheduled Pinned Locked Moved Digital service transition
    21 Posts 8 Posters 4.5k Views 8 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Cosmo CatalanoC Offline
      Cosmo Catalano
      last edited by

      Do you know if there exists an ambit2fit?
      We lose the R-R heart rate data in the GPX output.

      None that I know of, but in theory it’s doable, provided the R-R data is stored in the .sml file that the Ambit uses to record activity.

      The .sml file is XML that could be parsed into a .csv, and then converted into a .fit using the Java tools in the FIT SDK.

      That said, I don’t have an R-R interval-ready strap, so I can’t confirm that’s where the R-R data lives. And I’ve never used the SDK to go from .csv to .fit—only the other way around. I’d probably take some reading/trial-and-error to get the .csv into the a format the FIT tool will correctly parse.

      Finally, GPX format might be able to be extended to hold R-R data (as was done for watts with gpxpx:PowerExtension, but Google doesn’t seem to think there’s a currently-accepted convention for doing this.

      Stop Getting Between Me and My Data

      1 Reply Last reply Reply Quote 1
      • M Offline
        margusl
        last edited by margusl

        This is not quite on topic I’m afraid, but played around with some Movescount and Suunto app fit exports today. SA fit files origin from Strava /export_original . SA is also connected to TP, so checked with Training Peaks Uploaded FIles and fit-files from both sources are basically identical, only difference is start time; so this fit file is not something that is crafted specially for Strava.

        I just wanted to know what this quote from FIT description actually means in real life:

        Used to record heart rate variability data. The hrv data messages contain an array of RR intervals and are interleaved with record and event messages in chronological order.

        And It’s just small arrays of IBI values beween other, timestamped, records:

        #Exported from Movescount and fed trough SDK's FitToCsv:
        Data,6,record,timestamp,"916920666",s,position_
        Data,1,hrv,time,"0.466|0.472",s,,,,,,,,,,,,,,,,
        Data,7,record,timestamp,"916920667",s,altitude,
        Data,1,hrv,time,"0.473|0.466",s,,,,,,,,,,,,,,,,
        Data,6,record,timestamp,"916920668",s,position_
        Data,1,hrv,time,"0.472|0.471",s,,,,,,,,,,,,,,,,
        Data,7,record,timestamp,"916920669",s,altitude,
        Data,3,hrv,time,"0.466|0.471|0.473",s,,,,,,,,,,
        Data,6,record,timestamp,"916920670",s,position_
        Data,1,hrv,time,"0.466|0.473",s,,,,,,,,,,,,,,,,
        Data,7,record,timestamp,"916920671",s,altitude,
        

        Suunto app seems to have a bolder approach with either averaging or dropping about half of original samples - same time window, but instead of 11 samples there are only 5, one per record:

        #Exported from SA / Strva and fed trough SDK's FitToCsv:
        Data,7,record,timestamp,"916920666",s,distance,
        Data,1,hrv,time,"0.472",s,,,,,,,,,,,,,,,,,,,,,,
        Data,5,record,timestamp,"916920667",s,position_
        Data,1,hrv,time,"0.466",s,,,,,,,,,,,,,,,,,,,,,,
        Data,7,record,timestamp,"916920668",s,distance,
        Data,1,hrv,time,"0.473",s,,,,,,,,,,,,,,,,,,,,,,
        Data,5,record,timestamp,"916920669",s,position_
        Data,1,hrv,time,"0.473",s,,,,,,,,,,,,,,,,,,,,,,
        Data,7,record,timestamp,"916920670",s,distance,
        Data,1,hrv,time,"0.47",s,,,,,,,,,,,,,,,,,,,,,,,
        Data,7,record,timestamp,"916920671",s,distance,
        

        @Dimitrios-Kanellopoulos , is this by design?
        Sum of all IBI samples is supposed to result total workout time, for Movescount export it was 03:44:45 (matches)
        and for Suunto app export 01:44:08 .

        Also geeked out a bit over Runalyze (they, btw, do import SML files) and for that same activity from different sources HRV analysis results were somewhat different, yet less than I would have expected. Graphs differ mostly because of some outlier samples screw up the scale - at the end of Movescount IBI data there’s some kind correction sample that seems to be total_time - sum(ibi) or something, it’s already present in SML files.

        Capture.PNG
        Left: fit from Suunto app / Strava / TP; Rigth: Movescount fit export

        Dimitrios KanellopoulosD 2 Replies Last reply Reply Quote 3
        • Dimitrios KanellopoulosD Offline
          Dimitrios Kanellopoulos Community Manager @margusl
          last edited by

          @margusl how did you get the IBI from the Suunto app?

          Yes the sum should match pretty much the activity Absolute duration aka, should include pauses as IBI should come in while paused to maintain the time delta.

          Community Manager / Admin @Suunto
          Creator of Quantified-Self.io
          youtube.com/c/dimitrioskanellopoulos
          https://instagram.com/dimitrioskanellopoulos
          https://www.strava.com/athletes/7586105

          M 1 Reply Last reply Reply Quote 0
          • Dimitrios KanellopoulosD Offline
            Dimitrios Kanellopoulos Community Manager @margusl
            last edited by

            @margusl I like the plot of those IBI what are the y and x Axis values?
            I do have raw ibi data access from the watches and I am developing a tool so I might be able to support those graphs as well.

            Community Manager / Admin @Suunto
            Creator of Quantified-Self.io
            youtube.com/c/dimitrioskanellopoulos
            https://instagram.com/dimitrioskanellopoulos
            https://www.strava.com/athletes/7586105

            1 Reply Last reply Reply Quote 1
            • M Offline
              margusl @Dimitrios Kanellopoulos
              last edited by

              @Dimitrios-Kanellopoulos said in The Future of SuuntoLink / Movesink / DM:

              @margusl how did you get the IBI from the Suunto app?

              Suunto app syncs to both Strava & TP . And Strava /export_original output is a fit file with those hrv records. As said, TP export for the same activity is exactly the same.

              @Dimitrios-Kanellopoulos said in The Future of SuuntoLink / Movesink / DM:

              @margusl I like the plot of those IBI what are the y and x Axis values?

              Plots are from Runalyze,
              1st R-R intervals plot is samples [ms] over activity duration [hh:mm:ss]
              2nd successive differences plot is time diff [ms] over activity duration [hh:mm:ss]
              3rd is Poincaré plot, RR interval against next interval or RR(n)[ms] as x vs RR(n+1) [ms] as y

              Dimitrios KanellopoulosD 1 Reply Last reply Reply Quote 1
              • Dimitrios KanellopoulosD Offline
                Dimitrios Kanellopoulos Community Manager @margusl
                last edited by

                @margusl are you sure it has hrv?

                On the fit file records?

                Where exactly on the fit file because I can’t find any ibi or HRV data

                Community Manager / Admin @Suunto
                Creator of Quantified-Self.io
                youtube.com/c/dimitrioskanellopoulos
                https://instagram.com/dimitrioskanellopoulos
                https://www.strava.com/athletes/7586105

                M 1 Reply Last reply Reply Quote 0
                • M Offline
                  margusl @Dimitrios Kanellopoulos
                  last edited by margusl

                  @Dimitrios-Kanellopoulos said in The Future of SuuntoLink / Movesink / DM:

                  @margusl are you sure it has hrv?

                  On the fit file records?

                  Where exactly on the fit file because I can’t find any ibi or HRV data

                  Yes, as you see from above snippets, hrv messages are all over the place, after every single timestamped record thorugh whole file, from top to bottom. Those snippets are from csv output of FitToCsv.bat, from FIT SDK. I would be bit suprised if hrv presence is related to watch model (A3P in my case) , but more than likely HR source plays a role here. Those are from Polar H10.
                  There’s one thing I did not check - there’s a chance that SA fit exports include just a fake HRV, calculated form HR. Though it would be verry much same as averaging.

                  Just check again, activity was synced with SA today few hours ago and Strava export_original still returns fit-file with hrv messages:

                  Data,1,hrv,time,"0.391",s,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
                  Data,3,record,timestamp,"917371937",s,position_lat,"708543526",semicircles,position_long,"294059066",semicircles,distance,"15300.0",m,heart_ra
                  Data,1,hrv,time,"0.39",s,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
                  Data,3,record,timestamp,"917371938",s,position_lat,"708543276",semicircles,position_long,"294058231",semicircles,distance,"15304.0",m,heart_ra
                  Data,1,hrv,time,"0.387",s,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
                  Data,3,record,timestamp,"917371939",s,position_lat,"708542977",semicircles,position_long,"294057253",semicircles,distance,"15310.0",m,heart_ra
                  Data,1,hrv,time,"0.388",s,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
                  Data,2,record,timestamp,"917371940",s,position_lat,"708542691",semicircles,position_long,"294056298",semicircles,distance,"15315.0",m,heart_ra
                  Data,1,hrv,time,"0.293",s,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
                  Data,2,record,timestamp,"917371941",s,position_lat,"708542500",semicircles,position_long,"294055356",semicircles,distance,"15320.0",m,heart_ra
                  Data,1,hrv,time,"0.391",s,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
                  Data,2,record,timestamp,"917371942",s,position_lat,"708542285",semicircles,position_long,"294054378",semicircles,distance,"15325.0",m,heart_ra
                  Data,1,hrv,time,"0.38",s,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
                  Data,2,record,timestamp,"917371943",s,position_lat,"708542059",semicircles,position_long,"294053411",semicircles,distance,"15330.0",m,heart_ra
                  Data,1,hrv,time,"0.377",s,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
                  Data,2,record,timestamp,"917371944",s,position_lat,"708541761",semicircles,position_long,"294052540",semicircles,distance,"15335.0",m,heart_ra
                  Data,1,hrv,time,"0.376",s,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
                  
                  
                  Dimitrios KanellopoulosD 3 Replies Last reply Reply Quote 1
                  • Dimitrios KanellopoulosD Offline
                    Dimitrios Kanellopoulos Community Manager @margusl
                    last edited by

                    @margusl this is something the fitTocsv does. SA does not include hrv so you are most probably seeing generated data.

                    Community Manager / Admin @Suunto
                    Creator of Quantified-Self.io
                    youtube.com/c/dimitrioskanellopoulos
                    https://instagram.com/dimitrioskanellopoulos
                    https://www.strava.com/athletes/7586105

                    1 Reply Last reply Reply Quote 0
                    • Dimitrios KanellopoulosD Offline
                      Dimitrios Kanellopoulos Community Manager @margusl
                      last edited by

                      @margusl However you might also be right. I am now checking the fitSDK. Myabe the lib I am using is more old. I ll get back to you about this

                      Community Manager / Admin @Suunto
                      Creator of Quantified-Self.io
                      youtube.com/c/dimitrioskanellopoulos
                      https://instagram.com/dimitrioskanellopoulos
                      https://www.strava.com/athletes/7586105

                      1 Reply Last reply Reply Quote 0
                      • Dimitrios KanellopoulosD Offline
                        Dimitrios Kanellopoulos Community Manager @margusl
                        last edited by Dimitrios Kanellopoulos

                        @margusl You are right.

                        I had forgotten about this see

                        This is the comparison on a 50+minutes activity.

                        Pink: Raw watch IBI via cable
                        Purple: SA FIT IBI

                        Screenshot 2019-01-27 at 20.02.27.png

                        Community Manager / Admin @Suunto
                        Creator of Quantified-Self.io
                        youtube.com/c/dimitrioskanellopoulos
                        https://instagram.com/dimitrioskanellopoulos
                        https://www.strava.com/athletes/7586105

                        1 Reply Last reply Reply Quote 1
                        • Dimitrios KanellopoulosD Offline
                          Dimitrios Kanellopoulos Community Manager
                          last edited by

                          @margusl this should be fixed from today on

                          Community Manager / Admin @Suunto
                          Creator of Quantified-Self.io
                          youtube.com/c/dimitrioskanellopoulos
                          https://instagram.com/dimitrioskanellopoulos
                          https://www.strava.com/athletes/7586105

                          1 Reply Last reply Reply Quote 1
                          • J Offline
                            JonJo
                            last edited by

                            The moveslink also manage updates of satellite position data. Can I update satellite position data after 2020 for my Ambit 1?

                            1 Reply Last reply Reply Quote 0
                            • First post
                              Last post

                            Suunto Terms | Privacy Policy