diff --git a/platformio/builder/tools/pioupload.py b/platformio/builder/tools/pioupload.py index 27b1c744..c76c1ef5 100644 --- a/platformio/builder/tools/pioupload.py +++ b/platformio/builder/tools/pioupload.py @@ -23,7 +23,7 @@ from shutil import copyfile from time import sleep from SCons.Node.Alias import Alias -from serial import Serial +from serial import Serial, SerialException from platformio import util @@ -72,6 +72,11 @@ def WaitForNewSerialPort(env, before): new_port = p['port'] break + try: + Serial(new_port) + except SerialException: + sleep(1) + if not new_port: sys.stderr.write("Error: Couldn't find a board on the selected port. " "Check that you have the correct port selected. "