From 320c3b53a4e5f2ed254562ac0edd26fd8e789f00 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sun, 11 Feb 2018 19:27:32 +1100 Subject: [PATCH] waf: make it easier to list USB IDs to load fw to --- Tools/ardupilotwaf/px_uploader.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Tools/ardupilotwaf/px_uploader.py b/Tools/ardupilotwaf/px_uploader.py index 45af074354..cab1d3f0ae 100755 --- a/Tools/ardupilotwaf/px_uploader.py +++ b/Tools/ardupilotwaf/px_uploader.py @@ -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