Pages: [1]   Go Down
Author Topic: How to select (or get rid of) bootloader?  (Read 753 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 0
Posts: 11
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hello,

I've read http://arduino.cc/en/Tutorial/ArduinoISP (http://arduino.cc/en/Tutorial/ArduinoToBreadboard looks even more interesting) and I think this is a nice way to update your bootloader or even get rid of it. But there is one information I seem to be missing: How do I select _which_ bootloader to program or whether I want to program the sketch to start directly without a bootloader? The IDE doesn't seem to have a menu to choose the bootloader. What am I missing?
Logged

Left Coast, CA (USA)
Offline Offline
Brattain Member
*****
Karma: 361
Posts: 17293
Measurement changes behavior
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
The IDE doesn't seem to have a menu to choose the bootloader. What am I missing?

When burning a bootloader from the IDE I believe it just uses the tools/board selection menu you make to determine which bootloader to burn.

Lefty

Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 11
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I think I should have been more specific with my question. I was not about to select a standard bootloader for a specific board, but about to replace the bootloader by some patched bootloader (e.g. from Ladyada).

But I found it now: The board preferences are configured in hardware/arduino/boards.txt. This path/file is relative to hardware/arduino/bootloaders/, which contains the bootloaders in subdirectores.

There is no GUI to changes those values.

But the second question still remains: how do I burn a sketch so that it starts directly without a bootloader?
Logged

Offline Offline
Edison Member
*
Karma: 3
Posts: 1001
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
how do I burn a sketch so that it starts directly without a bootloader?
The basic concept is that the bootloader code is loaded into high memory and a configuration switch is set so that power on (or reset) starts at the high address (boot section) rather than low memory (sketch section). This is controlled by a series of microcontroller switches (fuses). To change these, you need an external programmer. To program a board through a programmer, you need a different "boards.txt" entry.

If you read yourself warm and fuzzy on "improved" bootloaders, you may want to know that many (if not all) of these improvements relate to ancient versions of the Arduino bootloader. I really don't think there is much to gain from messing with what you already have. Rather, get yourself a programmer and use that whenever a bootloader is not needed or desired.
« Last Edit: August 04, 2010, 07:04:59 am by borref » Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 11
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
This is controlled by a series of microcontroller switches (fuses). To change these, you need an external programmer.
Doesn't ArduinoISP count as an external programmer?

Quote
If you read yourself warm and fuzzy on "improved" bootloaders, you may want to know that many (if not all) of these improvements relate to ancient versions of the Arduino bootloader.

I tried to find out about which changes are already applied. But all "svn log" shows me is that something was merged from processing repository.
Logged

Western New York, USA
Offline Offline
Faraday Member
**
Karma: 35
Posts: 4299
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Doesn't ArduinoISP count as an external programmer?
No.  An external programmer is a piece of hardware that typically connects to the six pins labeled ICSP.

Don
Logged

Left Coast, CA (USA)
Offline Offline
Brattain Member
*****
Karma: 361
Posts: 17293
Measurement changes behavior
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
No.  An external programmer is a piece of hardware that typically connects to the six pins labeled ICSP.

Well as I understand it an Arduino board loaded and running with the ArduinoISP sketch is acting as an external programmer and attaches to the target chip using ICSP pins. AVRDUDE now includes a programmer named 'ArduinoISP' So I see no difference between a ArduinoISP and any other usb hardware programmer?

Lefty
Logged

Western New York, USA
Offline Offline
Faraday Member
**
Karma: 35
Posts: 4299
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Lefty:

You are correct,  I misread the question.  I didn't have my coffee this morning.

Don
Logged

Pages: [1]   Go Up
Jump to: