Go Down

Topic: Using Microchip MCP2200 instead of FTDI FT232 (Read 2 times) previous topic - next topic

jtw11

Hi all,

I'm working on a little device at the moment, and need USB connectivity to the MCUs UART, so clearly need a converter chip like the FTDI FT232. However, the cost of the FT232 is astronomical  compared to a device like Microchips MCP2200, which is some 70% cheaper, which equates to a £132 saving before VAT in the qty i'm building them in.

Datasheet to the MCP2200 - http://www.mouser.com/ds/2/268/22228A-81933.pdf

I've never actually used one of these converter chips in a design before, and they all seem to talk about configuration tools in the datasheets.

To use these, is it really as simple as connect up the USB lines to the chips input, and the output to the UART (correct power, decoupling etc all of course) and talk away using a Virtual Com Port driver - which I presume would allow one to use the Arduino terminal to talk to the MCU. I presume the 'configuration' is a one time setup of the converter chip?

TomGeorge

#1
Oct 17, 2013, 12:26 pm Last Edit: Oct 17, 2013, 12:32 pm by TomGeorge Reason: 1
http://au.element14.com/jsp/search/browse.jsp?N=2101+203657&Ntk=gensearch&Ntt=FTDI+FT232&Ntx=mode+matchallpartial

http://au.element14.com/jsp/search/browse.jsp?N=2101+203654&Ntk=gensearch&Ntt=Microchips+MCP2200&Ntx=mode+matchallpartial

I understand your quantity buying, but the manufactured unit price would not be much different, also consider development time.
Tom.. :)
Have you contacted suppliers and tried to bargain, especially the mob I've just given you links to?
Everything runs on smoke, let the smoke out, it stops running......VK3DMK

jtw11

Farnell is the UK division of Element 14 over here, and their price are still much higher for the 232 than the MCP2200. My local assembly house has good buying power, but there's no getting away from the fact the 232 is just a much more expensive chip.

CrossRoads

Lot of USB/Serial chips need an external also, while the FT232 does not.
MCP2200 seems to be one of those. Have you factored in additional cost (material, assembly) for 12MHz crysta/caps or a 12 MHz resonator?

Maybe consider FT230X, similar to FT232R but in smaller package with fewer GPIO pins, and also with no external crystal needed.
http://www.digikey.com/product-detail/en/FT230XS-R/768-1135-2-ND/3029141
http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT230X.pdf
Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

jtw11


Lot of USB/Serial chips need an external also, while the FT232 does not.
MCP2200 seems to be one of those. Have you factored in additional cost (material, assembly) for 12MHz crysta/caps or a 12 MHz resonator?


I have yes - and the MCP2200 still works out cheaper with the crystal, caps and extra assembly than the FT232RL.

However, I had indeed missed the FT230 - which works out cheaper than both options indeed! Crossroads, why are you always so helpful?  8)

CrossRoads

Good memory from other topics!  FT230X was brought up elsewhere.
Cypress makes a USB/Serial chip too.
FT230X seems the most useful tho. Not sure which pin corresponds to DTR, you'll have to report back and let us know.
Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

jtw11

I don't believe the chip has a DTR pin, correct me i'm wrong but DTR is only part of the RS232 protocol, and not part of RS458 or any other protocol, and as a result is probably only supported by the bigger 'flagship' chips, such as the FT232R.

The FT230X is advertised as being an interface to a basic UART I suppose...

CrossRoads

FT2323R  has 5 GPIO pins one of them performs the DTR function.
FT230X has 5 GPIO pins - I bet one of them can do the DTR function, as the chip has 4 other pins dedicated to Rx/Tx/RTS/CTS and the Typical Applications list start with:
USB to RS232/RS422/RS485 Converters

http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT230X.pdf

There's a utility to program the functions:

8.2.1 Programming the MTP memory over USB
The MTP memory on all FT-X devices can be programmed over USB. This method is the same as for the EEPROM on other FTDI devices such as the FT232R. No additional hardware, connections or programming voltages are required. The device is simply connected to the host computer in the same way that it would be for normal applications, and the FT_Prog utility is used to set the required options and program the device.
The FT_Prog utility is provided free-of-charge from the FTDI website, and can be found at the link below. The user guide is also available at this link.
http://www.ftdichip.com/Support/Utilities.htm#FT_Prog
Additionally, D2XX commands can be used to program the MTP memory from within user applications. For more information on the commands available, please see the D2XX Programmers Guide below.
http://www.ftdichip.com/Support/Documents/ProgramGuides/D2XX_Programmer's_Guide(FT_000071).pdf
Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

CrossRoads

3.16 FT_SetFlowControl ............................................................................................ 23
3.17 FT_SetDtr ... 24
3.18 FT_ClrDtr ... 25

Not readily apparent to me how you define a pin for the DTR function.
Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

macegr

#9
Oct 17, 2013, 10:51 pm Last Edit: Oct 17, 2013, 10:54 pm by macegr Reason: 1
I can confirm that the FT230X works fine for Arduino programming, with no configuration needed. DTR support works fine. It's what I use on the LED Shades. Keep in mind that it is a 3.3V part, though.

The last I heard about the MCP2200, it didn't have correct support for the DTR line, at least in the Windows drivers...the Windows CDC driver left much to be desired, and that's what the MCP2200 leverages (the FTDI chips use their own VCP driver). Things may have improved since then.

Edit: Actually, I'm using the RTS line, not the DTR line. That works because so many FTDI adapters (including FTDI's own cables) broke out the RTS line instead of the DTR line. Therefore, avrdude has triggered both DTR and RTS at the same time to reset Arduinos for programming.
Unique RGB LED Modules and Arduino shields: http://www.macetech.com/store

jtw11

Thanks, the rest of my board is 3.3V - so no problem there.

I'm glad to be 'back in the FTDI' camp as I know their drivers do work very well...

I'll have a read re the DTR line when I get a moment, see what my interpretation of it is - not that I need it...

CrossRoads

FT230X is a 5V powered part tho - don't be scared into thinking it can't be used as is in 5V systems:

+ 5V Single Supply Operation.

True 3.3V CMOS drive output and TTL input; operates down to 1V8 with external pull ups.
Tolerant of 5V input.
Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

magagna

The FT230X runs fine on both 5 and 3.3V, I've used it in circuits with both.

There's a pin change needed (3V3OUT connects to VCC for 3.3V circuits and to VCCIO for 5V) but otherwise no issues.

As macegr points out you connect RTS to the Arduino's reset since it doesn't have a DTR line, but avrdude pulses both so programming works as expected.
http://en.wiktionary.org/wiki/magagna <-- My last name.  Pretty apt.

jtw11

It seems the "+ 5V Single Supply Operation." line on the first page of the datasheet was copy and pasted from another FT device datasheet - as clearly it operates ona  3v3 single supply too...

Regarding the CBUS GPI/O pins - I've got a question, I can't seem to pull the answer out of the datasheet however. Can one manipulate the I/O pins using commands sent from the MCUs UART to the FT230X? Or can they only be manipulated by USB commands sent from a host computer to the FT230X?

The reason I ask, is i'm using an attiny device, and in an ideal world would have another 2 GPI/O pins that can be used to force sleep / shutdown in another device, instead of relying on timeouts - so it's not an absolute requirement, but it would be nice to be able to use the GPI/O pins on the FT230X to do this...

CrossRoads

I was thinking the same for the GPIO. Reading the DD2xx programmers guide it wasn't clear to me how one would control the GPIO lines.
Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

Go Up