Sunday, February 20, 2022

Recover USB thumb drive (修复U盘)

USB thumb drive is very popular due to the cheap price, portable, easy to use, and can be used as boot media. However, occasionally user may run into problem with this small piece of hardware, such as the USB device is detected as malfunction USB device, Disk needs to be format but cannot be formatted successfully, No Disk or No Media, etc. In most cases, the hardware wasn't damaged, the real problem is some essential data stored on the flash was corrupted. The flash not only contains area as user storage space, but also reserves several small space for storing this USB drive specific configuration data, and firmware which is used to manage the flash memory, yes, inside the flash drive there is a small controller chip beside the flash chip, and it may consume the firmware we mentioned here. Some vendors sell the USB board with controller, and customer can solder the desired flash chip on it, such as this one from Ali-Express, which is about $14 each:

SM3267L AE UFD PCBA, 3267AE USB3.0 FLASH DRIVE PCBA, DIY UDF Kits, TSOP48+LGA60 Special Pad,ONLY FOR some LGA60 E2NAND.|kit kits|pad padkit diy - AliExpress

The chip in the middle, SM3267L-AE, is an USB 3.0 controller from Silicon Motion(慧荣). The right side is the pads for soldering the flash chip, you can pick compatible chip from Sandisk, Samsung, Intel or any other vendors.

If you run into this problem, you may try to recover your USB thumb drive if you know the detail of the hardware, and can find the right tools to program it. Don't bother to try the vendor's online recovery tools or RMA, mostly those just a waste of time and money.

Luckily, there is popular software/tools and website all about this. To identify the chip info, the most popular tools is the ChipGenius(芯片精灵). You can find this software from many site, likely the tools originally is from Chinese site https://www.mydigit.cn/(数码之家), a Russian website, https://www.usbdev.ru/files/chipgenius/,  has a collection of almost all versions of it. There is a catch, for the latest version v4.20 and v4.21, anti-virus software will report "Trojan:Win32/CryptInject!MSR" . I'm not sure is it a real risk or false alarm, anyway, for anyone who concern about the risk, you can stick with the version 4.19, which works for most chip/devices.

Once you can identify the chip info, then you will need to find the right tools to reprogram the device. For my case, it is the above SM3267AE controller with a Sandisk chip. So I would need the SMI Massive Production Tool (MP Tool). The Russian usbdev site again provide a collection of the tools at here: https://www.usbdev.ru/files/smi/transcendsmbyusbdev/

There is a lot of tutorial of this SM MP Tool, such as this one: 慧荣SMI SM32X量产工具G1219 图文教程.恢复方法. Just several notes here per my experience:

  • 1st need to setting, the password is '320' or two space.  
  • Check 'Download ISP' if you get No Media or Capacity is 0. Do not select specific ISP file if you don't know which one is the right one. Let the tools to select the proper one.
  • may get fail for different reason, just try different setting. For format error, can ignore it. Later do the formatting from Windows.