Replacement part for FTDI FT232RL

Hey guys,
I have found the SSOP pin spacing of the FTDI chip very difficult to work, word on the street is that higher priced stencils may solve the problem.

I'd like to pursue a different solution - find a chip with reasonable spacing, SOIC kind of spacing where the pins are 0.05" (1.27mm) apart vs 0.025" (0.65mm).

Grumpy_Mike got me thinking about this, and gave me a clue what to look for.

I have found a part that I think will fit the bill: 20-pin SOIC package, handles the USB to UART translation, has the Rx/Tx LED drivers, works on 3-5.5V.
Needs 12 MHz crystal/caps, or resonater.
USB 2.0 compliant.
Uses standard Microsoft® Windows® drivers for
Virtual Com Port (VCP): Windows XP(SP2 and later)/Vista/7

Does not provide 50mA of 3.3V current.

Any one have any experience with this part? I also like the cost decrease over the FT2332RL, its like 1/3 the price. Xtal & 2 caps certainly don't come anywhere near the remaining 2/3 of the price.

I like the fact it's a SIOC, although that makes it bigger which I don't like (of course that's the point of your post :))

You can use a Murata resonator, so only one extra component.

No 3v3, I don't see that as a problem, that's easy enough to get from the 5v rail.

I'm happy with the FTDI chip but if you trail blaze and have no problems I could be convinced to use it.


Rob

Any one have any experience with this part? I also like the cost decrease over the FT2332RL, its like 1/3 the price. Xtal & 2 caps certainly don't come anywhere near the remaining 2/3 of the price.

From the datasheet I see that it doesn't break out the DTR signal, but does provide the RTS signal. Seems to me the very first arduino USB board used the RTS to generate the auto-reset pulse. Later boards showed using either DTR or RTS. I always therefore assumed that the arduino IDE pulses both DTR and RTS control signals to generated the auto-reset pulse. However I haven't verified that with a scope. Does anyone know where in the arduino IDE code the auto-reset pulse is defined and generated and could verify if it sends both a dtr and a rts pulse?

So that's my only concern to using this chip, will the arduino auto-reset function still work?

Lefty

Have you seen the size of the chip they use? Its even more unworkable! And costs twice what the MCP2200 does.

The Atmel family used is "8-bit Microcontroller with 8/16/32K Bytes of ISP Flash and USB Controller".

Seems a bit over the top for 2 USD data lines, 2 UART lines, and 2 LED drive lines.

In many (most?) cases it can't be the Arduino chip, its got no A/D converter, less PWMs (but more interrupts).
And then you have the added challenge of mixing your sketch in with the USB sketch? Or make a bigger bootloader that does the USB function too?
I don't know much room that takes up.
And there's no expansion path from there - no equivalent of the 644.1284.1280.2560 kind of parts.

All I want is a simple USB interface solution, that's hobbyist installable.

This one might have been usable
ATmega32U4
but is only in 44 TQFP. Not user friendly when an IO pin is accidentally taken out.

Lefty, could one of the General Purpose IO pins be used as the DTR?
I see a bunch of commands in 2.3, presumaby something like

bool SimpleIOClass::SetPin(unsigned int pin)
bool SimpleIOClass::ClearPin(unsigned int pin)

could be used to drive a DTR signal at the end of a sketch upload?

CrossRoads:
Lefty, could one of the General Purpose IO pins be used as the DTR?
I see a bunch of commands in 2.3, presumaby something like

bool SimpleIOClass::SetPin(unsigned int pin)
bool SimpleIOClass::ClearPin(unsigned int pin)

could be used to drive a DTR signal at the end of a sketch upload?

I'm sure it could, but that would require PC usb driver software changes to convert (map?) the arduino IDE auto-reset command to be converted to one of the GPIO pin on this usb serial chip. Best to just scope out if the arduino ide does indeed send the RTS signal along with the DTR signal, if so then no software/firmware needed, just wire the RTS pin to the .1ufd cap that feeds the reset pin.

Lefty

Does anyone know where in the arduino IDE code the auto-reset pulse is defined and generated and could verify if it sends both a dtr and a rts pulse?

Yes. Yes I do. Well, I think I do. The code is deep inside avrdude. Let's see if I can find it again ... wowsers, I hate the SVN broswer ... I believe this is the "lowest" point...

http://svn.savannah.nongnu.org/viewvc/RELEASE_5_10_0/avrdude/ser_win32.c?root=avrdude&view=markup

As far as I can tell, the request to open the serial port eventually calls ser_set_dtr_rts which toggles both control lines. In the worst case, it looks like the "arduino" protocol definitely toggles both lines...

http://svn.savannah.nongnu.org/viewvc/RELEASE_5_10_0/avrdude/arduino.c?root=avrdude&view=markup

Autoreset : Don't rely on RTS with this chip (i.e "out of the box" MCP2200) !!!

The CDC serial device specification doesn't include CTS or RTS. The firmware in the MCP2200 handles the RTS and CTS signals internally. This means it probably can't reset your Arduino for programming.

http://dangerousprototypes.com/docs/MCP2200_breakout_board#Issues_with_the_MCP2200

More about this chip :
http://dangerousprototypes.com/2011/01/18/hack-open-source-usb-stack-on-mcp2200/

(deleted)