Watchface Builder for Garmin

Watchface Builder for Garmin


Version 8.3.5

  • Added: Ctrl + Z for undo, Ctrl + Y for redo

The following keyboard shortcuts are supported:

  • Shift + Arrow keys (move selected object one pixel at a time)
  • Arrow keys (move selected object 5 pixels at a time)
  • Delete key (delete selected object)
  • Ctrl + C (copy selected object into clipboard)
  • Ctrl + V (paste the object from clipboard into your design)
  • Ctrl + Z (undo)
  • Ctrl + Y (redo)

Version 8.3.4

  • Added: Complication selector on app property

You can set the complication by app property. First add a complication select to the app properties,

Then you can set the complication of each object under “custom complications”

Then user will have options to select which complication they want to see when they press and hold the object’s area.

Version 8.3.0

  • Added: app property

You can create whole bunch of properties for your design, and use them in any expression. Check out this demo: demo of app property – Watchface Builder for Garmin – Watchface

This is the original design, with title, shows second, and date color is white.

This is after the setting changes (title change to “Demo”, hide second, and date color to green).

Right now this feature is only useful for designs published to the connect IQ app store. I’m still working on to solve an issue so sideloaded prg can change properties too.


Version 8.2.0

  • Added: sliding text (horizontal text)
  • Added: scrolling text (vertical scrolling text)

Now you can slide a long text for each datafield object.

set how many characters you want to display, and the speed of sliding (how many seconds you want to the content to change). Apparently if the speed is less than 1 minute, the slide will only work during the high power mode (because during the low power mode, the screen only got updates every minute).

You can also add a scrolling text field from datafield window (click datafield menu, search scroll). Set the data field value to the following format: [speed, exp1, exp2, …]

The first element from this array is the seconds (how faster you want to scroll the text between each elements in this array). The rest of elements is the expression you want to show.

This is the demo.

Enjoy them.

Version 8.1.0

  • Added: Stack

In object stacks, multiple objects can be stacked on top of each other, so you can put all of your favorites together and then swap them by a trigger (press, power mode switch, every 5 seconds, or any expression you can think of).

First, you add a stack on your design, adjust its size and position, select the trigger event. Then add all objects you want to swap when trigger event happens, make sure the object is inside the stack boundary.

Please take a look at this demo of stack usage.

In this demo, the top line will show either current heart rate or heart rate chart (rotating every 5 seconds). The middle line will show current time, and you can change the color by pressing it. The bottom line will show either total calories or active calories (switching every time when watch enters high power mode)

Watches with touch screen could take advantage of this feature, and offer customization right on the watchface itself.

Version 8.0.6

  • Added: tendency of sensor history data
  • Update: an improvement of the size of app (more coming)

Thanks for u/emo_ape’s suggestion, I added the following tendency data fields.

The way how to calculate the tendency is:

  1. First retrieve the last hour’s sensor history data,
  2. calculate the average value (v1) of the first half hour (-30 minute to now)
  3. calculate the average value (v2) of the second half hour (-60 minutes to -30 minutes)
  4. return the difference of v2 and v1 (v2 – v1)

You could also use a math expression to fine tune the value by entering the duration of seconds.

(sh.trend)(4, 1800) will return pressure tendency from the last 30 minutes.

Version 8.0.5

  • Fixed: Low power display honors visibility expression
  • Added: low power mode will update the second data fields (tm9, tm9.1, etc.)
  • Added: grid lines

If you set the visibility of the second object, during the low power mode when screen is updating, app will also check the expression of visibility and decide if the second should be visible or not.

The following data fields ((tm9), (tm9.0), (tm9.1), (tm9.2), (tm9.3), (tm9.4)) will be updated during the low power mode.

A new object (grid line) was added to builder. This will be useful for drawing the grid lines under a chart data field.

You can specify the color of grid lines and spacing between lines, and also you will rotate the object to show horizontal or vertical grid lines. All those fields can use expression to make it further dynamic.