1
0
mirror of https://github.com/arduino/Arduino.git synced 2024-12-11 22:24:13 +01:00
Commit Graph

368 Commits

Author SHA1 Message Date
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
Cristian Maglie
177746aa7f Fix for some strange behaviours during board reset 2012-03-07 16:21:04 +01:00
Zach Eveland
18f08bc7d4 Added Keyboard support for all modifier and all common non-printing keys. 2012-03-03 23:37:39 -05:00
Zach Eveland
aec3752e52 Removed support for key mapping in Keyboard.
Was no longer being used and would be damn near impossible to support with the new scheme for handling modifiers and non-printing keyboard characters.
2012-03-03 23:06:44 -05:00
Zach Eveland
db82ab90eb added Keyboard methods press(), release(), and releaseAll()
Changes mean that a single, persistent key report must be used so keys can be added or removed.  Also reimplemented type() using the new methods.
2012-03-03 22:54:45 -05:00
Zach Eveland
8a35793794 Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloader
Conflicts:
	.gitignore
2012-03-03 13:28:39 -05:00
Zach Eveland
7387db0673 fixed minor compilation warnings for Leonardo 2012-03-03 13:26:57 -05:00
David A. Mellis
f4f62f9a12 Small changes for the ATmega1284.
http://code.google.com/p/arduino/issues/detail?id=736
2012-03-02 18:58:53 -05:00
Zach Eveland
09aa8bd678 reduced Caterina timeout to 8 seconds from 16 2012-03-01 08:51:47 -05:00
Zach Eveland
93a47f884d changed auto-reset logic for Leonardo. only do WDT manipulation if the port is opened at 1200 bps. (Dave Mellis) 2012-03-01 08:51:16 -05:00
Zach Eveland
f505a3da4c Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloader 2012-03-01 08:32:21 -05:00
David A. Mellis
7ab140700b Switching Mini w/ ATmega328 upload protocol from stk500 to arduino. 2012-02-29 17:25:46 -05:00
Cristian Maglie
5eef4ca79c Autoreset 1200 bps fix. 2012-02-27 17:41:38 +01:00
Zach Eveland
ae23ed0570 shortened the watchdog period for resetting Leonardo from 2 s to 250 ms. Reset into bootloader is much snappier. 2012-02-22 22:33:44 -05:00
Zach Eveland
65ddc6c43b Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloader 2012-02-22 15:19:32 -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
94c09c2618 Changed Leonardo fuses to select longer clock startup time.
Done with the aim of discriminating more reliably between reset sources.
2012-02-14 10:00:55 -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
bab3c5eade Leonardo auto-reset-and-upload changes for Windows (explanation below)
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-13 00:56:06 -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
David A. Mellis
0acebeeff4 prog_char -> char PROGMEM in Print.cpp
http://code.google.com/p/arduino/issues/detail?id=795
2012-02-12 19:52:03 -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
1e0700b536 fixed starting Leonardo bootloader from sketch
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-03 21:42:46 -05:00
Zach Eveland
086ed6382c modify boards.txt with new settings for Caterina_LUFA 2012-02-03 20:24:24 -05:00
Zach Eveland
5eb7ad154b Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloader 2012-02-03 19:54:33 -05:00
David A. Mellis
915e4889e4 Making head and tail unsigned to avoid division in serial ISR.
http://code.google.com/p/arduino/issues/detail?id=776
2012-02-03 17:24:29 -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
Zach Eveland
f403b001a2 made the bootloader's LED control macro names less offensive
TX_LED_OFF() instead of TXLED0, etc.
2012-01-10 15:38:26 -05:00
Zach Eveland
4b05c3fc75 added conditional compilation for HID, removed conditional compilation for 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-10 15:31:56 -05:00
Zach Eveland
015044add5 fix bug in handling of long descriptors for bootloader USB (thank you, Todd Krein, Limor Fried, and Phillip Torrone)
descriptors longer than 255 bytes were being shortened, causing problems with enumeration under Windows
2012-01-10 14:25:40 -05:00
Zach Eveland
2622ad5580 Merge branch 'master' of github.com:arduino/Arduino into new-extension 2012-01-10 12:02:27 -05:00