Two wrongs don't make a right, was hopefully something that your parents taught you when you where quite small.
The issue is that the FTDI driver is deliberately reprogramming a chip that is not theirs and for which they have no authorisation to do so. This is an unauthorised modification and illegal.
You cannot stick something in a license agreement that allows you to break the law, because the courts will hold that part of the license agreement null and void.
As many many people have said the right and legal thing was to simply stop working and post a message to the user that the chip is a counterfeit/clone.
Why put this down to malice and not down to a programming/QA issue?
If I am developing something, then my general approach is to test it against know factors and some edge cases I can think about. Counterfeit stuff screws with the whole programming and QA cycle, since they say they are the same as something I developed, act as something I developed, but fail in subtle ways I wouldn't have considered or tested for.
Maybe FTDI did do something intentionally, but I suspect it was an oversight, especially considering they pulled the update once reports were coming in.
FTDI will probably have to do three things:
- Test for the known limitations of counterfeit hardware (they can't test for the unknowns).
- Update the EULA to be clear of risk/
- Update the installer to warn against cloned chips and impact it may have.