Pages: [1]   Go Down
Author Topic: Understanding Arduino Bootloader  (Read 573 times)
0 Members and 1 Guest are viewing this topic.
Bangalore, India
Offline Offline
Jr. Member
**
Karma: 0
Posts: 61
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I have some questions about the Arduino Bootloader. Hope someone can help me understand it better.

I did some research on it and following are my current understanding. Let me know if anyone of them is not true.

- To program any AVR (or any Microcontroller) you need an external hardware called programmer. But bootloader solves this problem in Arduino, by not requiring the programmer.
- When the chip (with a bootloader) is powered on (or reset), it waits for sometime to see if there is a any new code. If not it continues to load the old code present in the chip
- You can also use a working Arduino as a programmer to program other AVR chips.

Now my questions regarding the bootloader

- If I am always going to use an Arduino as a programmer to (re)program my new AVR chip, do I still need to burn the bootloader into the new chip?
- Can I burn the bootloader into non-Arduino AVR chips like AtMega 16A or ATTiny 85?
Logged

Checkout some of my Arduino projects and tutorials

Global Moderator
Boston area, metrowest
Offline Offline
Brattain Member
*****
Karma: 436
Posts: 23623
Author of "Arduino for Teens". Available for Design & Build services. Now with Unlimited Eagle board sizes!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

More or less correct.
With a programmer, you can: load a sketch that will start immediately after a reset; or you can load a bootloader that watches for serial communication and performs self-programming, and if no serial comm occurs then the bootloader starts the sketch.

Arduino can be loaded with a programmer sketch to load other parts per the above.

New chip does not need a bootloader, it can be programmed with a sketch. Select File:Upload Using Programmer.
(have not tried that personnally, I have a standalone programmer (several actually), less wires to mess with).
Check www.avr-developers.com to see if cores & bootloaders exist for the other chips if you do not see the chips listed as being used on an existing board type.
Logged

Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

Bangalore, India
Offline Offline
Jr. Member
**
Karma: 0
Posts: 61
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

More or less correct.
With a programmer, you can: load a sketch that will start immediately after a reset; or you can load a bootloader that watches for serial communication and performs self-programming, and if no serial comm occurs then the bootloader starts the sketch.

Arduino can be loaded with a programmer sketch to load other parts per the above.

New chip does not need a bootloader, it can be programmed with a sketch. Select File:Upload Using Programmer.
(have not tried that personnally, I have a standalone programmer (several actually), less wires to mess with).

Thanks for confirming.

Check www.avr-developers.com to see if cores & bootloaders exist for the other chips if you do not see the chips listed as being used on an existing board type.

I checked out the site, but it seems that it was last modified for Arduino 0020. So I guess it may not be compatible with the latest IDE. Let me see if I can update it to the latest Arduino version.
Logged

Checkout some of my Arduino projects and tutorials

Offline Offline
Full Member
***
Karma: 0
Posts: 182
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

If you'll use other chips like attiny and other atmega i suggest you to program it directly from arduino with the .hex file using a GUI like avrdudegui or other and bypassing the bootloader so you could have more space in the flash memory
Hi niko
(sorry for my English but I'm Italian) smiley-mr-green
Logged

Non possiamo pretendere che le cose cambino, se continuiamo a fare le stesse cose(albert Einstein )

Pages: [1]   Go Up
Jump to: