How difficult is it to make a watch face?

I'm using the Forerunner 645 watchface on my vivoactive 4s. Well, a very reduced version of it: just two big time numerals on the right, and three datafields on the left, no further ornamentation or stuff. The rest is all ... well, I don't know if it's just invisible and still draining the battery or really disabled. I'd love to have exactly this watch face, but simpler without all the stuff to see if it improves battery life. How difficult would it be to create this, just for my watch? Is it possible to load an existing watch face into the editor and remove all the things I don't want, or would I have to start from scratch?

  • Is it possible to load an existing watch face into the editor and remove all the things I don't want, or would I have to start from scratch?

    You would have to start from scratch (*), and it's not really a question of graphically editing a watchface -- it's mostly writing code.

    (*) Assuming that the watchface you care about isn't open-sourced (which it isn't).

    Might be easier to click on Contact Developer on the store page and make a feature request.

    Or you could try the M2 Watchface app which lets you design your own watchface:

    https://apps.garmin.cn/en-US/apps/1b4e3210-8105-487b-9f3a-8d538e6fed55

    I have no idea what the battery life is like. (i.e. It's possible that the fact that it supports user-customizable designs might have an adverse affect on battery life -- or not.)

    (I haven't tried it myself.)

  • Before you do this, maybe just find a simple watch face in the store that shows what you want, run that, and see the difference in battery usage if any  If there's really not much of a difference, no need to write your own.

  • Yes, I know it's coding, and I have no problem with that. The M2 thingy sounds interesting though. Thanks a lot. I'll give it a look.

  • Good one! I might just take one of the most basic standard watch faces that come with the watch, switch off seconds, and see what this does to battery life.

  • you never know how simple the code behind a simple WF really is - I'd suggest compiling your own watchface and make sure the code is as simple as possible...

    E.g. in the list of off open source apps you can find following (very basic) watchface (it's the first one I've found that's really basic): https://github.com/hansiglaser/ConnectIQ/tree/master/SimpleWaF

    If you make your tests with such a simple WF you can be sure, that no custom WF can be more battery friendly than this one...

  • I just downloaded a very simple one, probably very similar to the first one you link to. There's indeed some difference, but I need more data first to figure out how much really :) Sounds like a fun project for the coming rubbish weather weekends.

  • Former Member
    Former Member over 4 years ago

    Building a watchface on Garmin isn't easy, but it definitely is gratifying when you finally have done so.

    The developer documentation on Garmin is quite lacklustre to put it kindly; you'll find yourself using the Garmin forums to learn about how to use the SDK & API more than you will the actual documentation itself. 

    Moreover, the SDK documentation leads you to believe a few things that aren't actually applicable in real-life watchface building scenarios.

    For example, we had followed the SDK documentation and lain out our first watchface by using Layouts. As it turns out, you can't reference instances of layout sub-objects within your Monkey C code, which means no granular control over things such as graphics.

    So, we ended up having to rewrite the whole watchface to be lain out purely through Monkey C. We don't use Layouts at all anymore, and we never will again. 

    All in all, it took me many weeks of hard work, grave digging ancient forum posts and somewhat needless suffering through a poorly designed SDK to produce a high-quality watchface for Garmin.

    Building my first watchface for Garmin was the most difficult start to a smartwatch platform I've ever encountered - and working on smartwatch software has been my full-time job for over four years. Despite all of the suffering I went through, finally getting our first watchface released was very fulfilling. I love a good challenge.

    Don't let my message discourage you - in fact, I hope it's the opposite. Set realistic expectations for yourself that building a watchface on Garmin will be difficult, but then find yourself feeling fulfilled once you finally do so. 

    Give it a shot! :) 

  • Thanks a lot. From browsing around I figured it would be difficult, but hey, this is my first smartwatch, and I want the watch  to look and do what I want. And hopefully get the battery time out that I want. Thus yeah, I'm going for it.

  • No worries. Idk if this helps, but here's a pretty popular watchface which is also open-sourced:

    https://apps.garmin.com/en-US/apps/9fd04d09-8c80-4c81-9257-17cfa0f0081b

  • Yeah, I downloaded it, and deleted it again. It's just too much stuff for m. I know I can switch most things off, but then it looks ugly. What I really want is something similar to the Forerunner watchface, without all the moving stuff. Having compared it now to a very basic one with just hrs/minutes and date, the difference in energy usage is massive!