diff --git a/platformio/builder/scripts/atmelavr.py b/platformio/builder/scripts/atmelavr.py index daff63af..24c6bd72 100644 --- a/platformio/builder/scripts/atmelavr.py +++ b/platformio/builder/scripts/atmelavr.py @@ -65,13 +65,11 @@ def BeforeUpload(target, source, env): # pylint: disable=W0613,W0621 if not upload_options.get("disable_flushing", False): env.FlushSerialBuffer("$UPLOAD_PORT") - before_ports = [i['port'] for i in get_serialports()] - if upload_options.get("use_1200bps_touch", False): env.TouchSerialPort("$UPLOAD_PORT", 1200) if upload_options.get("wait_for_upload_port", False): - env.Replace(UPLOAD_PORT=env.WaitForNewSerialPort(before_ports)) + env.Replace(UPLOAD_PORT=env.WaitForNewSerialPort()) env = DefaultEnvironment() diff --git a/platformio/builder/scripts/atmelsam.py b/platformio/builder/scripts/atmelsam.py index d91b0bf0..af24f08b 100644 --- a/platformio/builder/scripts/atmelsam.py +++ b/platformio/builder/scripts/atmelsam.py @@ -41,13 +41,11 @@ def BeforeUpload(target, source, env): # pylint: disable=W0613,W0621 if not upload_options.get("disable_flushing", False): env.FlushSerialBuffer("$UPLOAD_PORT") - before_ports = [i['port'] for i in get_serialports()] - if upload_options.get("use_1200bps_touch", False): env.TouchSerialPort("$UPLOAD_PORT", 1200) if upload_options.get("wait_for_upload_port", False): - env.Replace(UPLOAD_PORT=env.WaitForNewSerialPort(before_ports)) + env.Replace(UPLOAD_PORT=env.WaitForNewSerialPort()) # use only port name for BOSSA if "/" in env.subst("$UPLOAD_PORT"): @@ -111,8 +109,7 @@ env.Append( ], CPPDEFINES=[ - "USBCON", - 'USB_MANUFACTURER="PlatformIO"' + "USBCON" ], LINKFLAGS=[ diff --git a/platformio/builder/tools/pioupload.py b/platformio/builder/tools/pioupload.py index 89a8d6bc..e27efd30 100644 --- a/platformio/builder/tools/pioupload.py +++ b/platformio/builder/tools/pioupload.py @@ -47,12 +47,14 @@ def TouchSerialPort(env, port, baudrate): sleep(0.4) -def WaitForNewSerialPort(env, before): +def WaitForNewSerialPort(env): + before = [i['port'] for i in get_serialports(use_grep=True)] + sleep(0.5) new_port = None elapsed = 0 - sleep(0.5) while elapsed < 10: now = [i['port'] for i in get_serialports(use_grep=True)] + print 45, now diff = list(set(now) - set(before)) if diff: new_port = diff[0] diff --git a/platformio/util.py b/platformio/util.py index 07966d2c..2e8e12b2 100644 --- a/platformio/util.py +++ b/platformio/util.py @@ -283,8 +283,9 @@ def exec_command(*args, **kwargs): def get_serialports(use_grep=False): def _grep_serial_ports(): - assert system() != "Windows" result = [] + if system() == "Windows": + return result if system() == "Linux": patterns = ["/dev/%s*" % p for p in ( "ttyS", "ttyUSB", "ttyACM", "ttyAMA", "rfcomm", "ttyO")] @@ -315,7 +316,7 @@ def get_serialports(use_grep=False): result.append({"port": p, "description": d, "hwid": h}) # fix for PySerial - if not result and system() != "Windows": + if not result: result = _grep_serial_ports() return result