Zach Eveland
ee611dc194
Revert "Revert "added a short delay and comment to boolean operator in CDC""
...
This reverts commit 200eefb4e2ac7796c5c901e8fd9369c85ec544c5.
2012-04-06 21:23:17 -04:00
Federico Vanzati
02c5849501
Revert "added a short delay and comment to boolean operator in CDC"
...
This reverts commit ade4893f585e3e94fa6cf683620e1d12afc88ecd.
2012-04-06 17:36:09 +02:00
Zach Eveland
dd55096901
added a short delay and comment to boolean operator in CDC
...
Delay fixes problem where the port has been configured but not quite opened. Federico found that 10 ms was the minimum time needed to avoid problems.
2012-04-03 10:52:38 -04:00
Zach Eveland
a984b581a8
added Boolean operators to HardwareSerial and CDC to test whether the port is ready to send data.
...
Mostly useful for Leonardo - simple way to test whether the port is actually opened by an application and ready to receive data. For Serial objects attached to real UARTs always returns true.
2012-04-01 12:54:35 -04:00
Thibaut VIARD
da1a7d4c67
[sam] prelimanary work on USB Device stack
2012-03-29 21:11:05 +02:00
Zach Eveland
1534b2b730
fixed logic error in Keyboard.release() - now removes every occurrence of a key if it's present more than once
2012-03-28 19:46:32 -04:00
Zach Eveland
83feb14013
removed horrible multi-key Keyboard.press() and Keyboard.release() methods
...
Saves 924 bytes of Flash
2012-03-28 18:46:10 -04:00
Zach Eveland
d3eabc9c01
eliminated Keyboard.type() - unnecessary duplication of Keyboard.write() (David Mellis). Also edit KeyboardReprogram example which was the only example using type()
2012-03-28 18:35:26 -04:00
Zach Eveland
58c36f76d5
added methods to Keyboard to handle multiple simultaneous key presses or releases (up to six each)
2012-03-26 17:28:02 -04:00
Zach Eveland
f646c9186d
Keyboard.type() now just presses and releases the key indicated - doesn't releaseAll()
2012-03-26 17:00:16 -04:00
Zach Eveland
9c040a8a2b
added stub methods for begin() and end() to Mouse and Keyboard
2012-03-26 16:02:40 -04:00
Zach Eveland
dbdf2dadfa
Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloader
2012-03-24 09:30:17 -04:00
David A. Mellis
9a8976ce56
Putting ArduinoISP back to 19200 baud.
...
From 9600. And lowering the delay in the heartbeat from 40 to 20,
which seems to fix things again.
2012-03-15 19:02:08 -04:00
Zach Eveland
8c618773b5
reduced delay before starting the Leonardo bootloader
...
Since we use a magic RAM flag to signal to the bootloader there's a risk of the sketch overwriting the magic RAM location before the bootloader starts. By reducing the watchdog timeout we reduce the chance of this happening.
2012-03-14 18:17:22 -04:00
Zach Eveland
083f7c8891
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
cd0db83a66
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
75da79ad76
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
53e51de832
removed old version of Leonardo's caterina bootloader, replaced with LUFA-based caterina
2012-03-08 13:47:42 -05:00
Cristian Maglie
b407337677
Fix for some strange behaviours during board reset
2012-03-07 16:21:04 +01:00
Zach Eveland
1566006871
Added Keyboard support for all modifier and all common non-printing keys.
2012-03-03 23:37:39 -05:00
Zach Eveland
54fb0bf3f5
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
fbea67532a
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
74863e4bdf
Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloader
...
Conflicts:
.gitignore
2012-03-03 13:28:39 -05:00
Zach Eveland
8f5869009c
fixed minor compilation warnings for Leonardo
2012-03-03 13:26:57 -05:00
David A. Mellis
4fade7007f
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
351817af47
reduced Caterina timeout to 8 seconds from 16
2012-03-01 08:51:47 -05:00
Zach Eveland
c8ca7f9636
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
569b573d30
Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloader
2012-03-01 08:32:21 -05:00
David A. Mellis
0c00db7809
Switching Mini w/ ATmega328 upload protocol from stk500 to arduino.
2012-02-29 17:25:46 -05:00
Cristian Maglie
73066a4ca2
Autoreset 1200 bps fix.
2012-02-27 17:41:38 +01:00
Zach Eveland
0138ee9b01
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
66019a7550
Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloader
2012-02-22 15:19:32 -05:00
Zach Eveland
7948125208
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
19c44dd5fd
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
b28e6c2f9c
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
924e5a4846
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
ac3aca0acf
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
a7afdf40ba
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
35bbf80ba9
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
3191583476
changed Caterina descriptors - Arduino LLC VID, new PID, manufacturer string, and serial number
2012-02-07 23:52:55 -05:00
Zach Eveland
12e2af9cd7
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
e720ffb81d
increased Leonardo bootloader timeout to 16 seconds
2012-02-06 15:23:41 -05:00
Cristian Maglie
8581ce0530
Upload size computation is now parametric
2012-02-06 00:51:24 +01:00
Cristian Maglie
f6d2a612ab
Upload/Program with configurable generic command line tools (wip)
2012-02-05 23:17:15 +01:00
Zach Eveland
4544fb1a1f
proper bootloader timeout and LED control in Leonardo bootloader
2012-02-03 23:15:04 -05:00
Zach Eveland
d7b0507e8a
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
c7df908cec
modify boards.txt with new settings for Caterina_LUFA
2012-02-03 20:24:24 -05:00
Zach Eveland
a794f295e0
Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloader
2012-02-03 19:54:33 -05:00
David A. Mellis
e1438efb3a
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
Cristian Maglie
5c57cbab0c
First attemp to generalize upload for mutiplatform IDE
2012-02-01 14:34:29 +01:00