Minor improvements

This commit is contained in:
Ivan Kravets
2016-06-02 01:09:05 +03:00
parent b188a05b69
commit c773c8f5d5
4 changed files with 10 additions and 12 deletions

View File

@ -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()

View File

@ -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=[

View File

@ -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]

View File

@ -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