From be85f895a0fbb90aa3b0628c8173574375ac1c07 Mon Sep 17 00:00:00 2001 From: px4dev Date: Wed, 22 Aug 2012 17:06:58 -0700 Subject: Use a much shorter timeout for normal communication, and stretch it only when we are waiting for erase. --- Tools/px_uploader.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'Tools') diff --git a/Tools/px_uploader.py b/Tools/px_uploader.py index bc5d7b36b..1a0d7bd45 100755 --- a/Tools/px_uploader.py +++ b/Tools/px_uploader.py @@ -111,8 +111,8 @@ class uploader(object): READ_MULTI_MAX = 60 # protocol max is 255, something overflows with >= 64 def __init__(self, portname, baudrate): - # open the port - self.port = serial.Serial(portname, baudrate, timeout=10) + # open the port, keep the default timeout short so we can poll quickly + self.port = serial.Serial(portname, baudrate, timeout=0.25) def close(self): if self.port is not None: @@ -171,7 +171,11 @@ class uploader(object): def __erase(self): self.__send(uploader.CHIP_ERASE + uploader.EOC) + # erase is very slow, give it 10s + old_timeout = self.port.timeout + self.port.timeout = 10 self.__getSync() + self.port.timeout = old_timeout # send a PROG_MULTI command to write a collection of bytes def __program_multi(self, data): -- cgit v1.2.3