Second Hand Rotation formula

By experimenting with “smooth” second hand movement (like clocks in train stations use) I found this formula that I found helpful:


A demo can be seen here. Hope you like it :slight_smile:


hey that’s a cool look. Thanks for sharing! I guess I haven’t observed that particular movement before though. Is this an accurate replication of something you’ve actually seen on a train station clock?

I’ve had a few combined in this draft (inspection is open):

I thought the purple one was more like a train station (it is slightly faster and waits at 0).
My orange one is close to yours.

Credits to whomever shared them on the forums here (I don’t think any of them is my own)

EDIT looks like they mostly came from @mrantisocialguy, so credits to him :wink: (except my blue works on Fossil as well)


Exactly that was inspiring me.
I couldn’t ever find the “back-falling” move in any watch so I will implement this rotation formula in my next model.
One thing that I (sadly) detected while experimenting different second movements:
If the watchface in total is rather complicated (many elements, complications etc.), then the second movement ist not continuous, but (shortly) stops visibly

You might want to check that on a WearOS watch. I tried it on my TicWatch C2 and all it does is sit there pointing at 12 and not moving. I’ve seen other custom second hand expressions fail the same way. As it is it’s a no go on my TicWatch.

Custom Second Hand Malfunction on Fossl Watch

Those are issues with parentheses. In the Facer docs it states that parentheses make something a number. WearOs is picky.
I used the expression in the thread you linked as an example.

Red is the original expression (you don’t see it here, it is beneath the green), green is with extra parentheses (and works on the Fossil), yellow fakes what happens on Fossil to show it here.

Looking at the expression:
This part: (#DWFS#-30)+((#DWFSS#-#DWFS#)*6) is rendered in WearOs as “number+number” which is a string and not a number.
Making it ((#DWFS#-30)+((#DWFSS#-#DWFS#)*6)) fixes that.

Hope this helps.