I Have infinite loop that read bytes from serial port, I want to save the read data to firebase database every X seconds.
I used this code snippet but it's not helping:
import threading
def printit():
  threading.Timer(5.0, printit).start()
  print "Hello, World!"
printit()
This is my code
import serial
ser = serial.Serial()
ser.baudrate = 115200
ser.port = "/dev/ttyUSB0"
ser.timeout = 30
try:
    try:
        while 1:
            line = ser.readline().rstrip().decode('utf-8')
            # print("save data here every X seconds)
    except KeyboardInterrupt:
        ser.close()  # Close port
        pass
except serial.serialutil.SerialException as e:
    print(str(e))
I can't use sleep because it blocking the main thread,So how to let the code read continuously and print "data saved" every X seconds (I'll save to database in my case)
 
    