Commit Graph

140 Commits

Author SHA1 Message Date
Cristian Maglie f8ad1bc075 Fixed permissions 2013-03-07 22:12:28 +01:00
Cristian Maglie 8fa7d94a45 Mega2560 bootloader: use avr library functions for writing into EEPROM 2013-03-07 22:09:41 +01:00
Cristian Maglie 1066766bfa Mega2560 bootloader: fix wrong eeprom addressing 2013-03-07 22:00:26 +01:00
Cristian Maglie 06ee62afc6 Fixed compile problems with avr gcc 4.6.2 (crosspack CrossPack-AVR-20121207.dmg) 2012-12-22 19:31:03 +01:00
Cristian Maglie 7625c33fcd Saved old production firmware for Mega2560 2012-12-22 19:25:20 +01:00
Cristian Maglie 8e1f62667b Added patch to bootloader for Mega2560. (Mark Sproul)
See #181 #392 #505 #543 #544
2012-12-22 19:20:42 +01:00
Cristian Maglie 2b66d840b4 Fixed some firmware filenames 2012-12-10 10:35:19 +01:00
Cristian Maglie bc6836f266 Added Esplora precompiled firmware 2012-12-07 21:24:24 +01:00
Cristian Maglie 948a5c89e4 Added support for Arduino Esplora 2012-12-07 18:11:07 +01:00
Cristian Maglie 1ca95a7bda Updated firmware for atmega8 for new avr-gcc versions.
fixes #153
fixes #1122
2012-11-30 23:15:30 +01:00
Cristian Maglie ad93a18b85 Saved old Leonardo and Micro production firmware.
Rebuilt firmware for Micro.
Added pre-loaded Blink to new firmwares.
2012-11-30 16:34:04 +01:00
Kristian Lauszus ef6f1eb11d Improved Leonardo bootloader
The power-on reset detection didn't work properly, but has now been
fixed
2012-11-30 15:32:11 +01:00
Zachary Eveland d92a86f7b7 Caterina changes to support Micro. includes newly rebuilt version of the bootloader merged with Blink produced using 1.0.2 2012-11-23 16:09:32 -05:00
David A. Mellis 839b58c1ae Updating Micro bootloader firmware. 2012-11-02 17:45:57 -04:00
David A. Mellis f689991a59 Adding LilyPad Arduino USB. 2012-11-01 10:45:50 -04:00
David A. Mellis ac1c8f921b Adding Micro. 2012-10-27 14:12:26 -04:00
Zach Eveland 2e575db249 changed PID values for Leonardo bootloader and sketch
done to avoid driver problems for users who installed the pre-release bootloader and driver
2012-04-25 15:56:18 -04:00
Zach Eveland bb9a4f89cc merged Caterina with Blink 2012-04-11 23:24:04 -04:00
Zach Eveland 7e235dbff8 fixed logic bug in Caterina that could stop the bootloader from entering self-programming mode 2012-04-11 23:19:05 -04:00
Zach Eveland d3a8e450ee Micro I hardly knew ye 2012-04-09 10:12:14 -04:00
Zach Eveland 3f6342e9bb Micro and Leonardo bootloaders for distribution are now merged with Blink sketch 2012-04-09 08:08:34 -04:00
Zach Eveland d02e4481d3 PID and VID are no longer hard-coded in bootloader. instead they are passed in at compile-time from makefile. also added and renamed built bootloader images for Micro and Leonardo 2012-04-09 08:03:56 -04:00
Zach Eveland a05a0d531b bugfix for Caterina not starting sketch if "verify upload" turned off in IDE.
Previously, if avrdude skipped the upload step the read while write memory might never be reenabled.  This would prevent the bootloader from ending and the sketch from starting - the bootloader just continued to run even after a successful upload.  Now enable RWW when we receive the AVR109 "Exit bootloader" 'E' command.  Had to disable lock bit changing support in the bootloader to free up flash for the change - will anyone miss it?
2012-03-14 17:48:11 -04:00
Zach Eveland 2a19c327bb changed Caterina timeout after self-programming to 500 ms (from 250 ms)
attempt to fix bug reported by Dave Mellis:
"avrdude: ser_close(): can’t reset attributes for device: Invalid argument"
is thrown after attempting an upload in the IDE (though the upload seems to be successful)
2012-03-14 17:07:14 -04:00
Zach Eveland 30421143f9 give Leonardo bootloader 250 ms to finish housekeeping before leaving self-programming mode
Earlier approach had bootloader end as soon as it was told to.  On Linux this caused problems with avrdude because the microcontroller never had a chance to send an acknowledgement.
2012-03-08 14:20:12 -05:00
Zach Eveland 33116711b0 removed old version of Leonardo's caterina bootloader, replaced with LUFA-based caterina 2012-03-08 13:47:42 -05:00
Zach Eveland 09aa8bd678 reduced Caterina timeout to 8 seconds from 16 2012-03-01 08:51:47 -05:00
Zach Eveland 4c3aa52258 Leonardo now checks whether bootloader should be run after a WDT event.
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-14 12:17:30 -05:00
Zach Eveland 52b0c7214b Leonardo bootloader jumps straight to sketch for a power-on reset.
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-14 09:59:48 -05:00
Zach Eveland 25a4fe8607 changed Leonardo bootloader and sketch PID values again (now 0x0701 for bootloader, 0x0801 for sketch) 2012-02-13 00:10:16 -05:00
Zach Eveland c39793001c adjusting descriptors - trying to prevent sketch and bootloader from grabbing different COM numbers on Windows 2012-02-08 01:16:56 -05:00
Zach Eveland 4ee57f12e9 changed Caterina descriptors - Arduino LLC VID, new PID, manufacturer string, and serial number 2012-02-07 23:52:55 -05:00
Zach Eveland 5d53eed01a fixed bug in Caterina which caused some programming instructions to fail
Timer 1 interrupts were trashing self-programming timing.  Now disable Timer 1 compare match before doing Flash tasks and reenable afterward.
2012-02-07 23:46:31 -05:00
Zach Eveland f2d5ea87ad increased Leonardo bootloader timeout to 16 seconds 2012-02-06 15:23:41 -05:00
Zach Eveland 5483adf8fe proper bootloader timeout and LED control in Leonardo bootloader 2012-02-03 23:15:04 -05:00
Zach Eveland 1303b6fbba Caterina now cleanly hands off operation to the sketch
had to remove TIMER1 operation from bootloader - was interfering with normal sketch operation
2012-01-24 18:04:10 -05:00
Zach Eveland 6498b66059 move interrupt vector table to application section before jumping to it after upload finished. 2012-01-21 16:51:55 -05:00
Zach Eveland 73f6f2edd5 Leonardo bootloader checks reason for reset and jumps immediately to sketch if reset was caused by WDT 2012-01-21 16:39:06 -05:00
Zach Eveland 371b72c681 stripped all LUFA LED control. from LUFA-based Caterina 2012-01-19 21:31:51 -05:00
Zach Eveland 83c9f21667 changed fuses to select 4k bootloader for LUFA-based Caterina 2012-01-19 21:18:07 -05:00
Zach Eveland db397d5b35 added Board/LEDs.h to LUFA-based Caterina 2012-01-19 21:17:12 -05:00
Zach Eveland 98b0491fbd superficial changes to stock LUFA CDC bootloader - renamed project, removed unnecessary files 2012-01-19 20:31:35 -05:00
Zach Eveland 9c0352b22a initial checkin of LUFA 111009 CDC bootloader 2012-01-19 20:04:55 -05:00
Zach Eveland 0fc76a6b87 made Leonardo and Micro bootloader PIDs same as sketch PIDs 2012-01-10 21:23:01 -05:00
Zach Eveland 2dfb0dce2c restored composite and non-composite device descriptors (removed in 4b05c3fc75)
Windows wants to see both types of device descriptors.
2012-01-10 20:52:57 -05:00
Zach Eveland 77b40e6bba reenabled HID to force Leonardo bootloader to enumerate as a composite device 2012-01-10 17:04:32 -05:00
Zach Eveland 932afb8428 renamed DiskLoader to Caterina (after Leonardo's mom) 2012-01-10 16:29:47 -05:00
Zach Eveland 99fea13f84 changed USB PID for Leonardo and Micro bootloaders
sketch and bootloader will use different PIDs to distinguish one from the other.
2012-01-10 16:09:56 -05:00
Zach Eveland 48ed974834 fixed warning when comparing pgm_read_word(0) to -1 (thanks, Limor Fried and Phillip Torrone) 2012-01-10 16:00:46 -05:00
Zach Eveland e3b89d178d got rid of u8, u16, u32 typedefs in Diskloader
done to bring types in line with others in Arduino core
2012-01-10 15:51:44 -05:00