ATmega8U2

I've seen that an ATmega8U2 is used in the Arduino uno board as USB to serial converter. Why we don't burn the ISP function in it?

We could use the B1 to B3 pins for make an ISP bus (the connector is yet availlable). This function could be used for burn the bootloader in a new AVR device or program other AVR devices.

Thanks,
Mimmo

this is a good question, the ATmega8U2 could be connected to the SPI bus of the ATmega328P, and just left floating until the right command comes along. This wouldn't interfere with backward compatibility or any devices at all.

I am not sure you have understood what I've told... :slight_smile:

I want to avoid to use an external programmer for burn the bootloader on Atmega328. Could we use the ATmega8u2 isp port for this function (as programmer master)?

Could we use the ATmega8u2 isp port for this function (as programmer master)?

Well the 8u2 certainly has enough I/O pins available and already has a usb connection to the PC, so it would just be a matter of a few wires and of course the real challenge would be the software changes/additions to the 8u2 firmware and the Arduino IDE. Not sure it would be something the Arduino team would be interested in taking on but some user contributor might get inspired to take on such a challenge.

Lefty

I am not sure you have understood what I've told...

I want to avoid to use an external programmer for burn the bootloader on Atmega328. Could we use the ATmega8u2 isp port for this function (as programmer master)?

I did understand, the ISP port is the SPI bus

You can activate the bootload on the ATmega8U2, load code from http://www.fourwalledcubicle.com/AVRISP.php on there (you'll need to modify it slightly I think), and then wire up the ISP headers

While it would have been theoretically possible to put, say, ArduinoISP in the 8u and program the 328 "natively", that is not how things are wired up. It might also interfere with the "transparency" of the serial connection from PC to 328...

You can probably do something interesting by putting a jumper cable between the 8u ISP connector and te 328 ISP connector. Several interesting possibilities, in fact...

I've seen that an ATmega8U2 is used in the Arduino uno board as USB to serial converter. Why we don't burn the ISP function in it?

We could use the B1 to B3 pins for make an ISP bus (the connector is yet availlable). This function could be used for burn the bootloader in a new AVR device or program other AVR devices.

Great idea, mimmo. This approach is not only save bootloader space and but also fast flashing speed then plus save rs232 communication and save Tx, Rx pins if we don't use it too. I love Arduino because of these essential features:

  1. No need external power (via USB)
  2. No need external components for rs232 communication via PC
  3. No need to press reset button after flashing in some cases
  4. No need external programmer

But the question is that is it possible to use ATmega8U2 as both ISP programmer and rs232 comm? If we use ATmega8U2 as ISP programmer, it would be great if we put series resistors between ISP lines of both MCU like Buttload ISP of AVR Buttery Four Walled Cubicle - ButtLoad

Regards,
pak

Great idea, mimmo. This approach is not only save bootloader space and but also fast flashing speed then plus save rs232 communication and save Tx, Rx pins if we don't use it too. I love Arduino because of these essential features:

How would that co-exist with existing RX/TX/RESET programming hardware and USB-less boards like the lilypad and mini though? You'd still need the current bootloader to support these and standalone boards...