Electronic – arduino – write a bootloader to Atmega using serial port

arduinoatmegabootloader

There is a really grand price difference between an empty Atmega328 chip and the one with the Arduino bootloader installed. In my country, this difference is 1:3. This means that uploading bootloader manually would save me a lot of money, while this operation takes about 5 minutes altogether.
I've heard (but not read) about the possibility to make an Arduino upload the bootloader on another Atmega. This has at least 2 disadvantages:

  1. You need to have one Arduino first.
  2. You must turn that arduino into programing device – so you cannot have fun with it.
  3. The process will be hard to control until some advanced techniques are implemented (control leds, start button)

I own a few old PCs with standard real serial port and I also have a USB to serial converter.

  • Is there any chance to create a little PCB that connects dirrectly to
    a PC and would serve to upload the bootloader to the chip?
  • Is it thinkable for me, to create an application for this in C++?
    (I'm a begginer, but I don't give up fast) Or does it already exist?
  • Could you please provide links to any tutorials concerning this
    matter?

Best Answer

The answer is that it's very easy to bootload your Arduino directly from your computer, just using a simple USB to serial interface. When I bootloaded my own Arduino for a Reprap, I used a USBTinyISP to connect to the Arduino (it requires a bit of circuit, but it's not much) and then used AVRDUDE to upload the bootloader directly to the Arduino. It's obviously not the only way, but it's one which has worked for me in the past, and which is much cheaper than using another Arduino.