Go Down

Topic: Who do Arduinos with USB microcontrollers need a separate USB chip to program? (Read 980 times) previous topic - next topic


I can understand why the Arduino Uno R3 (ATMega328P) and Arduino Mega (ATMega2560) need a separate USB chip to allow for programming and I get why Atmel is now used instead of FTDI.  What I don't understand is why boards like Arduino Leonardo (ATMega32U4) and Arduino Due (ATSAM3X8) need another Atmel chip to run the USB, both of these microcontrollers are USB capable.  The Leonardo, in fact, has two ATMega32U4s, one as the main controller and one as the USB bridge.  What is the limitation that requires that the bootloader run off of a separate USB bridge instead of the local one?

Just wondering.  Thank you.
I will never ask you to do anything that I wouldn't do myself.


Hmm, hmm, hmm.. Do you want to re-check the schematics of the leonardo for me? I'm not blaming you, one can get confused seeing that there are two atmega32u4 IC's in the schematics. The reason is that the schematics are for the two different packages of the atmega32u4. Meaning that you can use the schematic with either the AU (TQFP) package or the MU (VQFN) package [http://www.atmel.com/devices/atmega32u4.aspx].. The leonardo is a fully one uC board (meaning that one atmega32u4 is used both for the programming (USB) and running the sketch...

The DUE is a bit more complicated, it's true that the atsam3x8e has USB and can be programmed through the native usb port without the need for a second uC. The reason for the use of the second uC is the "erasing before flashing". If you program the board through the native port then a "software" erase will be performed before the actual flashing. In some cases the software erase will fail which in turn can have many consequences.. By using the second uC, a hardware erase is triggered before flashing.. Which is clearly more secure/robust than the software one..



I will never ask you to do anything that I wouldn't do myself.

Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131