Replies: 4 comments 4 replies
-
Found it in /Sensor-Watch/watch-library/hardware/watch/watch_slcd.c: void watch_start_tick_animation(uint32_t duration) { Now my new problem is, that https://www.sensorwatch.net/docs/wig/display/ does not go into detail, how the colon works. What i can read out of the code is, that currently segment 8 is somehow get alternating feed with segment 0 or 2. Unfortunately I am stuck here now, until I find out, how to address the colon, so I can change the address (which pints currently to segment 8), as well as the data sent (which is currently 0 and 2 and I guess I need to change that to 0 and 1?). |
Beta Was this translation helpful? Give feedback.
-
You’re not lost; the issue is that the SAM L22 can only do low-power autonomous blinking on two segment lines, and autonomous segment animation on two others. Unfortunately, because of the way the F-91W’s LCD is laid out, the colon isn’t on one of those lines. As a result you need to use CPU time to blink the colon, whereas we can do our little tick/tock animation while keeping the CPU entirely asleep, saving power. We were lucky that these low power animation segment lines lined up with the seconds display, since updating the seconds also requires CPU time, making the seconds display less relevant in low energy mode. I admit that it’s not as traditional as a blinking colon, but my hope is that it conveys the sense that (1) the watch has entered a different mode where (2) seconds are unavailable, and (3) action is required — pressing the Alarm/Wake button — to get the seconds back. |
Beta Was this translation helpful? Give feedback.
-
I'm a bit of a broken record on this one, but you can theoretically also do DMA transfers on a timer while the CPU is asleep ('Automated Bit Mapping'). If you use this, it should be possible to do arbitrary things with the display, though this will presumably use some more power. One day I will actually try to do this :) |
Beta Was this translation helpful? Give feedback.
-
Hi, |
Beta Was this translation helpful? Give feedback.
-
I got my new toy yesterday, and unfortunately my programming knowledge is not sufficient to even get a colon blinking. Here is my problem: The animation of the simple clock is beyond my imagination. Why are 2 digits alternating, while the colon between the hours and the minutes stay on. So I wanted to change the strange animation to a blinking colon - like every other watch does. So I had a look at the code and found the following line, responsible for that:
if (!watch_tick_animation_is_running()) watch_start_tick_animation(500);
So far so good, but I can not find the definition of the function "watch_start_tick_animation" anywhere. I assume it is somewhere in here:
#include <stdlib.h>
#include "simple_clock_face.h"
#include "watch.h"
#include "watch_utility.h"
But I can not find stdlib.h and in the others there is no watch_start_tick_animation defined. Can anyone help me out? Yes, I am a complete newbie in here, I have some programming knowledge in QBasic (don't laugh!), html (native, no WYSIWYG editor) and javascript, so please be a bit patient...
Beta Was this translation helpful? Give feedback.
All reactions