aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-02-14Leonardo now checks whether bootloader should be run after a WDT event.Zach Eveland
Before the sketch initiates an auto-reset for upload it pokes a magic word into a specific RAM address. On starting the bootloader checks this address. If it finds the magic word it knows the bootloader code should run. If not it jumps straight back to sketch. Test in a sketch by adding to setup(): wdt_enable(WDTO_2S); Sketch should upload, start, run for two seconds, WDT, and sketch should restart (not bootloader). Had to cut out unused descriptor code to make the bootloader still fit in 4k.
2012-02-14Changed Leonardo fuses to select longer clock startup time.Zach Eveland
Done with the aim of discriminating more reliably between reset sources.
2012-02-14Leonardo bootloader jumps straight to sketch for a power-on reset.Zach Eveland
Disconnect programmer after burning bootloader to get the full effect. ICSP and JTAG programmers do a hardware reset after any reset condition, confusing the firmware a little.
2012-02-13Leonardo auto-reset-and-upload changes for Windows (explanation below)Zach Eveland
On Windows COM port changes when board switched between bootloader and sketch. No way to prevent this so now Windows users have to select the upload port separate from the comm port. Also, handling of reset into bootloader was broken on Windows. Would occasionally leave the original COM port completely unusable. Changed the way this reset is initiated. Finally, had to add upload.disable.flushing=true flag to boards.txt so IDE wouldn't try to flush the original COM port after it disappeared.
2012-02-13changed Leonardo bootloader and sketch PID values again (now 0x0701 for ↵Zach Eveland
bootloader, 0x0801 for sketch)
2012-02-12prog_char -> char PROGMEM in Print.cppDavid A. Mellis
http://code.google.com/p/arduino/issues/detail?id=795
2012-02-08adjusting descriptors - trying to prevent sketch and bootloader from ↵Zach Eveland
grabbing different COM numbers on Windows
2012-02-07changed Caterina descriptors - Arduino LLC VID, new PID, manufacturer ↵Zach Eveland
string, and serial number
2012-02-07fixed bug in Caterina which caused some programming instructions to failZach Eveland
Timer 1 interrupts were trashing self-programming timing. Now disable Timer 1 compare match before doing Flash tasks and reenable afterward.
2012-02-06increased Leonardo bootloader timeout to 16 secondsZach Eveland
2012-02-03proper bootloader timeout and LED control in Leonardo bootloaderZach Eveland
2012-02-03fixed starting Leonardo bootloader from sketchZach Eveland
AvrdudeUploader class opens and closes Leonardo port at the magic baudrate before starting avrdude; reduced reset timeout from 250 ms to 15 ms
2012-02-03modify boards.txt with new settings for Caterina_LUFAZach Eveland
2012-02-03Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloaderZach Eveland
2012-02-03Making head and tail unsigned to avoid division in serial ISR.David A. Mellis
http://code.google.com/p/arduino/issues/detail?id=776
2012-01-24Caterina now cleanly hands off operation to the sketchZach Eveland
had to remove TIMER1 operation from bootloader - was interfering with normal sketch operation
2012-01-21move interrupt vector table to application section before jumping to it ↵Zach Eveland
after upload finished.
2012-01-21Leonardo bootloader checks reason for reset and jumps immediately to sketch ↵Zach Eveland
if reset was caused by WDT
2012-01-19stripped all LUFA LED control. from LUFA-based CaterinaZach Eveland
2012-01-19changed fuses to select 4k bootloader for LUFA-based CaterinaZach Eveland
2012-01-19added Board/LEDs.h to LUFA-based CaterinaZach Eveland
2012-01-19superficial changes to stock LUFA CDC bootloader - renamed project, removed ↵Zach Eveland
unnecessary files
2012-01-19initial checkin of LUFA 111009 CDC bootloaderZach Eveland
2012-01-10made Leonardo and Micro bootloader PIDs same as sketch PIDsZach Eveland
2012-01-10restored composite and non-composite device descriptors (removed in ↵Zach Eveland
4b05c3fc7529477fb7031d42103c15b50a6b58be) Windows wants to see both types of device descriptors.
2012-01-10reenabled HID to force Leonardo bootloader to enumerate as a composite deviceZach Eveland
2012-01-10renamed DiskLoader to Caterina (after Leonardo's mom)Zach Eveland
2012-01-10changed USB PID for Leonardo and Micro bootloadersZach Eveland
sketch and bootloader will use different PIDs to distinguish one from the other.
2012-01-10fixed warning when comparing pgm_read_word(0) to -1 (thanks, Limor Fried and ↵Zach Eveland
Phillip Torrone)
2012-01-10got rid of u8, u16, u32 typedefs in DiskloaderZach Eveland
done to bring types in line with others in Arduino core
2012-01-10made the bootloader's LED control macro names less offensiveZach Eveland
TX_LED_OFF() instead of TXLED0, etc.
2012-01-10added conditional compilation for HID, removed conditional compilation for ↵Zach Eveland
CDC (is always used). disabled HID by default. also always enumerates as composite now. the bootloader must always have a CDC interface. HID is optional and not even complete to reduce size.
2012-01-10fix bug in handling of long descriptors for bootloader USB (thank you, Todd ↵Zach Eveland
Krein, Limor Fried, and Phillip Torrone) descriptors longer than 255 bytes were being shortened, causing problems with enumeration under Windows
2012-01-10Merge branch 'master' of github.com:arduino/Arduino into new-extensionZach Eveland
2012-01-04Adding links to documentation of boards.txt and programmers.txt files.David A. Mellis
2012-01-02Adding INPUT_PULLUP option pinMode(). (Paul Stoffregen).David A. Mellis
This also changes pinMode(pin, INPUT); to explicitly disable the pull-up resistor, even if it was previously set. http://code.google.com/p/arduino/issues/detail?id=246
2012-01-02Fixing findUntil() problem with repeated initial characters. (Jeffery.zksun)David A. Mellis
http://code.google.com/p/arduino/issues/detail?id=768
2012-01-02Fixing warnings (unsigned comparisons to 0). (maniacbug)David A. Mellis
2012-01-02Fixing static is not at beginning of declaration warnings (maniacbug).David A. Mellis
2011-12-31reset the Leonardo board when leaving the bootloader, before starting the sketchZach Eveland
Done so all IO and other registers are properly reinitialized when a new sketch is uploaded or when an existing sketch is started. Uses a watchdog timeout with a 15 ms period to accomplish the reset. Bootloader checks the reason for reset and only enumerates as bootloader and enters the programming loop if reset was NOT caused by WDT.
2011-12-31Merge branch 'master' of github.com:arduino/Arduino into new-extensionZach Eveland
2011-12-30Simplifying microseconds <-> clock cycles conversions. (Rob Tillaart)David A. Mellis
This should fix problems with overflows in pulseIn(). It may make millis() slightly less precise for clock speeds that aren't multiple of 1 million, but we don't really support those anyway. http://code.google.com/p/arduino/issues/detail?id=675
2011-12-28Fixing ArduinoISP sketch by lowering baud rate to 9600 (from 19200).David A. Mellis
http://code.google.com/p/arduino/issues/detail?id=661
2011-12-26bootloader merged with blink sketchZach Eveland
full set of descriptors in sketch fixes driver installation issue on Win7.
2011-12-20changed Keyboard write() method to type(). Made write() an alias for type() ↵Zach Eveland
to allow subclassing by Stream.
2011-12-20Revert "changed Keyboard write() method to type(). Made write() an alias ↵Zach Eveland
for type() to allow subclassing by Stream." This reverts commit de1d5fc0cb82874c0dcb766c5fb27ab36c5cb32c.
2011-12-20changed Keyboard write() method to type(). Made write() an alias for type() ↵Zach Eveland
to allow subclassing by Stream.
2011-12-19fixed attachInterrupt() on LeonardoZach Eveland
had to define a separate block for the 32U4 since it looks like a Mega-series board based on a simple register trick. Only two useable HW interrupts though, compared to the Megas' 8, and numbering differs.
2011-12-18added asynchronous buffering of received CDC charactersZach Eveland
This fixes the issue Federico reported where bytes written by host but not read by sketch would cause serial connection to lock up. Ring buffer implementation is based on HardwareSerial.cpp. Adds public accept() method to CDC.
2011-12-18fixed digitalWrite on timer 4 pins (D6 and D13)Zach Eveland