Many of my fellow radio amateurs will be familiar with USB to Serial adaptors, the lack of RS-232 ports on modern computers mean they see plenty of use within the radio amateur community especially for CAT control of our Radio’s.
One of the most popular (and the one offering the best compatibility) is the FT232R chip from the scottish company FTDI. They have built a reputation for producing great USB UART IC’s with excellent compatibility and more importantly drivers that are included within windows. These devices are found in thousands of other devices from aurduino’s to 3D printers. Their popularity however means that there are a whole host of clones and couterfeit devices out there, most of which are indistiguishable from the real thing and it seems that FTDI have decided to do something about it by rendering these fakes inoperable.
A recent driver update that was pushed out via windows updates uses a clever trick to determine if it is a genuine device and if it isn’t then the PID (Product ID) of the device is updated to 0000. This has the effect of rendering the device inoperable, even if you downgrade your drivers or use them in another computer.
Following a huge backlash from the EE and Maker communities (and i suspect some heavy pressure from Microsoft), FTDI have now removed this from their drivers, however this doesn’t help much if you have already have a device that’s been rendered useless. However as they only update the PID, this can easily be reveresed. So if you have been affected by this, follow the instructions below to unbrick your device.
Unbricking the FTDI FT232R
To do this you will need access to a linux based machine. The instructions here are based on using Ubuntu.
USB Devices use a combination of VID (Vendor ID) and PID (Product ID) in order to identify the device and which driver it should be using, the VID:PID combination of the FT232R should be 0403:6001, however the recent driver update will change fake devices to 0403:0000 so in order to bring the device back to life we need to set the PID back to 6001.
- Insert your bricked device into a linux computer
- Verify that the device is indeed the one in question, run “lsusb”, you should see a device with VID:PID of “0403:0000”
- Download the ft232r_prog version 1.24 and extract it to a folder using the command “tar -zxvf ft232r_prog-1.24.tar.gz” from the folder containing the downloaded file
- You will now need to ensure you have any dependecies installed by running “sudo apt-get install make gcc libftdi-dev”
- Change the directory to the one containing the extracted program by doing “cd ft232r_prog-1.24”
- run the command “make” to build the program
- now run the following to set the PID correctly and unbrick your device “sudo ./ft232r_prog –old-pid 0x000 –new-pid 0x6001”
- Now verify that it’s worked, unplug and plug back in your device and run “lsusb”, you should now see an id of “0403:6001”
- Your done, you have now unbricked your device.