Voting resources, early voting, and poll worker information - VOTE. ... Adafruit is open and shipping.
0

ATmega8u vs FT2232 vs native USB as programmer interface
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

ATmega8u vs FT2232 vs native USB as programmer interface

by cstratton on Wed Sep 29, 2010 4:04 pm

I'm mentally designing a robot controller board, and trying to decide what to use for a code-loading / debug interface. The MCU will be an arm7 or cortex (still deciding).

Amongst my options:

1) Get a chip with a second USB interface (the first one is used in an application) and do a bootloader / user serial / etc for that. Advantages: adaptable, potentially unique VID/PID so software can find it. Downsides - any firmware must support at least usb serial functionality, have to be careful not to erase bootloader, can't rely on built in boot rom as that is only uart.

2) Use an FT2232 to provide a serial port interface to firmware and to rom bootloader, and also provide USB access to the ARM jtag port for ultimate unbrickability. Makes bare board bringup easy. Disadvantage: cost, non-unique vid/pid (w/o cost of extra eeprom) means software might mistake some other gadget for it.

3) Use an ATMega8u like the new arduinos. Should be able to do both serial + jtag with more reconfigurability, unique VID/PID possible. Disadvantages: have a lufa project to maintain in addition to arm firmware, have to program bare boards. More importantly, nobody seems to have them in stock, plus all the arduino clone makers will probably be buying them up.

Any thoughts on what would make a board most attractive while keeping cost down?

cstratton
 
Posts: 294
Joined: Wed Sep 29, 2010 3:52 pm

Re: ATmega8u vs FT2232 vs native USB as programmer interface

by zener on Wed Sep 29, 2010 4:20 pm

lufa?

zener
 
Posts: 4567
Joined: Sat Feb 21, 2009 2:38 am

Re: ATmega8u vs FT2232 vs native USB as programmer interface

by cstratton on Wed Sep 29, 2010 4:34 pm

Zener wrote:lufa?


Was that a question or a suggestion?

Lufa is an open source embedded usb stack for ATmega8u and others. Problem is availability of that part is looking uncertain.

The possibility I neglected to mention is a different usb micro - one of the cypress 8051 devices, something from pic, etc. I think i want to steer away from the software bit-bang avr solutions, though I would consider it if someone is a strong advocate.

cstratton
 
Posts: 294
Joined: Wed Sep 29, 2010 3:52 pm

Re: ATmega8u vs FT2232 vs native USB as programmer interface

by adafruit on Thu Sep 30, 2010 12:27 am

if you want a cortex, use the lpc1343 :) it has a ROM-builtin USB bootloader that works like a disk drive and they're everywhere/dirt cheap too
we carry a nice lpc1343 board (see "ARM dev" to the left) & it comes with a tutorial for setting up the IDE and USB example code including serial output printing. its a really sweet chip :mrgreen:

adafruit
 
Posts: 12151
Joined: Thu Apr 06, 2006 4:21 pm
Location: nyc

Re: ATmega8u vs FT2232 vs native USB as programmer interface

by cstratton on Thu Sep 30, 2010 1:10 am

Unfortunately I need host-side USB for the back end interface, so I'm looking at the next class up of parts, LPC1768 vs LPC2387/2388, etc

What I'm trying to figure out is if I want to rely on the built-in USB capability of a dual USB part like the 2388, or if I want to put a separate USB device on for programming, jtag, etc that can be used for recovery even if the arm is "confused".

I have a couple eval boards on order to see what working with the two cores is like, just thinking ahead to what to put on a pcb.

cstratton
 
Posts: 294
Joined: Wed Sep 29, 2010 3:52 pm

Re: ATmega8u vs FT2232 vs native USB as programmer interface

by adafruit on Thu Sep 30, 2010 1:19 am

it may be cheaper to buy a ready-to-go chumby hacker board. USB hub, ARM, RAM, 3.3 I/O's, i2c, lipoly boost&charger, PWM's, A/V out...?

adafruit
 
Posts: 12151
Joined: Thu Apr 06, 2006 4:21 pm
Location: nyc

Re: ATmega8u vs FT2232 vs native USB as programmer interface

by cstratton on Thu Sep 30, 2010 11:28 am

adafruit wrote:it may be cheaper to buy a ready-to-go chumby hacker board. USB hub, ARM, RAM, 3.3 I/O's, i2c, lipoly boost&charger, PWM's, A/V out...?


An entire chumby with the lcd would be a parallel option to what I'm working on, which I probably will support. But the current board is a helper for something else that has the human interface but not the I/O.

Arduino-like boards with an ARM7 or Cortex SOC need only cost $5-10 more than an atmega328 solution (some with only the built in usb are actually cheaper). Of course this is a <100 MHz cpu and about a half meg of flash. Something like a chumby, shivaplug, beagle, etc adds gobs of external or stacked memory and embedded linux at hundreds of MHz, but I've yet to see that for under $70-80, and often twice that. Some of those devices are often also in a process that means I/O's can't even handle 3.3v, and of course they are BGAs.

In other words, I think there is a role for the self-contained ARM soc's in the embedded controller (as in smaller than embedded computer that can run linux) market - what I'm not sure is that there remains a role for ATmega328's, other than inertia or where one needs the dip package and through-hole DIY option. If the people currently selling these in the arduino-class market were working on open libraries for native software migration instead of pushing runtimes like .NET, I expect the inertia would be turned.

cstratton
 
Posts: 294
Joined: Wed Sep 29, 2010 3:52 pm

Re: ATmega8u vs FT2232 vs native USB as programmer interface

by adshea on Thu Sep 30, 2010 5:09 pm

I'm working with LPC175x parts and they have a ROM serial bootloader that you can use any USB-serial converter for (the BusPirate works great). That way you can have the onboard USB for your device, and even use the programming serial port for the system, It only bootloads on reset or after following a special microcode instruction.

adshea
 
Posts: 48
Joined: Fri Nov 06, 2009 10:01 pm

Re: ATmega8u vs FT2232 vs native USB as programmer interface

by cstratton on Thu Sep 30, 2010 7:06 pm

AdShea wrote:I'm working with LPC175x parts and they have a ROM serial bootloader that you can use any USB-serial converter for (the BusPirate works great). That way you can have the onboard USB for your device, and even use the programming serial port for the system, It only bootloads on reset or after following a special microcode instruction.


Yes, I'm planning on leveraging that. I could save $5-6 by only putting headers for an FTDI 3v3 cable or something, but the second channel into the device is going to be essential to programming since the on-chip USB is tied up, so saving $5 only to make most users spend $15 is false economy.

In your experience, is there anything you can do it which accidentally locks out the serial, or for which it is insufficient - ie, is it worth the extra buck to get an ft2232 (vs ft232) and build in a jtag adapter in addition to serial? (I do think a cheap board with built-in jtag would be very cool though).

cstratton
 
Posts: 294
Joined: Wed Sep 29, 2010 3:52 pm

Please be positive and constructive with your questions and comments.