diff --git a/Control/brewpi/serial_test.py b/Control/brewpi/serial_test.py index 34006a6..5d62b39 100644 --- a/Control/brewpi/serial_test.py +++ b/Control/brewpi/serial_test.py @@ -3,28 +3,66 @@ import time import serial +def reset(): + ser.dtr = True + ser.rts = False + time.sleep(0.05) + ser.dtr = True + ser.rts = True + +def enter_bootloader(): + ser.dtr = True + ser.rts = False + time.sleep(0.05) + ser.dtr = False + ser.rts = True + if __name__ == '__main__': ser = serial.Serial ('/dev/ttyUSB0', 9600) - ser.set_output_flow_control(True) - + try: ser.open() except: ser.close() ser.open() - time.sleep(1.0) - print ("RTS = {}, DTR = {}".format(ser.rts, ser.dtr)) - time.sleep(0.5) + if 0: + time.sleep(1.0) + print ("RTS = {}, DTR = {}".format(ser.rts, ser.dtr)) + time.sleep(0.5) - ser.rts = False - print ("RTS = {}, DTR = {}".format(ser.rts, ser.dtr)) - time.sleep(0.5) + ser.rts = False + print ("RTS = {}, DTR = {}".format(ser.rts, ser.dtr)) + time.sleep(0.5) + + ser.dtr = False + print ("RTS = {}, DTR = {}".format(ser.rts, ser.dtr)) + time.sleep(1.0) + + print("Start firmware update") + enter_bootloader() + ser.timeout = 0.100 + ser.readline() + + ser.flushInput() + with open("hendictrl.srec", 'r') as fp: + while(True): + s = fp.readline() + if s == '': + break + data = s.encode() +# print(data) + ser.write(data) +# print(ser.read()) - ser.dtr = False - print ("RTS = {}, DTR = {}".format(ser.rts, ser.dtr)) time.sleep(1.0) + ser.flushInput() + + print("Start application") + reset() + print(ser.readline().decode('utf-8')) + print(ser.readline().decode('utf-8')) ser.close()