1
1
#!/usr/bin/env python
2
- VERSION = "1.2.5 "
2
+ VERSION = "1.2.6 "
3
3
4
4
# Copyright (c) 2019, Pycom Limited.
5
5
#
@@ -339,7 +339,7 @@ def __get_wait_msg(self, load_fff=True):
339
339
340
340
341
341
342
- def __run(self, file_path=None, baudrate=921600, port=None, resume=False, load_ffh=False, mirror=False, switch_ffh=False, bootrom=False, rgbled=0x050505, debug=False, pkgdebug=False, atneg=True, max_try=10, direct=True, atneg_only=False, info_only=False, expected_smod=None, verbose=False, load_fff=False, mtools=False):
342
+ def __run(self, file_path=None, baudrate=921600, port=None, resume=False, load_ffh=False, mirror=False, switch_ffh=False, bootrom=False, rgbled=0x050505, debug=False, pkgdebug=False, atneg=True, max_try=10, direct=True, atneg_only=False, info_only=False, expected_smod=None, verbose=False, load_fff=False, mtools=False, fc=False ):
343
343
self.__wait_msg = False
344
344
mirror = True if atneg_only else mirror
345
345
recover = True if atneg_only else load_ffh
@@ -365,7 +365,7 @@ def __run(self, file_path=None, baudrate=921600, port=None, resume=False, load_f
365
365
external = True
366
366
br = 115200 if recover and not direct else baudrate
367
367
if debug: print('Setting baudrate to {}'.format(br))
368
- self.__serial = serial.Serial(port, br, bytesize=serial.EIGHTBITS, timeout=1 if info_only else 0.1)
368
+ self.__serial = serial.Serial(port, br, bytesize=serial.EIGHTBITS, timeout=1 if info_only else 0.1, rtscts=fc )
369
369
self.__serial.reset_input_buffer()
370
370
self.__serial.reset_output_buffer()
371
371
@@ -447,7 +447,7 @@ def __run(self, file_path=None, baudrate=921600, port=None, resume=False, load_f
447
447
448
448
if verbose: print('Sending AT+FSRDFILE="/fs/crashdump"')
449
449
self.__serial.write(b'AT+FSRDFILE="/fs/crashdump"\r\n')
450
- response = self.read_rsp(size=100 )
450
+ response = self.read_rsp(size=1024 )
451
451
if verbose: print('AT+FSRDFILE="/fs/crashdump" returned {}'.format(response))
452
452
self.__serial.read()
453
453
@@ -819,7 +819,7 @@ def at_negotiation(self, baudrate, port, max_try, mirror, atneg_only, debug, tar
819
819
self.__serial = UART(1, baudrate=target_baudrate, pins=self.__pins, timeout_chars=100)
820
820
else:
821
821
self.__serial = None
822
- self.__serial = serial.Serial(port, target_baudrate, bytesize=serial.EIGHTBITS, timeout=0.1)
822
+ self.__serial = serial.Serial(port, target_baudrate, bytesize=serial.EIGHTBITS, timeout=0.1, rtscts=fc )
823
823
self.__serial.reset_input_buffer()
824
824
self.__serial.reset_output_buffer()
825
825
self.__serial.flush()
@@ -882,10 +882,11 @@ def upgrade(self, ffile, mfile=None, baudrate=921600, retry=False, resume=False,
882
882
if success:
883
883
if self.__run(file_path=ffile, resume=True if mfile is not None else resume, baudrate=baudrate, direct=False, debug=debug, pkgdebug=pkgdebug, verbose=verbose, load_fff=False if mfile else load_fff, mtools=mtools):
884
884
if self.__check_br(verbose=verbose, debug=debug):
885
- self.__run(bootrom=True, debug=debug, direct=False, pkgdebug=pkgdebug, verbose=verbose, load_fff=True)
885
+ success = self.__run(bootrom=True, debug=debug, direct=False, pkgdebug=pkgdebug, verbose=verbose, load_fff=True)
886
886
self.success_message(verbose=verbose, debug=debug)
887
887
else:
888
888
print('Unable to load updater from {}'.format(mfile))
889
+ return success
889
890
890
891
def upgrade_uart(self, ffh_mode=False, mfile=None, retry=False, resume=False, color=0x050505, debug=False, pkgdebug=False, verbose=False, load_fff=True):
891
892
success = False
@@ -923,16 +924,16 @@ def upgrade_uart(self, ffh_mode=False, mfile=None, retry=False, resume=False, co
923
924
else:
924
925
print('Unable to upgrade bootrom.')
925
926
926
- def show_info(self, port=None, debug=False, verbose=False):
927
- self.__run(port=port, debug=debug, info_only=True, verbose=verbose)
927
+ def show_info(self, port=None, debug=False, verbose=False, fc=False ):
928
+ self.__run(port=port, debug=debug, info_only=True, verbose=verbose, fc=fc )
928
929
929
- def upgrade_ext(self, port, ffile, mfile, resume=False, debug=False, pkgdebug=False, verbose=False, load_fff=True):
930
+ def upgrade_ext(self, port, ffile, mfile, resume=False, debug=False, pkgdebug=False, verbose=False, load_fff=True, fc=False ):
930
931
success = True
931
932
if mfile is not None:
932
933
success = False
933
- success = self.__run(file_path=mfile, load_ffh=True, port=port, debug=debug, pkgdebug=pkgdebug, verbose=verbose)
934
+ success = self.__run(file_path=mfile, load_ffh=True, port=port, debug=debug, pkgdebug=pkgdebug, verbose=verbose, fc=fc )
934
935
if success:
935
- if self.__run(file_path=ffile, resume=True if mfile is not None else resume, direct=False, port=port, debug=debug, pkgdebug=pkgdebug, verbose=verbose, load_fff=load_fff):
936
+ if self.__run(file_path=ffile, resume=True if mfile is not None else resume, direct=False, port=port, debug=debug, pkgdebug=pkgdebug, verbose=verbose, load_fff=load_fff, fc=fc ):
936
937
self.success_message(port=port, verbose=verbose, debug=debug)
937
938
else:
938
939
print('Unable to load updater from {}'.format(mfile))
@@ -973,6 +974,7 @@ def run(ffile, mfile=None, baudrate=921600, verbose=False, debug=False, load_fff
973
974
retry = False
974
975
resume = False
975
976
mtools = False
977
+ success = False
976
978
sqnup = sqnsupgrade()
977
979
if sqnup.check_files(ffile, mfile, debug):
978
980
state = sqnup.detect_modem_state(debug=debug, hangup=hangup)
@@ -991,8 +993,9 @@ def run(ffile, mfile=None, baudrate=921600, verbose=False, debug=False, load_fff
991
993
mtools = True
992
994
elif state == -1:
993
995
detect_error()
994
- sqnup.upgrade(ffile=ffile, mfile=mfile, baudrate=baudrate, retry=retry, resume=resume, debug=debug, pkgdebug=False, verbose=verbose, load_fff=load_fff, mtools=mtools)
996
+ success = sqnup.upgrade(ffile=ffile, mfile=mfile, baudrate=baudrate, retry=retry, resume=resume, debug=debug, pkgdebug=False, verbose=verbose, load_fff=load_fff, mtools=mtools)
995
997
reconnect_uart()
998
+ return success
996
999
997
1000
def uart(ffh_mode=False, mfile=None, color=0x050505, verbose=False, debug=False, hangup=True):
998
1001
print_welcome()
@@ -1054,12 +1057,12 @@ def state(verbose=False, debug=False, retry=5, hangup=False):
1054
1057
return sqnup.detect_modem_state(debug=debug, hangup=hangup, retry=retry)
1055
1058
1056
1059
else:
1057
- def run(port, ffile, mfile=None, resume=False, debug=False, verbose=False, load_fff=True):
1060
+ def run(port, ffile, mfile=None, resume=False, debug=False, verbose=False, load_fff=True, fc=False ):
1058
1061
print_welcome()
1059
1062
sqnup = sqnsupgrade()
1060
1063
if sqnup.check_files(ffile, mfile, debug):
1061
1064
sqnup.upgrade_ext(port=port, ffile=ffile, mfile=mfile, resume=resume, debug=debug, pkgdebug=False, verbose=verbose, load_fff=load_fff)
1062
1065
1063
- def version(port, verbose=False, debug=False):
1066
+ def version(port, verbose=False, debug=False, fc=False ):
1064
1067
sqnup = sqnsupgrade()
1065
1068
sqnup.show_info(port=port, debug=debug, verbose=verbose)
0 commit comments