waf: make it easier to list USB IDs to load fw to

This commit is contained in:
Andrew Tridgell 2018-02-11 19:27:32 +11:00
parent 59ee3c8f62
commit 320c3b53a4

View File

@ -67,6 +67,13 @@ import os
from sys import platform as _platform
# default list of port names to look for autopilots
default_ports = [ '/dev/serial/by-id/usb-Ardu*',
'/dev/serial/by-id/usb-3D*',
'/dev/serial/by-id/usb-APM*',
'/dev/serial/by-id/usb-Radio*',
'/dev/tty.usbmodem']
# Detect python version
if sys.version_info[0] < 3:
runningPython3 = False
@ -604,7 +611,7 @@ def main():
# Parse commandline arguments
parser = argparse.ArgumentParser(description="Firmware uploader for the PX autopilot system.")
parser.add_argument('--port', action="store", help="Comma-separated list of serial port(s) to which the FMU may be attached",
default="/dev/serial/by-id/usb-3D*,/dev/serial/by-id/usb-Ardu*,/dev/serial/by-id/usb-Radiolink*,/dev/tty.usbmodem*")
default=None)
parser.add_argument('--baud-bootloader', action="store", type=int, default=115200, help="Baud rate of the serial port (default is 115200) when communicating with bootloader, only required for true serial ports.")
parser.add_argument('--baud-bootloader-flash', action="store", type=int, default=None, help="Attempt to negotiate this baudrate with bootloader for flashing.")
parser.add_argument('--baud-flightstack', action="store", default="57600", help="Comma-separated list of baud rate of the serial port (default is 57600) when communicating with flight stack (Mavlink or NSH), only required for true serial ports.")
@ -628,7 +635,10 @@ def main():
try:
while True:
portlist = []
patterns = args.port.split(",")
if args.port is None:
patterns = default_ports
else:
patterns = args.port.split(",")
# on unix-like platforms use glob to support wildcard ports. This allows
# the use of /dev/serial/by-id/usb-3D_Robotics on Linux, which prevents the upload from
# causing modem hangups etc