Tuesday 25 November 2014

FTDI still bricking chips?

I doubt anyone missed the recent FTDI driver controversy.

The Scottish company Future Technology Devices International (FTDI) released an updated version of their USB-to-Serial driver for Windows on their website late September and last month the driver became available via Microsoft Windows Update. It soon became apparent that these new drivers could 'soft brick' counterfeit and software-compatible clones of their chips by re-writing the USB product ID (PID) to "0000". This action prevents the chip from being recognised by drivers of any operating system, effectively making them inoperable unless the PID is changed back. This clumsy and ill thought out measure was intended to protect its intellectual property.

The ability to reprogram the USB Vendor/Product IDs is a feature of FTDI devices offered to equipment manufacturers and so most bricked devices could be reset by using the downloadable FTDI utility.

Obviously there was much outrage from the hobbyist community and FTDI were roundly criticised and as a result the malicious driver was supposedly removed from the Windows update system.

Or so I thought...

I am currently constructing another data mode interface for some experiments with FreeDV. It requires the usual PTT control driven using the RTS line from a serial port. I purchased a couple of simple TTL level interface boards on eBay which claimed to use FTDI chips.



I built up a little scrappy veroboard circuit with an open-collector drive transistor and plugged into the shack PC and everything seemed okay as this PC already had an older FTDI driver installed.

I am using another computer for the FreeDV experiments and plugged the board into this thinking it too already had a safe FTDI driver installed but instead it brought up the installing driver dialogue and appeared to go online and download drivers and install them. I really didn't pay much notice as I wasn't too worried as any malicious drivers had supposedly been pulled and sure enough after installation everything appeared to work, the port appeared in device manager.

I unplugged the board to make a slight change and was surprised when I plugged it back in the PC the driver installation dialogue reappeared followed by an error message saying driver couldn't be installed and contact the manufacturer.

The serial port now appeared in the device manager with a yellow exclamation mark saying no driver installed error 28. Examining the device details showed that the VID was still 0403 but the PID was 0000 it had been bricked! Unfortunately not soft bricked as I have been unable to reset the chips PID using the FTDI utility.

I am not exactly sure what has happened but still a case of beware when it comes to FTDI devices and I shall be avoiding them from now on.

No comments: