Alternative to ATMEGA16U2-MU(R) for DIY Arduino UNO?

I'm working on assembling my own Arduino Uno, per the v3 eagle files and available here: http://arduino.cc/en/Main/arduinoBoardUno

What is a good drop-in replacement for the ATMEGA16U2-MU(R), used for interfacing with USB and boot-loading the ATMEGA328P-PU?

The pins on the ATMEGA16U2-MU(R) are far too small for my hands to be soldering, and DIP is so much more protoboard/breadboard friendly.

Thanks much!

The simplest thing is to get an FTDI cable and forget about trying to put a USB chip onto the board (just put the 6-pin FTDI connector).

Example here:

It really isn't worth the trouble!

The USB to TTL adapter modules sell for one us dollar on eBay, albeit if you want to have a pin for the reset and can handle a PCB track modification, those cost about two dollars with the two to three week postage.

If you are making a PCB, you just provide a place on it with a 0.1" six point socket for the module to plug in. That is in fact, exactly how a number of other people have addressed the same situation. These (cheap) modules use a CP2012 or PL2303 chip - Linux has no problem recognising these, Windows will need a driver.

If you do not want the auto-reset, for a few dollars you can have the USB to TTL adapter as a lead with separate female connectors for 5V, Gnd, Tx, Rx - you can swap the separate "Dupont" housings for a four (or five or six, keyed) way housing to mate with pins on the PCB.

While I do appreciate the answers, I've already successfully constructed a breadboard-style Arduino with a china-made FTDI programmer.

This time 'round, I'm more interested in creating a full fledged Do-It-Yourself Arduino Uno clone than I am in taking the easy way out. A full set up complete with all of the bells and whistles is what I'm really after. And the one thing I am really trying to resolve at this point is a suitable replacement for the ATMEGA16U2-MU(R)

There is no "drop in replacement" for a 16u2.
You could put in an FTDI, Prolific, or cp2102 USB/Serial chip, but you'd need pretty significant redesign and wouldn't get all the features. You could also consider a Microchip PIC (which has some USB-capable variants in DIP packages), or something like an ATttiny running "vusb" firmware (there was at least one Indian vendor building an Arduino clone with dual ATmega8 chips - one for usb/serial and one for the Arduino CPU.)

Or use a little module like http://www.ebay.com/itm/FTDI-Basic-Breakout-5V-3-3V-Arduino-Compatible-USB-TTL-FT232RL-for-MWC-MultiWii-/200946431619?pt=Home_Automation_Modules&hash=item2ec9573683

I've seen it done with a ATtiny45 using V-USB.
--- bill

westfw:
Or use a little module like http://www.ebay.com/itm/FTDI-Basic-Breakout-5V-3-3V-Arduino-Compatible-USB-TTL-FT232RL-for-MWC-MultiWii-/200946431619?pt=Home_Automation_Modules&hash=item2ec9573683

Any advantage to that module compared to a generic CP2102 one like this?

http://www.ebay.com/itm/New-Mini-USB-To-TTL-COM-Converter-Module-Build-in-CP2102-/200939835335?pt=LH_DefaultDomain_0&hash=item2ec8f28fc7

pico:

westfw:
Or use a little module like http://www.ebay.com/itm/FTDI-Basic-Breakout-5V-3-3V-Arduino-Compatible-USB-TTL-FT232RL-for-MWC-MultiWii-/200946431619?pt=Home_Automation_Modules&hash=item2ec9573683

Any advantage to that module compared to a generic CP2102 one like this?

http://www.ebay.com/itm/New-Mini-USB-To-TTL-COM-Converter-Module-Build-in-CP2102-/200939835335?pt=LH_DefaultDomain_0&hash=item2ec8f28fc7

pico,
That one is not very breadboard or cable friendly. The connections on the sides don't have DTR or RTS for autoreset
and the 10 pin area doesn't have the rx and tx lines.
I'd definitely pass on that board.
I'd also pass on the board in the link above it as well.
There are others out there that are easier to work with
or if you look carefully you can find a module that has a pinout that is
already compatible with the FTDI USB to serial header/connector which is what the Arduino "pro" boards use.
i.e. one more like this:
http://www.ebay.com/itm/FT232RL-USB-To-Serial-Adapter-Module-USB-TO-232-For-Arduino-Download-Cable-/390641172578?pt=LH_DefaultDomain_0&hash=item5af4074062

What chip it uses FTDI or something like cp2102 doesn't really matter,
(I've used cp2102 boards to do uploading).
What matters is the signals available on the header, and in my view it is best to use one that has a pinout
that is the same as the FTDI USB to TTL cable since that is compatible with
the Arduino boards.
Although my preference is to use RTS instead of DTR as there are some advantages
when using the Arduino IDE when using RTS instead.

--- bill

Mouser carries MIKROE-483, it's one of the least expensive (if not The least) non-ebay FTDI modules available.

Thanks guys, excellent info and pointers. :slight_smile:

CrossRoads:
Mouser carries MIKROE-483, it's one of the least expensive (if not The least) non-ebay FTDI modules available.

Only bummer on that board is that the pinout won't allow you to just put a header on it
and directly connect to an Arduino "pro" board.

Yeah, pin order is a little different.
Does solve the hassle of trying to solder an FTDI chip on a board tho, and the 2 sets of pins make it more stable than just 6 pins.
I put machined pins on it and machined sockets on a card to allow it to be easily removable:


Looking forward to trying some of these flush mount pins & let it sit lower:
http://www.dipmicro.com/store/0552-1-15-01-11-27-10-0
or
http://www.dipmicro.com/store/0552-2-15-01-11-27-10-0
next time I order something.

@bill:

I've seen it done with a ATtiny45 using V-USB.
--- bill

Reference? I've used V-USB for outbound but never duplex comm... Would love to see the article.

Ray

Updated: Here is the tiny45/85 page for USB-Serial:
http://www.recursion.jp/avrcdc/cdc-232.html

bperrybap:

pico:
Any advantage to that module compared to a generic CP2102 one like this?
http://www.ebay.com/itm/New-Mini-USB-To-TTL-COM-Converter-Module-Build-in-CP2102-/200939835335?pt=LH_DefaultDomain_0&hash=item2ec8f28fc7

That one is not very breadboard or cable friendly. The connections on the sides don't have DTR or RTS for autoreset and the 10 pin area doesn't have the rx and tx lines.

So, you have me puzzled. What are the eight connections on each side, which would in themselves and as illustrated (lacking specific information and sufficient views), appear to be eminently breadboard-friendly and mechanically stable? How did you find the connections?

Paul__B:

bperrybap:

pico:
Any advantage to that module compared to a generic CP2102 one like this?
http://www.ebay.com/itm/New-Mini-USB-To-TTL-COM-Converter-Module-Build-in-CP2102-/200939835335?pt=LH_DefaultDomain_0&hash=item2ec8f28fc7

That one is not very breadboard or cable friendly. The connections on the sides don't have DTR or RTS for autoreset and the 10 pin area doesn't have the rx and tx lines.

So, you have me puzzled. What are the eight connections on each side, which would in themselves and as illustrated (lacking specific information and sufficient views), appear to be eminently breadboard-friendly and mechanically stable? How did you find the connections?

Scroll down on the the link and look at the PCB mask.
4 top pins are: +5 rx tx gnd
4 bot pins are: +5 USB_D- USB_D+ gnd
Side 10 pins are all modem control lines and voltage.

For a custom PCB like what CrossRoads has done, it would definitely work
since you can pick and choose what pins you want/need and have
complete freedom on physical pin locations and orientation.


For breadboard/strip board use:
While it does plug into a breadboard,
you cant plug it into a bread board and make autoreset work without
having DTR or RTS available.
And while the needed control lines (DTR or RTS) exist in the 10 pin section on the left,
the orientation isn't correct for a breadboard.
For a breadboard or strip board you really want a layout more like this:
http://www.robotmesh.com/ftdi-basic-breakout-3-3-5v-arduino-compatible?gclid=CJDU-4vTo7kCFUVk7Aod1D0A4w
Now maybe just maybe the DTR or RTS hole lines up with a breadboard hole and you
could solder in another pin. But there is no guarantee; you would have to get
one and try it.


For Arduino "Pro" use:
Because of the 4 pin layout that only includes data and power lines,
you can't use the existing pins or holes on that module to make a single header that can be
directly plugged into a Arduino "pro" type board header/connector that uses the FTDI cable pinout.


Therefore in my book this board is a "fail" for both DIY breadboard/strip board uses and for
using with Arduino "pro" type boards as I like autoreset to work to make uploading easy/automatic.

--- bill

Any advantage to that module compared to a generic CP2102

Probably not. I have an old distrust for cp2102 from back when their Mac drivers (apparently) sucked, but I haven't heard any complaints recently.

I would be inclined to investigate an FT230X-based solution. The SSOP-16 shouldn't be too hard to solder (SSOP-28 was possible, this should be easier.)

bperrybap:

pico:
Any advantage to that module compared to a generic CP2102 one like this?
http://www.ebay.com/itm/New-Mini-USB-To-TTL-COM-Converter-Module-Build-in-CP2102-/200939835335?pt=LH_DefaultDomain_0&hash=item2ec8f28fc7

Scroll down on the the link and look at the PCB mask.
4 top pins are: +5 rx tx gnd
4 bot pins are: +5 USB_D- USB_D+ gnd
Side 10 pins are all modem control lines and voltage.

I'm not quibbling with what you say about which lines are needed for a breadboard, but the only illustration I can find on that page is this one:
... and you must have super eyesight, because I can't really make out any of the connections from it.

Unless there is another illustration that the width of my monitor ("portrait" mode) is preventing me from seeing.

The FT230XS has slightly closer pin spacing than the FT232RL.

The CP2102 module pictured has most needed IO on one the headers with pins, a pin would be need to be added to the other header to bring out DTR.

Paul__B:

bperrybap:

pico:
Any advantage to that module compared to a generic CP2102 one like this?
http://www.ebay.com/itm/New-Mini-USB-To-TTL-COM-Converter-Module-Build-in-CP2102-/200939835335?pt=LH_DefaultDomain_0&hash=item2ec8f28fc7

Scroll down on the the link and look at the PCB mask.
4 top pins are: +5 rx tx gnd
4 bot pins are: +5 USB_D- USB_D+ gnd
Side 10 pins are all modem control lines and voltage.

I'm not quibbling with what you say about which lines are needed for a breadboard, but the only illustration I can find on that page is this one:
... and you must have super eyesight, because I can't really make out any of the connections from it.

Unless there is another illustration that the width of my monitor ("portrait" mode) is preventing me from seeing.

Again,
Scroll down the page.
You will see the other photos.
I attached it as well. (click on it to see it larger)
But again, just scroll down the page from the link.
--- bill

Not really breadboard friendly - but add a pin to the Top, and run a wire for DTR from there to the breadboard.

Or use one of the BAITE boards - cut the trace going to the RST header pin, and wire DTR to it instead. Retrolefty demo'd that quite a while ago, I have used them that way also.

http://www.ebay.com/itm/USB-2-0-to-TTL-UART-6PIN-CP2102-Module-Serial-Converter-Transfer-Chip-Status-LED-/290969575818?pt=LH_DefaultDomain_2&hash=item43bf23618a