Skip to content

Commit 587801b

Browse files
committed
Release v1.1.1
1 parent 7f51bbc commit 587801b

File tree

1 file changed

+16
-22
lines changed

1 file changed

+16
-22
lines changed

ESTimer.ino

Lines changed: 16 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,8 @@ void startCountdownTimer(bool isAwake) {
106106
}
107107

108108
do {
109+
uint16_t previousTime = (uint16_t) millis();
110+
109111
#if INCLUDE_OLED
110112
uint8_t m0 = (totalTime / 60) / 10;
111113
uint8_t m1 = (totalTime / 60) % 10;
@@ -115,18 +117,11 @@ void startCountdownTimer(bool isAwake) {
115117
drawNumbers(m0, m1, s0, s1);
116118
#endif
117119

118-
if (isAwake) {
119-
EEPROM.put(0, totalTime);
120-
} else {
121-
EEPROM.put(4, totalTime);
120+
EEPROM.put(isAwake ? 0 : 4, totalTime);
121+
if (!isAwake) {
122122
ESTimer.goToSleepMode();
123123
}
124-
125-
#if INCLUDE_OLED
126-
ESTimer.delay(845);
127-
#else
128-
ESTimer.delay(1000);
129-
#endif
124+
ESTimer.delay(1000 - ((uint16_t) millis() - previousTime));
130125

131126
} while (totalTime-- > 0);
132127
}
@@ -151,22 +146,21 @@ void initNumbers() {
151146
}
152147

153148
void initStatusPomodoros() {
154-
for (uint8_t i = 0; i < 16; i += 2) {
155-
if (i < 8) {
156-
ESTimer.drawBitmap(108, i, 124, i + 2, dots[(countDonePomodoros / 8) % 2]);
157-
} else {
158-
ESTimer.drawBitmap(4, i - 8, 20, (i - 8) + 2, dots[(countDonePomodoros / 8) % 2]);
159-
}
149+
for (uint8_t i = 0; i < 8; i++) {
150+
drawPomodoro(i, dots[(i <= countDonePomodoros % 8) ^ ((countDonePomodoros / 8) % 2)]);
160151
}
161152
}
162153

163154
void updateStatusPomodoros() {
164-
for (uint8_t i = 0; i < ((countDonePomodoros % 8) + 1) * 2; i += 2) {
165-
if (i < 8) {
166-
ESTimer.drawBitmap(108, i, 124, i + 2, dots[((countDonePomodoros / 8) + 1) % 2]);
167-
} else {
168-
ESTimer.drawBitmap(4, i - 8, 20, (i - 8) + 2, dots[((countDonePomodoros / 8) + 1) % 2]);
169-
}
155+
uint8_t i = countDonePomodoros % 8;
156+
drawPomodoro(i, dots[((countDonePomodoros / 8) + 1) % 2]);
157+
}
158+
159+
void drawPomodoro(uint8_t index, const uint8_t *s) {
160+
if (index < 4) {
161+
ESTimer.drawBitmap(108, 2 * index, 124, (2 * index) + 2, s);
162+
} else {
163+
ESTimer.drawBitmap(4, 2 * (index % 4), 20, (2 * (index % 4)) + 2, s);
170164
}
171165
}
172166
#endif

0 commit comments

Comments
 (0)