Лечим FTDI в картинках
Борьба корпораций с контрафактом и конечными пользователями
Иногда борьба больших корпораций с контрафактными версиями своих продуктов приобретает чудовищные формы. Такое несчастье случилось и с горячо любимой многими электронщиками FTDI. Если вы используете устройство с конвертером USB <> UART на чипе выше обозначенной кампании (например, неоправданно дорогостоящий, во многом избыточный, но от того не менее народный FT232RL) – будьте осторожны. С сентября 2014 FTDI ломает контрафактные чипы программными средствами.
Анамнез
В последнее время участились жалобы владельцев Arduino и Arduino-подобных плат на внезапные поломки. Симптомы одни и те же: операционная система отказывается корректно устанавливать драйвер, и наше устройство лишается связи с компьютером, однако сохраняя при этом работоспособность на основе уже записанного скетча. Такой болезни подвержены только модели, интерфейс USB у которых спроектирован на чипе FT232RL.
Процесс поломки чипа FTDI состоит из двух этапов: первым делом происходит автоматическое обновление драйверов через службу Windows Update. Эти драйверы отказываются работать с неправильным, как они думают, устройством. Затем пользователь скачивает новые драйвера и, не читая, соглашается с лицензионным соглашением. После этого новые драйверы изменяют PID нашего чипа.
Итак, если Вы установили очередные обновления Windows и Вас постигла сия участь, а из опуса UnknownType вы мало что поняли, тогда продолжаем читать эту статью.
Диагностика
Самый первый шаг, который следует сделать, это зайти в Список устройств (прав.кн.мыши на ярлыке Мой Компьютер > Свойства > Диспетчер устройств). Если там такая картина:
то в свойствах скорее всего будет полное отсутствие информации о драйверах, а само устройство внезапно получило PID равным 0000:
Это значит, что с самой Arduino все в порядке!! Теперь скорее скачиваем драйвера версии 2.8.14 или более ранние. Устанавливаем на устройство сначала ftdibus, затем ftdiport. Если установка не проходит, поправим файл ftdibus.inf. Открываем его блокнотом и вместо PID_6001 вставляем PID_0000, сохраняем.
Устанавливаем драйвера. Теперь в системе есть два конвертера, но работает только один. Так и должно быть, всё идёт по плану. Скачиваем утилиту FTDI MProg 3.5.
Запускаем, находим в меню Tools > Read and Parse. Утилита сама прочитает всю информацию из чипа и распишет её по ячейкам.
Теперь можно и (и нужно!) ввести в окошке Product ID «6001» (для FT232R(L)). Теперь заходим в меню, находим пункт File > Save As… и сохраняем файл конфигурации EEPROM на жёсткий диск. Без этой процедуры программа не позволит прошить чип. После чего комбинацией клавиш Сtrl+P ловко прошиваем нашу микросхему.
Две – три секунды, и у нас снова рабочая микросхема! Теперь и прочитать данные можно.
Вместо заключения
Теперь главное проследите, чтобы на устройстве стояли правильные драйвера! Иначе очень скоро придётся заново повторять все приведённые действия.
Статья в формате PDF
![]() |
Лечим FTDI в картинках.PDF |
pdf, 497 КБ |