Hello,
There is a few days or week that I have some return from user on my watchface, problem with AOD
I have the same on my Epix, impossible to have AOD with my watchface, the screen is going off, and I am wondering where is the problem.
Here's my OnUpdate starting to detect sleeping or low power (I don't undersand the difference between sleep and low power) :
dc.clearClip();
if (System has :getDisplayMode) {
var displayMode = System.getDisplayMode();
if (displayMode == System.DISPLAY_MODE_LOW_POWER) {
System.println("DisplayMode = LOW_POWER call amoled");
Amoled.dessine_AMOLED_low_power(dc,clock);
return; // et puis IMPORTANT arrêter le update
} else if (displayMode == System.DISPLAY_MODE_OFF) {
return;
}
} else if (($ has :Amoled) and (Amoled has :dessine_AMOLED_low_power) and (RequireBurningProtection) and (! isAwake)) {
System.println("call amoled sans display low power ?");
Amoled.dessine_AMOLED_low_power(dc,clock);
return; // et puis IMPORTANT arrêter le update
}
And in my Amoled class, I draw the watchface, and I put black lines :
function dessine_AMOLED_low_power(dc,clock) {
var timeNow = Time.now().value();
System.println("amoledTimeToRefresh="+amoledTimeToRefresh+" timeNow="+timeNow);
if ((timeNow <= amoledTimeToRefresh +10) && (amoledFait)) { return; } // for flicking I don't undersant why
amoledFait = true;
dc.setColor(Gfx.COLOR_BLACK, Gfx.COLOR_BLACK);
dc.clear();
decalageY_OLED = 1 + decalageY_OLED;
if (decalageY_OLED > 1) {decalageY_OLED = -4;}
Amoled.dessine_AMOLED_low_power_analog(dc,clock);
}
function dessine_AMOLED_low_power_analog(dc,clock) {
couleurFond = Gfx.COLOR_BLACK;
Fonctions.dessine_tout(dc,0,0,clock);
Amoled.quadrille(dc);
}
function quadrille(dc) {
dc.setColor(Gfx.COLOR_BLACK, Gfx.COLOR_BLACK);
dc.setPenWidth(4);
for (var i = 0;i<dc.getHeight()+5;i=i+5) {
dc.drawLine(0, i+decalageY_OLED, dc.getWidth(), i+decalageY_OLED);
dc.drawLine(i+decalageY_OLED, 0, i+decalageY_OLED, dc.getHeight());
}
Even with very large lines (4 pixels/5), the watch are going off, no AOD. AOD is working with others (Garmin) watchfaces.
It's working well on the simulator, but with 4 pixel black on 5, the screen is almost black, I almost don't see the analog face. Then I think the 10% of pixel is largely OK. but it does not work on real devices ....
Of course, I put the boolean isAwake false and true in functions onEnterSleep() and onExitSleep()
Here's a screenshot of the simulator in AOD mode, very dark !!!

I think to have missed something ??
Thanks a lot for help !!