diff options
author | px4dev <px4@purgatory.org> | 2012-09-09 22:09:17 -0700 |
---|---|---|
committer | px4dev <px4@purgatory.org> | 2012-09-09 22:09:17 -0700 |
commit | b871d28c6df1ff9ed7c640d5d0147083e91cac5e (patch) | |
tree | 1fd780fd1df6588022fff1e0fe6fd8b3b635549c /Tools/px_uploader.py | |
parent | 3140ba658a322d98c6fe7943c5fb72bb061c46de (diff) | |
download | px4-firmware-b871d28c6df1ff9ed7c640d5d0147083e91cac5e.tar.gz px4-firmware-b871d28c6df1ff9ed7c640d5d0147083e91cac5e.tar.bz2 px4-firmware-b871d28c6df1ff9ed7c640d5d0147083e91cac5e.zip |
Avoid trying to adjust the port timeout once it's open; Windows apparently doesn't like this.
Diffstat (limited to 'Tools/px_uploader.py')
-rwxr-xr-x | Tools/px_uploader.py | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/Tools/px_uploader.py b/Tools/px_uploader.py index 1a0d7bd45..dfb53980a 100755 --- a/Tools/px_uploader.py +++ b/Tools/px_uploader.py @@ -172,10 +172,16 @@ class uploader(object): 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 + deadline = time.time() + 10 + while time.time() < deadline: + try: + self.__getSync() + return + except RuntimeError as ex: + # we timed out, that's OK + continue + + raise RuntimeError("timed out waiting for erase") # send a PROG_MULTI command to write a collection of bytes def __program_multi(self, data): |