Live data from Hacker News

FTDI driver kills fake FTDI FT232s

eevblog.com

171–180 of 315 posts

Re: FTDI driver kills fake FTDI FT232s

#171

The real problem here is that USB does not define a standard interface for an RS-232 adapter. Proprietary drivers should never have been required for these. Same deal for Centronics printer adapters.

It does, it's called CDC and there are plenty of other adapters that use it. Which is why I think the popularity of FTDI adapters is surprising in some ways.

The problem is that on Windows you still need .inf file with correct VID/PID (this is the case for eg. MCP2200). So for typical user there is not much of an difference between CDC and proprietary driver.

Re: FTDI driver kills fake FTDI FT232s

#172
post #165

Earlier quoted context omitted.

I don't think so. There was at least one guy in the thread who reprogrammed the PID back, and the chip worked with the old FTDI drivers again, which means the USB interface was working just fine (or else how could he access it to change it back).

They change the PID to zero, which means Windows won't associate it with FTDI or any other driver. You have to jump through some manual hoops to undo it, which is something most people can't do. So for all intents and purposes it is bricked, a.k.a "locked out".

Most HN'ers seem to agree it is OK for FTDI to prevent their own drivers from working with the fakes, right? The fact that there are no OTHER drivers that are compatible (no matter what the pid is) with the fakes isn't their problem, is it?

Re: FTDI driver kills fake FTDI FT232s

#173
post #132

Earlier quoted context omitted.

One could argue that using the official driver with counterfeit chips is outside intended purpose of the official driver, at which point the user is proceeding at his or her own risk.

I think if somebody steals your bike, they ride it away at their own risk, but... * That doesn't mean you can shoot them as they ride away. * It also doesn't mean you can booby trap your bike.

But if I shoot myself while driving in nails with the butt of a handgun, no one would blame the gun manufacturer.

Re: FTDI driver kills fake FTDI FT232s

#174
I'm designing an Arduino-compatible board[1] that supposed to have an FTDI chip for ease of design. This whole thing makes me reconsider it, what would be the best way to replace it some other solution? Do I have any real option if I want to stay within the Open Parts Library[2]?

[1]: https://www.hwtrek.com/product_preview/VTZUZV9k [2]: http://www.seeedstudio.com/wiki/Open_parts_library

Re: FTDI driver kills fake FTDI FT232s

#175

Earlier quoted context omitted.

You're damaging someone's hardware without their consent? Its essentially vandalism.

Sure, but the chips are illegal no? Where is the moral high ground coming from... I'm not a supporter of intellectual property laws, but we have them, so I'd also be curious of any legal ground fake chip users have to stand on.

"Illegal" is an extremely broad and imprecise way to describe a physical object.

Imagine I buy a car from a dealership, and without my knowledge the dealer has swapped out the original radio for a cheap counterfeit. I guess technically you could argue that makes the car "illegal" but it would be absurd to suggest that the manufacturer has the right to come to my house and slash my tires.

As I see it, it's not about whether "fake chip users" are obeying the laws; the burden should be on FTDI to justify its willful property damage.

Re: FTDI driver kills fake FTDI FT232s

#176

Earlier quoted context omitted.

This isn't a misconfiguration issue, or that Linux bug that bricked certain SCSI devices. No, they are explicitly asking the counterfeit chip to rewrite its USB PID to 0, which renders it unusable. That's intentional and clearly malicious.

Has this been proven by a corresponding packet dump listing "Write EEPROM, offset 0, 4 bytes: [0,0,0,0]? Or are they -sneakily- bricking the device by evoking an unintended reaction to a seemingly innocuous command? The former will be easy to prove, the latter.. probably not so much.

Check out FTDI's Twitter feed: https://twitter.com/FTDIChip/status/524928658180304896

They're being somewhat evasive, but it's clear that this is intended as a deliberate anti-counterfeiting strategy.

Re: FTDI driver kills fake FTDI FT232s

#177
post #172

Earlier quoted context omitted.

They change the PID to zero, which means Windows won't associate it with FTDI or any other driver. You have to jump through some manual hoops to undo it, which is something most people can't do. So for all intents and purposes it is bricked, a.k.a "locked out".

Most HN'ers seem to agree it is OK for FTDI to prevent their own drivers from working with the fakes, right? The fact that there are no OTHER drivers that are compatible (no matter what the pid is) with the fakes isn't their problem, is it?

Well, FTDI is leaving their vendor ID intact, and given their behavior so far it wouldn't surprise anyone if they tried to interfere with third-party drivers that enabled using non-FTDI hardware identifying itself with FTDI's vendor ID.

Re: FTDI driver kills fake FTDI FT232s

#178

Can somebody give me the background here? What is a FTDI FT232s? It appears to be a fairly low level USB controller chip? Is this chip (or its ilk) in every kind of usb device? What is the impact of this? Most of this article dives in with a fair bit of preexisting knowledge - can somebody fill me in?

FT232 is USB to serial port adapter chip. Typical application of these chips is anything that has to be connected to USB but does not warrant full-featured USB implementation. This includes various interface cables and converters, (low-cost or specialized) test and measurement equipment and large amounts of various (semi-)custom electronics (both hobbyist and industrial).

In essence, FTDI's chips are the go to solution for adding USB support when you don't want to spend too much time on it. I would argue that today there are better and cheaper alternatives, but FTDI was probably the first vendor of such chips with reasonable documentation and software support.

Re: FTDI driver kills fake FTDI FT232s

#179
post #20

Earlier quoted context omitted.

In addition to the other posted replies, it's bad software engineering. You really can't be confident enough in your logic to ever start issuing DESTROY_HARDWARE() commands of any kind, short of the small set of very specialized programs that may be deliberately used for such things (FPGA programmers, etc). Any error whatsoever and you may end up nuking your real customer's hardware. Bad plan. Same reason why program…

Thanks, that's a great answer, but I guess I'm curious about legal/ethical considerations.

I can't find it anywhere, but I remember reading about a software company that wrote an office suite for early computers (like DOS or possibly even pre-DOS), that would detect if it was a legal copy, and if it wasn't a legal copy, would delete your data. I seem to recall that they got slammed by the legal system pretty hard, which is one possible reason for why software companies don't do it nowadays. I personally see this as an action on par with, or worse then, the software company I mentioned's actions.

Re: FTDI driver kills fake FTDI FT232s

#180
post #173

Earlier quoted context omitted.

I think if somebody steals your bike, they ride it away at their own risk, but... * That doesn't mean you can shoot them as they ride away. * It also doesn't mean you can booby trap your bike.

But if I shoot myself while driving in nails with the butt of a handgun, no one would blame the gun manufacturer.

you can if they release a patch that makes hitting the butt of the gun a firing mechanism without telling you... Also, can we agree that a gun metaphor is rather ridiculous?
Post reply on HN