Skip to main content

FT232R 仿冒品相關資訊

Technical
Author
Kuan-Yi Li
Table of Contents

原來 USB to UART 的代表性產品 FT232R 是有仿冒品流通在市面上的。(傻人有傻福都沒遇到。)更讓人驚訝的是 2014 年 10 月的時候官方甚至曾經推出過會主動讓仿冒品變磚的驅動程式。 😳

這麼有趣的事情一定要整理一下爬過的資訊。

時間軸
#

2014 年 10 月初
#

有人發現某些聲稱自己是 FT232R 的 IC 開始無法運作,分析指向跟 Windows 上新推出的 FTDI 官方驅動程式有關。

其實也有類似的驅動程式修改送到 Linux kernel 那邊:

不過被 kernel maintainer 打了回票,順便酸了一把。

哩嘛幫幫忙,這麼逗的東西請留到愚人節好嗎? 要是有人當真可就糟了呢!噁呵呵呵……

大概是這種感覺。

2014 年 10 月底
#

2014 年 10 月底,FTDI 發聲明承認,並說會推出不主動弄爛仿冒品的驅動。

眾怒仍難平,EEVblog 站主 Dave Jones 還發影片鞭 FTDI 鞭了二十幾分鐘。 😂

2016 年初
#

FTDI 偵測仿冒品的 Windows 驅動程式捲土重來,這次不會讓仿冒 IC 變磚,而是使其吐出的資料不受控制。(吐出 “NON GENUINE DEVICE FOUND!")

原理
#

從 Linux 那邊的程式碼來看,可以看得出一些端倪,也有人分析了 Windows 端的驅動程式

基本上讓設備變磚的方式是無差別地送指令給晶片嘗試寫入其 EEPROM,而 USB 裝置用來表明自身身份讓主機決定如何應對的 Vendor ID (VID) 及 Product ID (PID) 在 FT232R 這顆晶片正是存在 EEPROM 的。

這時候正版和盜版的差別來了,看 Application Note AN_105 的 4.3.3 節裡面有一段

When writing to the EEPROM of FTxxxR devices, it is necessary to send data 2* 16 bit words (WORD1 and WORD2).

所以同樣是收到寫入指令,以驅動程式裡的那種寫法,只有仿冒品才有可能真的寫入成功,從而寫爛 VID/PID,導致主機端無法正確識別裝置。

由此可知:

  • 插過 Windows 變磚的,也會影響其在 Linux & macOS 上的使用。
  • 只要使用者有辦法把 EEPROM 內容還原,這個變磚是可逆的。(當然修好後仍有可能再磚。)
  • 因為辨認的基礎是硬體行為,盜版的硬體無法使用軟體寫 EEPROM 的方式使其被辨認成正版。

應對方式
#

重要設備要用的 USB to UART 從有信譽的官方管道購買。至少從 FTDI CEO 的訪問裡來看 Arrow, Digi-Key, Mouser, element14, RS Components 還沒被仿冒品攻破。

買回來的傳輸線可以先獨立插到裝了最新驅動程式的 Windows 上,確認不是會被認出來的盜版。(畢竟被辨認成正版還是有可能是盜版。)

參考資料
#