aboutsummaryrefslogtreecommitdiff
path: root/bootloaders
AgeCommit message (Collapse)Author
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
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-26bootloader merged with blink sketchZach Eveland
full set of descriptors in sketch fixes driver installation issue on Win7.
2011-11-25Correcting Arduino Mini w/ ATmega328 bootloader file and fuses (untested).David A. Mellis
2011-11-16Leonardo bootloader now sends iSerial string during enumeration. Seems to ↵Zach Eveland
satisfy Windows' composite device requirements.
2011-11-09restored original non-interrupt-driven DiskLoaderZach Eveland
Interrupt-driven version was a dead-end - too many bugs with that approach.
2011-10-31changed Leonardo PID to 0x0032 for Diskloader testing. updated .inf to match.Zach Eveland
2011-10-31check to see if a sketch has been loaded before jumping out of bootloaderZach Eveland
2011-10-27Revert "Merge branch 'master' of github.com:arduino/Arduino into ↵Zach Eveland
diskloader_reboot" This reverts commit df9835efafd13685251749bc210c0b96a18a96a5, reversing changes made to ec45af8bfa9222a807c075dd1db4b5aa798bba03. Conflicts: hardware/arduino/variants/mega/pins_arduino.h libraries/Ethernet/examples/PachubeClientString/PachubeClientString.ino
2011-10-27bootloader runs sketch after timeout, added bootloader LED breathingZach Eveland
2011-10-27cosmetic changes - remove old comments, unused codeZach Eveland
2011-10-27removed conditional compilation checks for CDC_ENABLEDZach Eveland
bootloader must always have CDC enabled
2011-10-27removed old comments and unused USB core codeZach Eveland
2011-10-27brought nuevo_diskloader changes over to diskloaderZach Eveland
Moved nuevo_diskloader files into diskloader directory. Changed back to real PID for Leonardo
2011-10-27Merge branch 'master' of github.com:arduino/Arduino into diskloader_rebootZach Eveland
Conflicts: app/src/processing/app/Editor.java app/src/processing/app/Sketch.java build/shared/examples/4.Communication/SerialCallResponse/SerialCallResponse.pde build/shared/lib/theme/theme.txt hardware/arduino/cores/arduino/HardwareSerial.h hardware/arduino/cores/arduino/Print.cpp hardware/arduino/cores/arduino/WString.h hardware/arduino/variants/mega/pins_arduino.h libraries/Ethernet/examples/PachubeClient/PachubeClient.ino libraries/Ethernet/examples/PachubeClientString/PachubeClientString.ino libraries/Firmata/examples/EchoString/EchoString.ino libraries/SD/File.cpp libraries/SoftwareSerial/SoftwareSerial.cpp libraries/SoftwareSerial/SoftwareSerial.h libraries/SoftwareSerial/examples/SoftwareSerialExample/SoftwareSerialExample.ino libraries/SoftwareSerial/keywords.txt
2011-10-26working bootloader. had to move interrupts back to application section. ↵Zach Eveland
NOTE: need to have sketch CDC jump to appropriate place for bootloader - 4k from end instead of 2k
2011-10-26working (?!?!?!) bootloader. doesn't yet restart chip after upload completes.Zach Eveland
2011-10-26uploading now completes using RC2 on Win7Zach Eveland
2011-10-25closer still - now up to 4680Zach Eveland
2011-10-25progress on bootloader bug - have implemented blocking USB_Recv. avrdude ↵Zach Eveland
makes it to flash programming address 0400 or so before hanging
2011-10-24fixed logic bug in waiting for synch. stripped out all Serial stuffZach Eveland
2011-10-24removed old commentsZach Eveland
2011-10-23bootloader responds properly now. nearly there - still have an issue with ↵Zach Eveland
it falling out of sync after completing most operations
2011-10-21more attempts to get parameter sending to workZach Eveland
2011-10-21some progress on responding to parameter requestsZach Eveland
2011-10-21avrdude communication starting to work - responds to sync, fails when trying ↵Zach Eveland
to respond to STK_GET_PARAMETER
2011-10-21continuing to port programming code. temporarily changed PID to test on ↵Zach Eveland
Windows (it works)
2011-10-21starting to port bootloader programming code - testing as I goZach Eveland
2011-10-21added and modified Program() routineZach Eveland
2011-10-21cleaning up code and comments in main - getting rid of leftover stuff from ↵Zach Eveland
experiments
2011-10-21Enumerates! used inline ASM for operation which moves interrupts to boot ↵Zach Eveland
section
2011-10-21can now enable interrupts but EORSTE or SOFE in USB_::attach() still cause ↵Zach Eveland
bootloader to hang
2011-10-21added more USB source adapted from sketch core. still not enumerating.Zach Eveland
2011-10-21initial commit of new Diskloader-based bootloader experimentZach Eveland
2011-10-10Explicitly set the SHELL variable when OS=windows, so that we'll useWestfW
the same shell regardless of whether other shells are installed (different shells have different behavior WRT directory component separators, so this matters. http://code.google.com/p/arduino/issues/detail?id=667 ) (cherry picked from commit fc8cacb9a3b7c1d9cf96ae9891c7c3cd21f3c181)
2011-10-10Oops. Add atmega8.lst/hex and atmega168.lst/hex to controlled files.WestfW
(cherry picked from commit c56a1293d70d27531b7351edc3aa4c11b4a6996b)
2011-10-10Allow the READ PARAMETER command to return our version number.WestfW
(significant size impact: 14 bytes!) Initialized "address" to eliminate compiler warning (4 bytes!) Add "atmega168" as a more accurate target name than "diecimila" (keep diecimila as well for backward compatibility) Reduce the .hex and .lst targets that are stored in source control to the three basics: atmega8, atmega168, atmega328. The other targets remain in the makefile and makeall, but will need to be built from source if wanted. Which should be less of a problem now that the source is buildable without installing crosspack. (cherry picked from commit 7b1ee0f1b0192143fffbbed66dc046b6568f4386)
2011-10-10http://code.google.com/p/arduino/issues/detail?id=368WestfW
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)