[Watch Face] Flying Second Wheel

A unique second wheel, where the ones digit of the seconds are always up/down and orbits the tens digit of the seconds, which in turn orbits the centre of the watch face. This is not an image dial which simply rotates, but rather mathematical expressions. Digital zoom is incorporated on the current the second ones digit.

Time, date, current weather condition, current temperature and steps actively change position every 1/4 rotation of the seconds wheel, in order to not overlap any data.

Battery level meter is at the bottom. Green above 60%, red below 30%, and yellow in between.

For my fellow watch face designers, you may be interested in the orbital expressions for the numbers in the seconds wheel. It is quite challenging since the orbital sine / cosine equations seem to break down when embedded in the second orbit of the first orbit. I graphed out an X-Y coordinate graph below vs DWFSS value, and the results ended up quite interesting.


The blue points represent DWFSS values from 0 to 360. The red points represent DWFSS values from 361 to 394.

For the blue points, 0 to 360 no longer represents a full circular motion around the centre point. Rather it has the funny loops and stops short, about 90% of a full circle. You have to extend the DWFSS values beyond 360 in order to evenly distribute, in this case, all 10 digits of the ones seconds digit value. Also, the extension is not linear, as one has to account for the little loops & such. If you actually follow the motion of one particular number, you can see it making the loops per the graph. Also, the embedded expressions do not output the numbers sequentially. Really wild results occurred…

It actually turns out that in my final resultant seconds wheel spin, the wheel should spin 3.5% faster than it really does, so there is a little skip at the transition from the 59 to 60 second mark. But it is hardly noticable unless you are looking for it. I’m really at a loss of how to speed up the second wheel spin by 3.5%, so I just let it slide.

Below are sample expressions for the number 0 of the ones second digit.
X: ((160+cos((#DWFSS#-90)*((pi)/180))*110) + cos((#DWFSS#-0)/10)40)
Y: ((160+sin((#DWFSS#-90)
((pi)/180))*110) + sin((#DWFSS#-0)/10)*40)


I don’t understand all these sin and cos math sorry Brad, but that’s a really neat, impressive design, you’ve done an amazing job there mate, well done :clap:


Hi @bradtc , nice concept.
I would advise you to use the rad function to convert to radians (for readability) and also use `` when posting expressions on the forums (some * are lost)
((160+cos(rad(#DWFSS#-90))*110) + cos((#DWFSS#-0)/10*40))

I’m not sure why the second cos is not getting radians as input, your results will give unexpected behavior.
Also not really sure what you mean by having to speed up 3.5%.
Is your goal to keep the 10’s digit and 1’s digit horizontally aligned?
Turning on inspection would help.

Maybe this oldy of mine can give you some insight (although it’s made for hours and minutes):


Many compliments for the calculation behind the effect! Nice idea :wink:


Thank you @icrltd4 / @ThaMattie / @kingDavid.

Good idea on the radians conversion @ThaMattie. It’s been about 25 years since my high school math classes & I actually forgot about that. :laughing: When I graph your expression, it generates a smooth circular motion, as per the grey data series below (they are so close they look like a continuous line):

Unfortunately, that won’t work in this case, as I do need the little loops per the blue line. As noted above, if you follow an individual number in my seconds dial, it does follow the loop pattern. What I meant by needing to speed up the dial by 3.5% is, when you notice the subtle difference between 59 to 00 seconds after a full loop, the digitally zoomed second postion jumps by about 2 number positions +/-. This is roughly 3.5% (2sec/60sec). Ok, really 3.33%, but since the 2 positions is a guess, lets say 3.5%. I figure if I can put in some sort of a speedup factor by about that much, it should even out the dial and the hilighted actual ones second digit postion should stay horizontal to the ones ten digit position. But, I’m not going to worry about it too much.

I think a good way to look at this, is the orbital orbit follows a pattern that matches a kids spirograph toy. Does anyone else remember that toy - maybe I am dating myself - ha ha! The 360 degree point doesn’t match the 0 degree point, and keeps going and generates a pattern. If you follow the red line in the graph, you can see it starts to veer off from the initial 0 degree point and starts a loop at another point a little to the right. If I kept graphing the points I would get a nice pattern like a spirograph. However I wanted the 360 degree and 0 degree points to match. Hence the need to work with the weird data & desire to speed up the orbits by ~ 3.5%.

As requsted, I have turned on inspection.

1 Like

You’re not the only one old enough to remember it mate :joy:


I’ve already dedicated one to that @bradtc and @icrltd4:


Hit the play button to 3x speed on that and it gets a bit nutty!!! Woah! Ha ha!

1 Like

No hickups in this one:

And reverse rotation (looks more natural imo):


And there you go… leave it to @ThaMattie , he closed the loops!

@ThaMattie 's equations are graphed in yellow, and below for the zero digit. Many thanks!

X: (160+(110*cos(rad(#DWFSS#-90)))+(40*cos(rad(#DWFSS#*6-(0*36)))))
Y: (168+(110*sin(rad(#DWFSS#-90)))+(40*sin(rad(#DWFSS#*6-(0*36)))))

I’ll implement this and update shortly. I owe you a beer! :beers:

Update: I implemented the new expressions and they worked perfectly! Thank you! :beer:


If Mattie ever collects on all the beer debts he’s owed from all of us he’ll be laid out for a week!


Thanks you guys, your Formulas and Equations work really nicely on images as well :smiley:


This is now ready for Publishing I think, but I’m just waiting on any suggestions or ideas :grin: