def test_string(self): """Retrieve a string from its identifier.""" ftdis = [(0x403, 0x6010)] ft2232h = UsbTools.find_all(ftdis)[0] devdesc, _ = ft2232h dev = UsbTools.get_device(devdesc) serialn = UsbTools.get_string(dev, dev.iSerialNumber) self.assertEqual(serialn, 'FT2DEF')
def format_ftdi_url(dev, interface=1): serialdesc = UsbTools.get_string(dev, dev.iSerialNumber) url = 'ftdi://' if platform == 'win32': # Because changes in pyftdi to support virtual port, we relie on bus / address instead of the sernum url += '0x%04x:0x%04x' % (dev.idVendor, dev.idProduct) url += ':%x:%x' % (dev.bus, dev.address) else: if serialdesc: url += '0x%04x:0x%04x:%s' % (dev.idVendor, dev.idProduct, serialdesc) else: url += '0x%04x:0x%04x' % (dev.idVendor, dev.idProduct) url += '/%d' % (interface) return url