Categories

  • 5k Topics
    53k Posts
    Pshemo74P
    Hi everyone! After a few years of silence, I’m thrilled to jump back into the community. I’ve been a loyal Suunto user for nearly 8 years now. My journey started with the legendary Spartan Ultra, followed by the trusted Suunto 9 Baro Titanium, and right now, I’m eagerly waiting for my brand new Suunto Vertical 2 Titanium Black to arrive! My sports routine is a 50/50 mix of weights and outdoor cardio. I love barbell training and compound lifts, but my second athletic passion is running – purely for pleasure, cardio, and the ultimate mental reset. You will most likely find me on empty forest trails, but I also mix things up with trekking, swimming, and skiing. I’m back here to connect, share outdoor experiences, and make some new sports friends. Quick question to the community: As I wait for my V2, I’m planning to look for the official titanium bracelet. Do you know if there are currently any active community promo codes or discounts available for accessories? Looking forward to catching up. See you on the trails and in the gym! Cheers, Przemek
  • 7k Topics
    92k Posts
    HighlandsH
    [image: 1779986590884-img_1092.jpeg]
  • 352 Topics
    2k Posts
    Dimitrios KanellopoulosD
    @Ldive Suunto has a dedicated department for this. So its not secondary.
  • 290 Topics
    4k Posts
    Łukasz SzmigielŁ
    Hi, I’m seeing a reproducible issue with a SuuntoPlus app during active navigation, and I’d like to ask what the recommended mitigation is. The app is called Constantin. It uses multiple UI templates for different workout views: td.html - drift / combined view tp.html - pace-focused view th.html - heart-rate-focused view The switching logic follows the documented pattern from the SuuntoPlus examples: the HTML template only sends a /Zapp/{zapp_index}/Event main.js handles the event in onEvent() main.js updates currentTemplate main.js calls unload('_cm') getUserInterface() returns the selected template Simplified version: var currentTemplate = 'td'; var changeTemplate = function(template) { if (currentTemplate === template) return; currentTemplate = template; unload('_cm'); }; function onEvent(input, output, eventId) { if (eventId === 1) { if (currentTemplate === 'td') changeTemplate('tp'); else if (currentTemplate === 'tp') changeTemplate('th'); else changeTemplate('td'); return; } if (eventId === 2) { if (currentTemplate === 'td') changeTemplate('th'); else if (currentTemplate === 'th') changeTemplate('tp'); else changeTemplate('td'); } } function getUserInterface() { return { template: currentTemplate || 'td' }; } In the templates I use a mechanical button like this: <pushButton name="up" type="lock" longType="lock" onClick="$.put('/Zapp/{zapp_index}/Event', 1, null, 'int32');" onLongPressStart="$.put('/Zapp/{zapp_index}/Event', 2, null, 'int32');" /> The UI itself is intentionally split into separate templates instead of one large uiViewSet, because earlier versions had UI/Duktape memory pressure on the physical watch, especially when running together with ZoneSense and navigation. Splitting into separate templates reduced active subscriptions, active evals, and canvas/UI load. The problem: When active route navigation is running, pressing the upper button to cycle templates causes a system navigation/POI notification to appear at the bottom of the screen. Sometimes it only flashes, but sometimes it stays visible indefinitely on top of the SuuntoPlus app. The app itself continues to work. The template changes correctly. Data updates continue. But the system POI/navigation overlay remains visible. The overlay disappears if I leave Constantin and switch to another screen/app, then return to Constantin. The problem appears only when cycling templates with the upper button while navigation is active. Things already tested: removed delayed/postponed rendering from the UI removed postpone-rendering:true reduced canvas refreshes and subscriptions added type="lock" / longType="lock" to the up button removed a full-screen black root background changed the root element id from a generic suuntoplus to unique ids per template verified that the canvas is not full-screen and should not be covering the whole display None of these mitigated the navigation/POI overlay issue. So my current suspicion is that this is not caused by canvas rendering or a full-screen DOM element. It looks more like an interaction between: the physical upper button active navigation / POI system UI immediate unload('_cm') from onEvent() template reloading during the same button event Questions: Is using the upper button for SuuntoPlus template switching expected to conflict with active navigation or POI notifications? Is type="lock" supposed to prevent this kind of system overlay interaction, or does it only affect button lock behavior? Is calling unload('_cm') directly inside onEvent() considered safe during active navigation? Would it be better to defer the actual unload('_cm') to the next evaluate() cycle after receiving the button event? Is uiViewSet / navigate() preferred over template switching for this case, even if it increases active UI memory pressure? Is there a recommended button for cycling SuuntoPlus views during navigation, for example down or next instead of up? What I’m trying to achieve is a stable way to cycle between 3 lightweight SuuntoPlus workout views on the physical watch, while active navigation and another S+ app such as ZoneSense are running, without triggering or leaving behind the system navigation/POI overlay. Any guidance on the recommended architecture or mitigation would be appreciated.
  • 120 Topics
    1k Posts
    dreamer_D
    @Ze-Stuart it’s really a pity. I really hope they can push an update soon to improve the user experience.
  • Anything not related & off topic

    1k Topics
    30k Posts
    No new posts.
  • Sports Tracker apps feedback, questions, feature suggestions and issues

    31 Topics
    133 Posts
    S
    [image: 1774862540045-78712e04-50fb-484e-84b6-86e28ce395f0-immagine.png] [image: 1774862707642-dfae38c3-a3d4-4ef2-8037-9fac97d5c393-immagine.png]
  • 100 Topics
    476 Posts
    pavel.samokhaP
    No day without another new vibecoded service. This one is at least more-Suunto specific, not yet another “I made MCP server so you can connect Claude to your Suunto data” (then repeat spam post for Garmin/Coros/etc.) It’s great that people are doing various services, but seems like LLM made this so easy that people not thinking enough about the implications. Vibecode first, market second, reasoning later if ever. But yeah, already think on making paid options What’s the point of the service? What it adds in comparison with Suunto App? Majority of the users sync their Suunto Watch with Suunto App, so even if some third-party service can extract and upload watchfaces, they will likely by overwritten when user sync his watch to SA. Or if they care to change IDs then you can end up with duplicates. And I can continue with other questions, like what happens if Suunto do changes to WF API/format. Then you can break something in the watch using third-party service like this. Find out how to make custom WF? OK, same as above, the fact that you can find out, doesn’t mean it’s good - maybe Suunto is not releasing it because it’s not yet ready for general audience and risky to break the watch. All in all, for the author: good catch to reverse engineer the protocol, for ordinary users: beware.
  • Anything related to the recent announcement about Suunto’s new Digital services and Movescount Transition

    340 Topics
    5k Posts
    E
    @Christoph-Van-Laethem In here the bubble appears : https://www.suunto.com/fr-fr/Assistance/ I realized that the bubble doesn’t come on when using my main browser (Firefox), probably due to the ad blockers I added, so i use Edge only for Suunto support

Suunto Terms | Privacy Policy