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

    [Question] No stupid questions - ask anything here

    Scheduled Pinned Locked Moved Suunto Plus Development
    70 Posts 24 Posters 3.3k Views 24 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.
    • I Offline
      Isotop7
      last edited by

      Is it possible to get the Suunto Plus Guide a user has selected for the current workout? The goal would to the show a graphic representation (for example bar chart) to show all intervals of the workout and vertical ruler showing the current point in the workout.

      1 Reply Last reply Reply Quote 1
      • surfboomerangS Online
        surfboomerang @SuuntoPartnerTeam
        last edited by

        @SuuntoPartnerTeam said in [Question] No stupid questions - ask anything here:

        The uiViewSet might be something worth looking at

        Thanks for the hint! This worked for my case.

        Suunto Vertical Titanium Solar
        OnePlus Nord 4

        1 Reply Last reply Reply Quote 1
        • H Offline
          hitriy @SuuntoPartnerTeam
          last edited by

          Awesome, works fine for me. Worth buying new watches then!

          1 Reply Last reply Reply Quote 0
          • Ecki D.E Offline
            Ecki D. Bronze Member
            last edited by

            Connect watch to macbook - VSCode

            Should this work?

            I have a older (rather old šŸ˜‰ macbook running monterey. I couldn’t connect the watch to deploy my app on it.
            Maybe it failed cause the watch hasn’t been properly disconnected from the phone see my other thread over here:

            https://forum.suunto.com/post/187290

            https://www.strava.com/athletes/37982563
            https://www.instagram.com/macdev

            1 Reply Last reply Reply Quote 0
            • U Online
              Unpaired8373
              last edited by

              Does the watches JS-runtime support WASM by any chance?

              1 Reply Last reply Reply Quote 0
              • Tomas5T Offline
                Tomas5 Gold Members
                last edited by Tomas5

                Hello, can anyone help, I am trying to display Graph for HearthRate.

                I am using this code for displaying graph, it is taken from one of examples just modified input path for current hearth rate:

                <graph style="position:absolute;
                              left:0px; top:0px; width:100%; height:100%;
                              box-sizing: border-box;
                              padding-right:90px; padding-top:60px; padding-bottom:60px;
                              font-size:21px;"
                       valueFormat="HeartRate_Fourdigits"
                       type="line"
                       grid="three lines"
                       inputType="subscribe"
                       input="/Activity/Move/-1/HeartRate/Current"
                       min="0.6666666667"
                       max="3"
                       slack="0.1"
                />
                

                and it works fine in simulator and I see this:

                SnĆ­mka obrazovky 2026-03-20 210235.png

                but when I upload app to watch (Suunto 5 or Race 2), than there is no graph line for Heart Rate:

                1774037407881-img_2476.jpg

                Suunto Ambit 2 > Suunto 5 > Suunto Race 2

                1 Reply Last reply Reply Quote 0
                • ookO Offline
                  ook
                  last edited by

                  guys I need help, anyone know how to use the crown/middle button to scroll to the next ui?

                  Tomas5T 1 Reply Last reply Reply Quote 0
                  • Tomas5T Offline
                    Tomas5 Gold Members @ook
                    last edited by

                    @ook i would try ā€œonEvent(input, output, eventId)ā€ and display value of eventId on screen and than see if crown produce some events.

                    Suunto Ambit 2 > Suunto 5 > Suunto Race 2

                    ookO 1 Reply Last reply Reply Quote 0
                    • ookO Offline
                      ook @Tomas5
                      last edited by

                      @Tomas5 thanks Tomas I tried your method, it just return 0 to me, but i find out if ur ui is big enough it will able to scroll down,dont have to do anything.

                      1 Reply Last reply Reply Quote 1
                      • Thibault B.T Offline
                        Thibault B.
                        last edited by

                        Hello,

                        What I want to do is quite simple but I do lack experience with JS, and it has been a long time since I developed in HTML.

                        I would appreciate your help :). I want to override down button press to make a lap type 24, but only if activity is ongoing. If it is paused I want the default behavior (stop activity).

                        In my html:

                        <userInput>
                              <pushButton name="down" onClick="$.put('/Zapp/{zapp_index}/Event', 123, null, 'int32');" />
                        </userInput>
                        

                        In my js:

                        function onEvent(input, output, eventId) {
                          if (eventId == 123) {
                            // Down button was pressed
                            $.put('Activity/Trigger', 24);
                          }
                        }
                        

                        I was thinking of conditioning the HTML onClick but do not really know how to access necessary variables, etc. I have tried a few things but I am lost.

                        U 1 Reply Last reply Reply Quote 0
                        • U Online
                          Unpaired8373 @Thibault B.
                          last edited by

                          @Thibault-B. There is an example in the examples collection. Essentially have a global variable that is set in the start-handler and unset in the stop-handler and then handle the condition in you event

                          Thibault B.T 1 Reply Last reply Reply Quote 0
                          • Thibault B.T Offline
                            Thibault B. @Unpaired8373
                            last edited by

                            @Unpaired8373 Not sure to get what you mean.

                            function onEvent(input, output, eventId) {
                              if (eventId == 123 && output.isPaused == 0) {
                                // Down button was pressed
                                $.put('Activity/Trigger', 24);
                              }
                            }
                            

                            It is not triggering the lap but it is not doing anything else and I wanted to default to initial behavior (so I didn’t want an explicit call to stop, which seems anyway not available?).

                            Thibault B.T 1 Reply Last reply Reply Quote 0
                            • Thibault B.T Offline
                              Thibault B. @Thibault B.
                              last edited by

                              I think the issue is that I override the onClick action, so I should keep it empty if in pause. But I do not know how to do it.

                              1 Reply Last reply Reply Quote 0
                              • surfboomerangS Online
                                surfboomerang
                                last edited by

                                I’m working on an app for speedsurfers :

                                f78a673a-e1d4-4991-9c48-b6f793e3c88e-image.png

                                I struggle a little bit with the Alpha category.
                                According to the gps-speedsurfing rules the Alpha category is the speed over 500m, including a gybe (180 degree turn), and the start and endpoint needs to be within 50m of eachother.

                                To determine if there was a gybe, I thought about recording the direction for each second, but I noticed that isn’t available as parameter.
                                So the only other option I see is derive the direction from the coordinates, but that includes some calculations.

                                Any other ideas?

                                Suunto Vertical Titanium Solar
                                OnePlus Nord 4

                                1 Reply Last reply Reply Quote 0
                                • U Online
                                  Unpaired8373
                                  last edited by

                                  Is it expected that even an example app crashes the watch with a Syntax Error ?

                                  After having my own app crash - and almost brick the watch or at least having it perform a fault recovery for a couple of minutes - I thought I reduce the app to a bare minimum and work from there but even that crashes the watch. I then copied the Dynamic Icons example but still get the crash log below:

                                  #2670816 22.03.2026 18:43:43 : ERR UI_FRAMEWORK : JS:0x8258be29:SyntaxError: 5
                                  #2670817 22.03.2026 18:43:43 : ERR APPLICATION : Thread state: name:ui
                                  #2670818 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:ui s:0 pc:0 lr:0
                                  #2670819 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:UI s:1 pc:78e9c lr:81ab1
                                  #2670820 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:ID s:1 pc:9b6d6 lr:84a15
                                  #2670821 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:BL s:2 pc:6c324 lr:6c15b
                                  #2670822 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:nV s:2 pc:6c324 lr:6c15b
                                  #2670823 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:Nt s:2 pc:6c324 lr:6c15b
                                  #2670824 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:WI s:2 pc:6c324 lr:6c15b
                                  #2670825 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:lo s:2 pc:84020 lr:84051
                                  #2670826 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:Po s:2 pc:6c324 lr:6c15b
                                  #2670827 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:WB s:2 pc:9b6d6 lr:84a5b
                                  #2670828 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:Ap s:2 pc:9b6d6 lr:84a5b
                                  #2670829 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:me s:2 pc:9b6d6 lr:84a5b
                                  #2670830 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:Tm s:2 pc:b6aca lr:84a15
                                  #2670831 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:Se s:2 pc:6c324 lr:6c15b
                                  #2670832 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:hc s:2 pc:6c324 lr:6c051
                                  #2670833 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:DS s:2 pc:6c324 lr:6c051
                                  #2670834 22.03.2026 18:43:43 : ERR APPLICATION : CtxDog n:us s:2 pc:6c320 lr:6c051
                                  #2670835 22.03.2026 18:43:43 : TRC UI_FRAMEWORK : wuiDump Assert peFunctionCombiner.cpp:302
                                  #2670836 22.03.2026 18:43:43 : EVT MAPS : Tile sz=29840, x17435, y11374, z15
                                  #2670837 22.03.2026 18:43:43 : TRC MAPS : Req[0] result: Code=OK
                                  #2670838 22.03.2026 18:43:43 : TRC MAPS : Req[0] handle: clientID=1, handle=1153598804039951724, r
                                  #2670839 22.03.2026 18:43:43 : EVT TRAININGLAB : TLab: Input source 0 timeout
                                  #2670840 22.03.2026 18:43:43 : EVT TRAININGLAB : TLab: Active input source 3
                                  #2670841 22.03.2026 18:43:45 : EVT EXT_FLASH : ExtFID 0xc2,0x25,0x39
                                  #2670842 22.03.2026 18:43:45 : ERR FAULT : A302:duktapeFunctionCombiner.cpp
                                  #2670843 22.03.2026 18:43:45 : EVT BOOTLOOP : Faultcom c:fa017c01 ts:1774201322 n:1774201425
                                  

                                  As a side-note: I really like the naming of the internal code files šŸ™‚

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

                                  Suunto Terms | Privacy Policy