Age | Commit message (Collapse) | Author |
|
|
|
Reset into bootloader is much snappier.
|
|
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.
|
|
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.
|
|
AvrdudeUploader class opens and closes Leonardo port at the magic baudrate before starting avrdude; reduced reset timeout from 250 ms to 15 ms
|
|
had to remove TIMER1 operation from bootloader - was interfering with normal sketch operation
|
|
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.
|
|
Interrupt-driven version was a dead-end - too many bugs with that approach.
|
|
old bootloader could fit in only 2 kB of flash. new version has to have a 4 kB block - jump-to address and boards.txt must reflect this.
|
|
attempts to fail. fixed bug in reboot routine, changed fuses to select 1024-word bootloader size, disabled hardware boot enable.
|
|
Windows. now reboots when a port, opened at 1200 bps, is closed.
|
|
arduino protocol for Leonardo avrdude upload.
|
|
USB_Send errors in CDC.
|
|
|
|
write behavior
|
|
support 300 bps connection, changed core and boards.txt to match
|
|
|
|
|
|
asserted, no matter what CDC baud rate is selected.
|
|
Integrated rest of Peter's USB implementation
|