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
    20 Posts 9 Posters 791 Views 9 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.
    • brechtvbB Offline
      brechtvb Bronze Member @Isotop7
      last edited by

      @Isotop7 if you create a new application with vscode, you can click here and see the information on the right.

      Did not find a vscode entry point in the palette to find the same documentation.

      1291d2c3-bdd2-4b9c-ba0f-dde9603e7307-afbeelding.png

      I 1 Reply Last reply Reply Quote 1
      • brechtvbB Offline
        brechtvb Bronze Member @Dimitrios Kanellopoulos
        last edited by

        @Dimitrios-Kanellopoulos i almost feel obligated to buy the garmin sensors and make it work after all.

        1 Reply Last reply Reply Quote 0
        • I Online
          Isotop7 @brechtvb
          last edited by

          @brechtvb nvm, i found a shortcut with cmd-key + p and Suunto Plus: Open Documentation

          1 Reply Last reply Reply Quote 2
          • S Away
            SuuntoPartnerTeam @mabe2k
            last edited by

            Hi @mabe2k!
            You can but in most cases you probably shouldn’t. The touch functionality is prone to draining the battery faster than usual and might not be available for all watches. <div> elements (and some other elements) have attributes onTap, onDoubleTap and onLongTapStart that can be used to register event listeners for touch actions (clicks, double clicks and longpress-then-move respectively). To use these, you need a compatible watch with up-to-date software and touch functionality enabled (select “Touch” to be “On” under “Exercise options” when you start an exercise or under “Control panel” from the pause menu during an exercise). The root element (<uiView>) has an even wider variety of touch action related event listeners, but you can probably get started with the ones mentioned (please feel free to ask a follow-up question about this if you’re interested in these).

            Here is a basic example of the explained functionality using the built-in setStyle function to change the color of a box when it is interacted with:


            t.html:

            <uiView>
              <div id="suuntoplus">
                <div id="box"
                  style="width: 40%; height: 40%; left: calc(50% - 50%e); top: calc(50% - 50%e); border-radius: 25px; background-color: #FFFFFF;"
                  onTap="setStyle('#box', 'background-color', '#00AAFF')"
                  onDoubleTap="setStyle('#box', 'background-color', '#44CC00')"
                  onLongTapStart="setStyle('#box', 'background-color', '#FF7733')"
                  ></div>
              </div>
            </uiView>
            

            Please note that you will need a manifest.json with the mandatory fields and a main.js with getUserInterface function defined. Minimal versions of these are provided here for your convenience:


            main.js:

            function getUserInterface() { return {template: 't'}; }
            

            manifest.json:

            {
              "name": "Touch",
              "description": "Touch example",
              "author": "Your Name",
              "version": "1.00",
              "modificationTime": 1770000000,
              "type": "feature",
              "usage": "workout",
              "template": [{"name": "t.html"}]
            }
            

            Hope this helps. Happy coding!

            1 Reply Last reply Reply Quote 3
            • TieutieuT Offline
              Tieutieu Platinum Member
              last edited by

              My question (before using maybe some third party apps someday ?) : how does battery consumption will be impacted and what is the « bug » risk for the watches ?
              I guess it will depend on how apps will be coded and tested ?

              Suunto’s devices at home :
              Vertical titanium solar
              Suunto Race S
              S9pp titanium sand
              Suunto Wing
              S9B titanium Ambassador edition, A3P, X6

              S 1 Reply Last reply Reply Quote 1
              • S Away
                SuuntoPartnerTeam @Tieutieu
                last edited by SuuntoPartnerTeam

                @Tieutieu

                … how does battery consumption will be impacted …

                I don’t believe we test the battery consumption of submitted applications. Ultimately, it all depends on how much work the app is actively doing during an exercise.

                … what is the « bug » risk for the watches …

                Certainly buggy software will be written 🙂 You can give written feedback to a developer in the store. Bugs shouldn’t cause any ‘‘risky’’ behaviour in the watch – the firmware usually disables any applications that crash. It may happen that a crashing application leads to a soft-reset of other running applications.

                1 Reply Last reply Reply Quote 1
                • I Online
                  Isotop7
                  last edited by

                  Is it possible to catch the “Press Lap Button” event in my app? If yes, how? I’ve searched the reference but can’t find it or I am unable to understand it 😧

                  S 1 Reply Last reply Reply Quote 0
                  • S Away
                    SuuntoPartnerTeam @Isotop7
                    last edited by SuuntoPartnerTeam

                    @Isotop7 Good question! This is somewhat hidden in the documentation. You can respond to a lap button press using the onLap callback:

                    function onLap(input, output) { ... }
                    

                    Also note that the lap button will work automatically, as long as you don’t override its user input handling.

                    Automatic laps can be handled with the onAutoLap callback:

                    function onAutoLap(input, output) { ... }
                    
                    1 Reply Last reply Reply Quote 1
                    • Tomas5T Online
                      Tomas5 Gold Members
                      last edited by Tomas5

                      What are memory restrictions for different watch? How much memory can i use to allocate variables?

                      To clarify, i want render graph for HR and Altitude, i will store value every second. Do i need to agregate or can i just store all values in array? For 24h event it would be around 200kB if i use Uint8Array.

                      Of course i will do aggregation as it is not needed to store all values but i want to know how strict limits are.

                      Suunto Ambit 2 > Suunto 5 > Suunto Race 2

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

                        @Tomas5 that will defo crash. It can be hard for computers as well and has 0 benefit storing 1s reso on 200px (or so for example) screen.

                        You want to be storing max the pixels to show the data. And that is not much .

                        Community Manager / Admin @Suunto
                        Creator of quantified-self.io a portal that allows you to analyze your data from various providers, upload fit activity files to Suunto app, gpx routes and more…

                        Tomas5T 1 Reply Last reply Reply Quote 0
                        • Tomas5T Online
                          Tomas5 Gold Members @Dimitrios Kanellopoulos
                          last edited by Tomas5

                          @Dimitrios-Kanellopoulos i agree and that was “overkill” example but knowing hardware limitations can greatly improve how specific algorithm is done. And can prevent crashes cased by using all memory. Without this knowledge it is based only on trial and error which is not great.

                          Maybe just some recommendations from dev team like don’t use more than 1kB of memory per Suunto Plus app at a time or something like that.

                          I am thinking about 2 scenarios:

                          1. Do just simple 45minute graph like native one.
                          2. Do 15/30/60/full graph with changeable view by button

                          But second one will require more memory. At least 4-5 times more than scenario one.

                          And than second issue i want HR and Altitude and maybe some other graphs. Based on memory restrictions i can make single S+ with changeable view or multiple smaller S+ with just one value.

                          Suunto Ambit 2 > Suunto 5 > Suunto Race 2

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

                            @dimitrios-kanellopoulos To upload the developed SuuntoPlus app the instructions state that you have to apply for the Suunto Partner Program.

                            If I apply via this link: https://survey.alchemer.eu/s3/90553908/PARTNER-Become-a-Suunto-Partner it seems that it’s still aimed for companies rather than individuals. Is this the correct way to apply?

                            Suunto Vertical Titanium Solar
                            OnePlus Nord 4

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

                              I see in documentation that for getting data for graph i don’t need store anything and i can read

                              Activity/Log/-1/Move/0/HeartRate/Avg/Data

                              But it looks like it doesn’t work.

                              And in section:

                              In: Native resources in the watch
                              I see that {Window} doesn’t support “Log” so which part of documentation is incorrect? Or do i understand something wrong?

                              There is even Example with this Hearth Rate graph but seems it doesn’t work in simulator and in watch too. @suuntopartnerteam can you point me in correct direction? Thanks.

                              Suunto Ambit 2 > Suunto 5 > Suunto Race 2

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

                              Suunto Terms | Privacy Policy