aboutsummaryrefslogtreecommitdiff
path: root/bootloaders/optiboot/README.TXT
diff options
context:
space:
mode:
authorWestfW <westfw@gmail.com>2011-06-13 19:07:07 -0700
committerDavid A. Mellis <d.mellis@arduino.cc>2011-10-10 12:11:16 -0400
commit0d9377c729d3dfe4719bab1631587bfc5d444b60 (patch)
treefdf18f6c101c39d58d9936e38a415fe28053d7d9 /bootloaders/optiboot/README.TXT
parente74e76ce14724fc3ea0a49e291de9b707825a576 (diff)
http://code.google.com/p/arduino/issues/detail?id=368
Optiboot does not support ArduinoasISP programmer. When avrdude runs and talks to an arduino running ArduinoISP, it needs the optiboot (entered due to auto-reset) to abort and start the ArduinoISP "application" when it sees communications at the wrong serial speed. Unfortunately, optiboot treats all unrecognized command characters as "no-ops" and responds/loops for more commands, leading to a nice loop that never gets to the sketch. This patch causes characters received with Framing errors (the most likely error for speed mis-matches) to NOT reset the watchdog timer (normally done in getch()), which will cause the application to start if it continues for "a while." (tested. Works! Running ArduinoISP at speeds as high as 57600 still causes the bootloader to start the sketch (although it fails later on for other reasons.)) (cherry picked from commit e81c1123b624b6cac7da018c9c786700f3152bc9)
Diffstat (limited to 'bootloaders/optiboot/README.TXT')
-rw-r--r--bootloaders/optiboot/README.TXT19
1 files changed, 17 insertions, 2 deletions
diff --git a/bootloaders/optiboot/README.TXT b/bootloaders/optiboot/README.TXT
index 9a68e23..7e2f46d 100644
--- a/bootloaders/optiboot/README.TXT
+++ b/bootloaders/optiboot/README.TXT
@@ -27,7 +27,7 @@ this may change if compiler versions drift apart between CrossPack and
the Arduino IDE.)
-Building optiboot in the arduino IDE install.
+Building Optiboot in the Arduino IDE Install.
Work in the .../hardware/arduino/bootloaders/optiboot/ and use the
"omake <targets>" command, which just generates a command that uses
@@ -44,7 +44,7 @@ the programs it needs, so you need to work in the existing optiboot
directory (or something created at the same "level") for it to work.
-Building optiboot in the arduino source development install.
+Building Optiboot in the Arduino Source Development Install.
In this case, there is no special shell script, and you're assumed to
have "make" installed somewhere in your path.
@@ -53,3 +53,18 @@ expected directory.
Work in Arduino/hardware/arduino/bootloaders/optiboot and use
make OS=windows ENV=arduinodev <targets>
or make OS=macosx ENV=arduinodev <targets>
+
+
+Programming Chips Using the _isp Targets
+
+The CPU targets have corresponding ISP targets that will actuall
+program the bootloader into a chip. "atmega328_isp" for the atmega328,
+for example. These will set the fuses and lock bits as appropriate as
+well as uploading the bootloader code.
+
+The makefiles default to using a USB programmer, but you can use
+a serial programmer like ArduinoISP by changing the appropriate
+variables when you invoke make:
+
+ make ISPTOOL=stk500v1 ISPPORT=/dev/tty.usbserial-A20e1eAN \
+ ISPSPEED=-b19200 atmega328_isp