Wakeup with UART (LoPy4)
Hello guys. I am trying to communicate with a Lopy4 through its serial port. In paticular by UART 1. (P3 and P4). Furthermore, the LoPy4 must be in sleep mode.
I need to wake up the LoPy4 using the UART port. I have tried using the following code:
from machine import UART import time print("Starting Loop...") uart = UART(1, baudrate=9600, bits=8, parity=None, stop=1, pins=('P3', 'P4')) i = 0 while True: print("*****************************: %d" % i) print("Going to sleep") machine.pin_sleep_wakeup([('P4')], mode=machine.WAKEUP_ALL_LOW, enable_pull=True) time.sleep(1) machine.sleep() print("Weak up...") (wake_reason, gpio_list) = machine.wake_reason() if(wake_reason==machine.PWRON_WAKE): print("Wake up for Power On") elif(wake_reason==machine.PIN_WAKE): print("Wake up for PIN") elif(wake_reason==machine.RTC_WAKE): print("Wake up for RTC") elif(wake_reason==machine.ULP_WAKE): print("Wake up for ULP") else: print("Wake up undefined") n_bytes = uart.any() print(n_bytes) buff = uart.read(n_bytes) # read up to 5 bytes print(buff) i = i + 1
The problem is that the LoPy cannot read the bytes sent to it correctly. Has anyone been able to wake up a LoPy using the serial port?