1

Atmega328 is available in market in two versions - With and without bootloader. All prefer the one with bootloader. What will be the advantages/disadvantages of Atmega328 without bootloader ? I read that bootloader should be present in a controller for ease of programming. But I am not sure how it eases programming.

Meenie Leis
  • 2,752
  • 11
  • 28
  • 1
    If you need the code space, and don't need to update firmware without a programmer, pick the one without a bootloader. – Ron Beyer Dec 29 '17 at 16:47
  • 3
    *"All prefer the one with bootloader"*. Seriously!? That is very unlikely. – Olin Lathrop Dec 29 '17 at 16:47
  • 1
    If you dont know what a bootloader is, then you need one to flash program via USB serial port. Otherwise SPI port is more complex setup. – Tony Stewart EE75 Dec 29 '17 at 16:50
  • 1
    to quickly and easily program and save lot of time !! – Mitu Raj Dec 29 '17 at 16:51
  • 1
    See also https://electronics.stackexchange.com/q/27486/4512. – Olin Lathrop Dec 29 '17 at 16:53
  • 1
    Thanks for accepting my answer, but it's usually good to wait 24 hours or so. That gives people all around the world a chance to answer the question. Once a answer is accepted, many people will skip the question altogether, and you'll never know what they might have said. – Olin Lathrop Dec 29 '17 at 17:07
  • By ''All'' I actually meant my classmates :D . Btw really informative comments and answers. Thank you ! :-) – Meenie Leis Dec 29 '17 at 17:08
  • I accepted "marked as duplicate". So I think no more answers are possible under this post. So no probs.@Olin – Meenie Leis Dec 29 '17 at 17:10

3 Answers3

3

A bootloader lets you get your program into the chip without a separate physical programmer. The bootloader has to be written to work with particular hardware, like a board that brings UART connections out to a serial port, for example.

To use the bootloader, you have to run a specific program on the host computer. This program reads the HEX file with the code you want to program into the part, then communicates over the interface provided by the hardware and using the protocol specified by the bootloader.

The advantage of this is that if you have the right hardware, you don't need a physical programmer. The disadvantage is that programming the bootloader into the part is a extra step in manufacturing, so the part costs more.

For the vast majority of parts sold, the bootloader is of no value. Some production jig will program the parts. For any serious development, there will be a programmer/debugger available, so again the bootloader is useless.

The part with bootloader is aimed at hobbyists with arduinos or hardware compatible enough with them for the bootloader to work.

Olin Lathrop
  • 310,974
  • 36
  • 428
  • 915
2

Neither with or without bootloader is 'easier'. The bootloader is specific to your development environment, so it's your choice here that defines 'easier'.
If you are using an Arduino environment, then it simplifies initial use of a 'blank' (application) device, though may be complicated if you are using the device without a serial-USB controller.

If you are using Atmel's development environment, then you don't need a bootloader, you simply need the USB-SPI hardware programmer.

Choose whichever is easier for you.

Jack Creasey
  • 21,428
  • 2
  • 15
  • 29
1

It allows you to program it via a simple serial connection (assuming the Arduino bootloader) instead of a more complicated low voltage spi or specialized high voltage programmer.

Passerby
  • 72,580
  • 7
  • 90
  • 202