Files
operation/main.py

45 lines
958 B
Python

import serial
import threading
def listen(keep_alive_event, pi):
while True:
message = pi.readline().decode()
if '\n' in message:
if "keep-alive" in message:
keep_alive_event.set()
else:
print("Other stuff is happening")
else:
print("No newline found")
def watchdog(keep_alive_event):
while True:
alive = keep_alive_event.wait(1.0)
if alive:
print("Yay!")
keep_alive_event.clear()
else:
print("Nay!")
if __name__ == "__main__":
pi = serial.Serial('/dev/tty.usbmodem2101')
pi.baudrate = 115200
pi.timeout = 0.1
print(pi)
keep_alive = threading.Event()
listen_thread = threading.Thread(target=listen, args=(keep_alive, pi))
watchdog_thread= threading.Thread(target=watchdog, args=(keep_alive,))
listen_thread.start()
watchdog_thread.start()