code: private static UsbDevice findDeviceByNameLowLevel(final String name) throws KNXException
  	{
  		final List<String> list = getDeviceDescriptionsLowLevel();
  		if (name.isEmpty())
  			list.removeIf(i -> !isKnxInterfaceId(i.substring(i.indexOf("ID") + 3, i.indexOf("\n"))));
  		else
  			list.removeIf(i -> i.toLowerCase().indexOf(name.toLowerCase()) == -1);
  		if (list.isEmpty())
  			throw new KNXException("no USB device found with name matching '" + name + "'");
  
  		final String desc = list.get(0);
  		final String id = desc.substring(desc.indexOf("ID") + 3, desc.indexOf("\n"));
  		return findDevice(id);
  	}
docs: string. Pass that ID to findDevice. which will do the lookup by ID.