System 7 questions

Couple of Questions for Garmin, related to System 7:

1) Have you considered skipping API 5 and 6, and go straight to 7, to make System and API level line up??? There is plenty of confusion with the whole API vs system  level as is.

2) Have you considered making a way to select the compile version in the manifest or something?? System 7 seems to bring some (needed/nice) changes to core stuff, so there is no backwards compatibility with old System 4/5/6, right??? If one just needs to quickly fix a bug in an old app, might not make sense to update the code. Would be nice if the level was selected in the project, rather than only in the SDK manager.

3) Is there a list of which devices will get System 7 support? Surely VENU 3 and VA5 is on the list right? 

  

  • Hi FlowState, I think that the more important thing here is to give the choice/resource/possibility to the developer. I, for example, have an analog watch face (for amoled only, because I only have my personal watch to test) which the default setting is without seconds hands because I find annoying it appearing and disappearing everytime, if they could be kept always on, I think it would a Garmin differential against those "batteryless" competition (mostly Samsung/Apple watches). I believe that people that buy Garmin's amoled watches are heavily interested in aesthetics. For me, developing a device that can have independent designers (us) and hardware capable of always-on 1sec refresh (mostly important: battery) but not allowing us to use it, is like "swimming, swimming and drowning at the beach" (a brazilian slang)

  • I was at the Summit when "seconds all the time -1hz watch faces" was announced (by DCR) - there were cheers.  Than Alpha Monkey then got up and talked about the 30ms time limit, and there were boos!  If you've never used onPartialUpdate, take a look at the Analog sample in the SDK.  Also here's a whole thread about it, and the pitfalls, with a sample I did (digital WF).  

    https://forums.garmin.com/developer/connect-iq/f/discussion/5156/1hz-watch-faces---q-a

    I am not at all surprised that this isn't available on AMOLED displays.

  • I believe that people that buy Garmin's amoled watches are heavily interested in aesthetics.

    I agree but I would also argue that people who buy Garmin's AMOLED watches care less about function than form.

    Case in point:
    - AMOLED watches don't have always on seconds
    - AMOLED watches go dim during activities after a timeout of a few seconds.

    To me, someone who cares more about function when it comes to a running watch, the 2nd point is a deal breaker. If I'm running a hard interval and I want to glance at my stats, I don't want to have to turn my wrist to make the display light up so I can read it in daylight.

    One could argue that MIP devices have a similar problem at night - you can't see anything unless the backlight is turned on. But the difference is that you can actually keep the backlight on indefinitely for MIP devices. AMOLED devices don't allow you to keep the display at full brightness, with the exception of Polar (or some other Garmin competitor), which has a feature where the brightness fluctuates between "bright" and "super bright", so it stays readable at all times but avoids burn-in (at the expense of battery life). If Garmin adopted that trick, I might consider AMOLED, although I'd miss watchfaces with always-on seconds *and* per-second HR updates.

  • Like I said Jim, I really like to believe Garmin has a very good reason to not allow this, something like its impossible to fulfill the 30ms timelimit, whatever... But to be honest, I think it all comes down to giving the user a choice, my Venu 2 battery lasts 3 days with aod. If with 1hz it would fall to 2 or even 1 day, I still think I would use it.

  • Only a small clarification on what I said: I meant that people that buy Garmin amoled watches may care "a lot" about aesthetics, not "more about aesthetics than function".

    I never thought about this "really" always on for activities, since I'm a cyclist and use Edge for activities. I only use the watch to broadcast HR to the Edge. Being able to put it always on for 1 hour a day would be really nice for runners and wouldn't be a heavy burden for battery life.

    One curiosity about running with a watch: At least for me, a road cyclist, the watch would be much more visible if I could position it in the bottom side of the wrist, the side of the palm of the hand, does that happen with runners too?

  • One curiosity about running with a watch: At least for me, a road cyclist, the watch would be much more visible if I could position it in the bottom side of the wrist, the side of the palm of the hand, does that happen with runners too?

    In my experience, not really. I would only consider wearing my watch like that if I were to wear it while playing basketball or something, to minimize the risk of annoying/injuring other players with incidental contact. But for the same reason, I don’t wear a watch at all while playing basketball.

    I don’t think I’ve ever seen any other runners wearing their watch like that either. 

    But to be honest, I think it all comes down to giving the user a choice, my Venu 2 battery lasts 3 days with aod. If with 1hz it would fall to 2 or even 1 day, I still think I would use it.

    I think AMOLED watches lack support for 1 Hz watchface updates to prevent burn-in, not necessarily solely to save battery life. It’s the same reason that the screen dims during activities after a few seconds, and a wrist gesture or button press is required to make the screen go back to full brightness.

    From Garmin’s POV, they don’t want to give the user a choice which results in poor battery life and a burned-in display, because the user will blame them for selling a bad product (and the user might not be wrong in that case.)

    Only a small clarification on what I said: I meant that people that buy Garmin amoled watches may care "a lot" about aesthetics, not "more about aesthetics than function".

    Sure I got that, but *I’m* saying that they care more about aesthetics than function.

    A different way of looking at it is that the “function” they are losing isn’t important to them at all.

    For example, many people may not care about seeing seconds and 1 Hz HR on a watchface. Many people may not care about being able to glance at their watch during a hard workout to catch a glimpse of their stats, without having to do a deliberate wrist gesture. Many people, including DC Rainmaker, said you “just have to get used to a different way of doing things”.

    Like I said, a competitor to Garmin implemented a compromise which avoids dimming: their AMOLED watch constantly flips between bright and super bright during activities. This keeps the display bright and readable while avoiding burn-in (so they say), but it’s at the cost of battery life. I think a company rep mentioned this is especially targeted at cyclists who mount the watch on their handlebar (so they don't have the option of using a wrist gesture.) It's worth noting that this use case is something even DC Rainmaker called out as something which isn't handled well by Garmin's AMOLED watches.

    Like DC Rainmaker said, it would probably be better if this was documented and optional. But I wish Garmin would adopt this feature too.

  • There's an easy fix, depending on how your code looks. I have something like this:

    // top of app
    typedef rezRef as ResourceId;
    
    // then in some function later
    var fString = WatchUi.loadResource((Rez.Strings as Dictionary)[fSym as Symbol] as rezRef);

    If you do all your strings and drawables like this then when you go back to SDK 6.x you only need to change one word, the typedef to Symbol. Also with this it's not necessary to disable type checking.

  • I understod System 7 can use comms in the main app instead of in background, that will be huge for me!! I just downloaded the system 7 SDK and will start play around with that. Has anyone tested it yet? Can I make web requests as often as I want to or still stuck to once per 5 mins? thx

  • That change is only for data fields.  You could always do that in widgets and device apps, and with watch faces, it's still only in the background. 

    This is something that only works on System 7 devices

  • yep, I need it for my data field. Just tested to make a webrequest from the data field main process and it worked, but I have not figured out a way to have the data field to pull my web server every minute (Timers are not allowed in Data fields)