@@ -249,14 +249,17 @@ class SerialDevice(Device): | |||||
BAUDRATE = 19200 | BAUDRATE = 19200 | ||||
@staticmethod | @staticmethod | ||||
def find_all(): | |||||
def find_all(pattern=None): | |||||
""" | """ | ||||
Returns all serial ports present. | Returns all serial ports present. | ||||
""" | """ | ||||
devices = [] | devices = [] | ||||
try: | 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: | except Exception, err: | ||||
raise util.CommError('Error enumerating AD2SERIAL devices: {0}'.format(str(err))) | raise util.CommError('Error enumerating AD2SERIAL devices: {0}'.format(str(err))) | ||||
@@ -226,6 +226,11 @@ def test_no_read_thread(): | |||||
a2u.close() | a2u.close() | ||||
def test_serial_grep(): | |||||
re = pyad2usb.devices.SerialDevice.find_all(pattern='VID:PID=067b:2303') | |||||
for x in re: | |||||
print x | |||||
try: | try: | ||||
signal.signal(signal.SIGINT, signal_handler) | signal.signal(signal.SIGINT, signal_handler) | ||||
@@ -236,13 +241,14 @@ try: | |||||
#test_usb_serial() | #test_usb_serial() | ||||
#test_factory() | #test_factory() | ||||
#test_factory_watcher() | #test_factory_watcher() | ||||
upload_usb() | |||||
#upload_usb() | |||||
#upload_usb_serial() | #upload_usb_serial() | ||||
#test_socket() | #test_socket() | ||||
#upload_socket() | #upload_socket() | ||||
#test_no_read_thread() | #test_no_read_thread() | ||||
test_serial_grep() | |||||
except Exception, err: | except Exception, err: | ||||
traceback.print_exc(err) | traceback.print_exc(err) |