def __init__(self): utime.set_time(ntptime.time()) self.year = 2000 self.month = 1 self.day = 1 self.time_led_on = 0 self.time_led_off = 0
def set_time(t): global _offset_ms cur_t = _utime.time_ms() _utime.set_time(t) new_t = _utime.time_ms() diff = cur_t - new_t _offset_ms += diff
def set_time(t): global _offset cur_t = _utime.time() _utime.set_time(t) new_t = _utime.time() diff = cur_t - new_t _offset += diff
def detect_workaround_offset(): global WORKAROUND_OFFSET old = utime.time() utime.set_time(old) new = utime.time() WORKAROUND_OFFSET = old - new utime.set_time(old + WORKAROUND_OFFSET)
def setTime(self, disp, localtime): accepted = False previously_pressed_button = buttons.TOP_RIGHT button_repeat_counter = 0 set_seconds = utime.mktime(localtime) while not accepted: v = buttons.read(buttons.BOTTOM_LEFT | buttons.BOTTOM_RIGHT | buttons.TOP_RIGHT) button_pressed = v != 0 if button_pressed: if v & previously_pressed_button != 0: button_repeat_counter += 1 else: if v & buttons.BOTTOM_LEFT != 0: previously_pressed_button = buttons.BOTTOM_LEFT elif v & buttons.BOTTOM_RIGHT != 0: previously_pressed_button = buttons.BOTTOM_RIGHT elif (v & buttons.TOP_RIGHT != 0 and previously_pressed_button != buttons.TOP_RIGHT): accepted = True else: previously_pressed_button = 0 else: previously_pressed_button = 0 button_repeat_counter = 0 seconds_change = int(min(1.1**button_repeat_counter, 60 * 23 + 1)) if previously_pressed_button == buttons.BOTTOM_LEFT: set_seconds -= seconds_change elif previously_pressed_button == buttons.BOTTOM_RIGHT: set_seconds += seconds_change self.updateClock(disp, utime.localtime(set_seconds)) utime.sleep_ms(23) utime.set_time(int(set_seconds)) utime.sleep_ms(123)
def modTime(yrs, mth, day, hrs, mns, sec): ltime = utime.localtime() new = utime.mktime( (ltime[0] + yrs, ltime[1] + mth, ltime[2] + day, ltime[3] + hrs, ltime[4] + mns, ltime[5] + sec, None, None)) utime.set_time(new)
def settime(): t = ntptime() + timezonehour * 60 * 60 import utime tm = utime.localtime(t) utime.set_time(tm)