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