From bb8e57cf8d2b715d02cc95f8da35f7596cb417ba Mon Sep 17 00:00:00 2001 From: Scott Petersen Date: Tue, 28 May 2013 12:28:20 -0700 Subject: [PATCH] Added support for using grep to search for serial devices. --- pyad2usb/devices.py | 7 +++++-- test.py | 8 +++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/pyad2usb/devices.py b/pyad2usb/devices.py index ba8f319..bca46b7 100644 --- a/pyad2usb/devices.py +++ b/pyad2usb/devices.py @@ -249,14 +249,17 @@ class SerialDevice(Device): BAUDRATE = 19200 @staticmethod - def find_all(): + def find_all(pattern=None): """ Returns all serial ports present. """ devices = [] try: - devices = serial.tools.list_ports.comports() + if pattern: + devices = serial.tools.list_ports.grep(pattern) + else: + devices = serial.tools.list_ports.comports() except Exception, err: raise util.CommError('Error enumerating AD2SERIAL devices: {0}'.format(str(err))) diff --git a/test.py b/test.py index a6af4ee..7523650 100755 --- a/test.py +++ b/test.py @@ -226,6 +226,11 @@ def test_no_read_thread(): a2u.close() +def test_serial_grep(): + re = pyad2usb.devices.SerialDevice.find_all(pattern='VID:PID=067b:2303') + for x in re: + print x + try: signal.signal(signal.SIGINT, signal_handler) @@ -236,13 +241,14 @@ try: #test_usb_serial() #test_factory() #test_factory_watcher() - upload_usb() + #upload_usb() #upload_usb_serial() #test_socket() #upload_socket() #test_no_read_thread() + test_serial_grep() except Exception, err: traceback.print_exc(err)