aboutsummaryrefslogtreecommitdiff
path: root/bootloaders/optiboot/pin_defs.h
diff options
context:
space:
mode:
authorWestfW <westfw@gmail.com>2011-06-13 19:07:07 -0700
committerWestfW <westfw@gmail.com>2011-06-13 19:07:07 -0700
commita0d00b4d86cfbd5cb508eda69997175fab39e725 (patch)
tree2f8874a64eb917eecf6e8c92da5d2b9b05fbb0cb /bootloaders/optiboot/pin_defs.h
parent5c27dd97a0df974fa7f42b08d8eba6bf1fd50cb8 (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.))
Diffstat (limited to 'bootloaders/optiboot/pin_defs.h')
-rw-r--r--bootloaders/optiboot/pin_defs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/bootloaders/optiboot/pin_defs.h b/bootloaders/optiboot/pin_defs.h
index 313e453..27d7772 100644
--- a/bootloaders/optiboot/pin_defs.h
+++ b/bootloaders/optiboot/pin_defs.h
@@ -21,6 +21,7 @@
#define UDR0 UDR
#define UDRE0 UDRE
#define RXC0 RXC
+ #define FE0 FE
#define TIFR1 TIFR
#define WDTCSR WDTCR
#endif