If your ELM327 device has FTDI bridge inside, download D2XX drivers from FTDI's site and use D2XX.
You see, back in history computers had one or two serial ports (usually named COM1, COM2 etc, you remember). All the software etc. were able to communicate with devices via serial ports using serial protocol (RS232). And then came the USB (port and protocol, nothing to do with serial ports or protocol), replacing serial ports from computers. But yet still lot's of devices (like ELM327 chip!) uses serial protocol today, as it is so much easier to implement than USB. Child can implement serial protocol to their devices, you know, but USB, it's whole different thing. Same goes with software, they support serial protocol and serial ports as it's simple to implement and of course because devices still use them! However, here comes dilemma... We do not have serial ports anymore on our computers!
Here comes serial-USB bridges, like Prolific's PL2303 or FTDI's FT232R. They are able to communicate with devices like ELM327 using serial protocol and then transport serial data to computer via USB connection. On computer, there are drivers for these bridge chips and these drivers do communicate with these chips over the USB. Drivers do create virtual serial ports (opposed to real hardware serial ports), often called VCP (virtual COM port) and expose serial data read from USB to software via virtual serial ports. Software supporting serial ports (or COM ports, as they are often called) then can connect and their point of view they are just "talking serial" directly to devices. But behind the scenes whole chain is:
Serial Device <-> Serial-USB bridge <-> USB <-> Drivers <-> Virtual Serial Port <-> Software
While back in days we had:
Serial Device <-> Serial <-> Serial Port <-> Software
Now, as USB and serial protocols are totally different species, this multilayered emulation can give problems. As you have found out, speed problems etc. Now, FTDI has implemented D2XX protocol, so that if software does support it, software can communicate directly with Serial-USB Bridge bypassing Virtual Serial Port. So chain becomes:
Serial Device <-> Serial-USB Bridge <-> USB <-> Drivers <-> Software
So one problematic emulation layer is removed. This requires, of course, support from the drivers and from to software, since this is vendor specific thing instead of standard thing. ELMConfig supports D2XX, so if you have FTDI chip inside of your ELM327, you should use D2XX, it's more reliable for obvious reasons.
Ps. You could, of course, connect ELM327 chip directly to serial port, if you have one and you would have the skills. This would eliminate all the emulation layers etc. Though, where do you find serial ports anymore and where do you find fast enough serial ports? Old computers had slow serial ports... Cannot remember what was the usual speed limit back in old days...
how would i know if i have a ftdi chip in my elm cable
do you also need to install extra drivers
thankyou for the lengthy post explaining it all