def shutdown(self):
     self.set_standby()
     log.info('shutdown ...')
     if self.wakeup_pin is not None:
         if isinstance(self.wakeup_pin, int):
             self.wakeup_pin=Pin(self.wakeup_pin)
         rtc=RTC()
         rtc.wake_on_ext0(self.wakeup_pin, 0)
     machine.deepsleep()
Esempio n. 2
0
def do_deep_sleep(floater):
    print("Water level is OK. Going to sleep..")
    # Ref https://github.com/loboris/MicroPython_ESP32_psRAM_LoBo/wiki/rtc
    rtc = RTC()
    rtc.ntp_sync(server="hr.pool.ntp.org", tz="CET-1CEST")
    rtc.synced()
    rtc.wake_on_ext0(floater, 0)

    # ESP32 power reduction for battery powered
    # https://forum.micropython.org/viewtopic.php?t=3900
    deepsleep(0)
Esempio n. 3
0
    else:
        offname = ICON_OFF
    tft.image(0, 0, offname)
    width, height = tft.screensize()
    tft.rect(1, 1, width - 1, height - 1, tft.WHITE)
    if not Backlight:
        backlight(True)
    sleep(2)
    backlight(False)
    tft.clear()
    tft.deinit()

if WiFi_active:
    sta_if = network.WLAN(network.STA_IF)
    if sta_if.isconnected():
        network.ftp.stop()
        sta_if.disconnect()
    sta_if.active(False)

if AXP202_present:
    a.clearIRQ()
    # power-down TFT
    a.disablePower(AXP202_LDO2)
    # power-down GNSS
    a.disablePower(AXP202_LDO3)
    sleep_ms(20)
    if RTC_present:
        rtc.wake_on_ext0(PMU_PIN_IRQ, 0)

deepsleep()
Esempio n. 4
0
if floater.value() == 0:
    print("Water level warning!")

    if wifi(settings.WIFI_SSID, settings.WIFI_PWD):
        utime.sleep(2)
        print("Sending SMS")
        try:
            response = urequests.post(settings.SERIVET_URL,
                                      data=ujson.dumps(data),
                                      headers=headers)
        except:
            print("try again")
            response = urequests.post(settings.SERIVET_URL,
                                      data=ujson.dumps(data),
                                      headers=headers)

        print(response.json())
    else:
        print("Failed to connect to WiFi")

else:
    print("Water level is OK. Going to sleep..")
    # https://github.com/loboris/MicroPython_ESP32_psRAM_LoBo/wiki/rtc
    rtc = RTC()
    rtc.ntp_sync(server="hr.pool.ntp.org", tz="CET-1CEST")
    rtc.synced()
    rtc.wake_on_ext0(floater, 0)

    # https://forum.micropython.org/viewtopic.php?t=3900
    deepsleep(0)