Драйвер FTDI (начиная с версии 20814) при обнаружении поддельной микросхемы FT232RL записывает во внутреннюю EEPROM по адресу 0x002 нули (PID устройства), а по адресу 0x03e записывает такой код, чтобы сошлась CRC (расположенная по адресу 0x03f). На оригинальном чипе эти операции ни к чему не приводят, потому что у него EEPROM имеет 32-разрядную организацию. При записи слова с четным адресом происходит только его буферизация, а при записи слова по нечетному адресу происходит запись сразу двух слов. Поддельный чип выполняет запись каждого слова, поэтому у него портится PID (становится равным 0x0000). Поэтому поддельный чип при первом подключении нормально определяется (пока данные в EEPROM верные), а после повторного подключения определяться перестает. По идее, этот драйвер будет портить и оригинальные чипы предыдущего поколения FT232BM с внешней EEPROM, которая имеет 16-разрядную организацию. Чтобы снова увидеть поврежденный чип, нужно установить немного модифицированный драйвер. В файлы inf добавляются строчки с PID_0000, тогда он будет поддерживать как оригинальные, так и "испорченные" поддельные чипы. Но только до первого обновления драйвера. Оперативно отличать оригинальные чипы от поддельных можно с помощью утилиты, которая пытается записать данные по четному адресу EEPROM. Если это удается - чип поддельный. Затем утилита восстанавливает прежнее значение. Кроме того, утилита позволяет восстановить PID (у оригинального чипа он равен 0x6001) без нарушения CRC. Восстановление возможно только с установленным модифицированным драйвером. Еще одно отличие - у оригинального чипа ток потребления около 9 мА, а у подделки около 35 мА.
В архиве содержится утилита и модифицированные inf-файлы для двух разных версий драйверов (CDM20416 и CDM20814).
FTester(1).tar.gz
FTester(1).tar.gz