WestfW
ece29c3805
(make sure .hex and .lst are updated as well.)
2011-06-11 03:17:38 -07:00
WestfW
422398e08c
Fix errors in LDSECTIONS refactoring
...
(found during atmega8 testing.)
2011-06-11 03:15:33 -07:00
WestfW
e28b716f88
Update version to reflect previous edit. Sigh.
2011-06-10 23:16:21 -07:00
WestfW
6f7687b0f9
Shrink code by using registers for variables "length" and "address"
...
http://code.google.com/p/optiboot/issues/detail?id=33
Fix high-value watchdog timeouts on ATmega8
http://code.google.com/p/optiboot/issues/detail?id=38
Change "start app on bad commands" code to start the app via the
watchdog timer, so that the app is always started with the chip
in fully reset state.
http://code.google.com/p/optiboot/issues/detail?id=37
2011-06-10 23:02:25 -07:00
WestfW
00706284de
Add a version number to the optiboot source and binary.
...
http://code.google.com/p/arduino/issues/detail?id=554
end of flash memory where they can be read (at least in theory) by
device programmers, hex-file examination, or application programs.
This is done by putting the version number in a separate section
(".version"), and using linker/objcopy magic to locate that section as
appropriate for the target chip. (See
http://lists.gnu.org/archive/html/avr-gcc-list/2011-02/msg00016.html
for some discussion on the details.)
Start the version at 4.1 (the last "packaged" version of optiboot was
called version 3, so the "top of source" would be 4.0, and adding the
version number makes 4.1)
Refactor LDSECTION in the Makefile to LDSECTIONS so that multiple
section start addresses can be defined.
Change the _isp makefile definitions to make the bootloader section
readable (but not writable) by the application section. (This would
need to be done elsewhere as well to handle all bootloader programming
techniques. Notably Arduino's boards.txt
Note that this change does not change the "code" portion of optiboot
at all. The only diffs in the .hex files are the added version word
at the end of flash memory.
2011-06-10 17:47:47 -07:00
WestfW
d4632cb095
Update shell script makeall
2011-06-10 16:29:34 -07:00
WestfW
e2812ef91c
This is a relatively significant edit that brings the Arduino copy of
...
optiboot up-to-date with the optiboot source repository as of Jun-2011
(the last changes made in the optiboot repository were in Oct-2010)
This adds support for several plaforms, fixes the "30k bug", and
refactors the source to have separate stk500.h, boot.h, and pin_defs.h
These are the arduino opticode issues fixed:
http://code.google.com/p/arduino/issues/detail?id=380
optiboot has problems upload sketches bigger than 30 KB
http://code.google.com/p/arduino/issues/detail?id=556
update optiboot to the point of the latest optiboot project sources.
These are issues that had been solved in the optiboot source aready:
http://code.google.com/p/arduino/issues/detail?id=364
optiboot leaves timer1 configured when starting app, breaks PWM on
pin 9 and 10. (fixed with a workaround in arduino core.)
aka http://code.google.com/p/optiboot/source/detail?r=c778fbe72df6ac13ef730c25283358c3c970f73e
Support for ATmega8 and mega88.
Fix fuse settings for mega168 _ISP targets
Additional new platforms (mega, sanguino)
http://code.google.com/p/optiboot/issues/detail?id=26
Set R1 to 0 (already in arduino code)
http://code.google.com/p/optiboot/issues/detail?id=36&can=1
Fails to build correctly for mega88
After this commit, the only differences between the Arduino optiboot.c
and the optiboot repository optiboot.c are cosmetic.
2011-06-10 16:17:13 -07:00
WestfW
6840b77643
http://code.google.com/p/arduino/issues/detail?id=517
...
Remove the trailing comments when setting fuse values for the various
*_isp targets, so that they won't cause avrdude errors.
This was done the same way as in the optiboot source tree:
http://code.google.com/p/optiboot/issues/detail?id=17
http://code.google.com/p/optiboot/source/detail?r=005fb033fc08c551b2f86f7c90c5db21549b3f20
2011-06-09 22:57:27 -07:00
WestfW
2d2ed324b4
Makefile modification to allow building optiboot in more environments.
...
Allows building within the Arduino Source tree, and within the Arduino
IDE tree, as well as using CrossPack on Mac.
Adds README.TXT to track arduino-specific changes (and documents the
new build options.)
This addresses Arduino issue:
http://code.google.com/p/arduino/issues/detail?id=487
And optiboot issue
http://code.google.com/p/optiboot/issues/detail?id=1
(which can be thought of as a subset of the Arduno issue.)
Note that the binaries produced after these Makefile changes (using any
of the compile environments) are identical to those produced by the
crosspack-20100115 environment on a Mac.
2011-06-09 22:36:05 -07:00
David A. Mellis
db64d2fc32
Fixing 300 baud communication for serial.
...
Because UBBR is only 12 bits, we were overflowing it at 300 baud because of the use of the U2X bit. Now we turn off U2X if it would yield a UBBR value that would overflow.
Note that this breaks 300 baud communication with the computer on the Uno and Mega 2560 because the 8U2 USB-serial firmware has this same bug (and previously they cancelled each other out). Since, however, it seems more likely that people will need to use 300 baud to communicate with other (legacy) hardware than with the computer, I'm making this change. Issue for 8U2 firmware bug: http://code.google.com/p/arduino/issues/detail?id=542
http://code.google.com/p/arduino/issues/detail?id=522
2011-05-14 12:25:39 -04:00
David A. Mellis
d59fcb8eed
Fixing warnings (David H. Lynch Jr).
2011-03-03 22:56:20 -05:00
David A. Mellis
13e3ba87e3
Small optimization in HardwareSerial.
...
begin(long) -> begin(unsigned long)
2011-02-25 18:36:46 -05:00
David A. Mellis
94168bd0f4
Fix to optiboot infinite loop problem.
...
Explicitly setting R1 to 0 so that the watchdog timer is properly initializing, preventing it from timing out and resetting the processor.
http://code.google.com/p/optiboot/issues/detail?id=26
http://code.google.com/p/arduino/issues/detail?id=446
2011-01-15 13:29:08 +00:00
David A. Mellis
63f4021447
Changing String append to use realloc(); thanks to Paul Stoffregen.
...
http://code.google.com/p/arduino/issues/detail?id=332
2010-12-11 15:22:07 -05:00
David A. Mellis
d7ecd5e4e8
Minor ATmega8U2 firmware update and new .hex files.
...
Adding LUFA_OPTS += -D DEVICE_STATE_AS_GPIOR=0 to makefile to save space, updating release number to 0x0001.
2010-12-04 14:28:56 -05:00
David A. Mellis
f92b235be2
Minor bug fixes to the 8U2 USB-to-serial firmware.
2010-12-04 13:50:27 -05:00
David A. Mellis
32388c908f
Replacing custom String.toInt() function with a call to atol().
2010-12-03 23:12:41 -05:00
David A. Mellis
dce5e09e69
Fixing Linux UNO serial bug (thanks to Dean Camera).
...
Enabling INTERRUPT_CONTROL_ENDPOINT in the makefile so we don't miss control messages from Linux. Also deleted two unused USB events to save a few bytes of space (the Mega 2560 .hex is now exactly 4096 bytes).
2010-11-29 23:26:54 -05:00
David A. Mellis
d98d31eb1a
Redoing 448222e4b6
without all the extra files.
...
Adds toInt() to String, WCharacter.h (from Wiring), and an SD Datalogger example.
2010-11-29 15:20:30 -05:00
David A. Mellis
920212ee05
Revert "added toInt() function to WString".
...
This reverts commit 448222e4b6
.
2010-11-29 15:14:10 -05:00
Tom Igoe
448222e4b6
added toInt() function to WString
2010-11-29 11:31:00 -05:00
David A. Mellis
4dad13532f
pulseIn() now times out while measuring the pulse, not just while waiting for it to start.
2010-11-22 23:33:59 -05:00
David A. Mellis
fcc4188b15
SD File object implements Stream.
...
Added peak() and available() using a single byte buffer.
Added flush().
2010-11-20 11:45:05 -05:00
David A. Mellis
c11098c237
Fixing bug w/ subsequent calls to tone().
...
http://code.google.com/p/arduino/issues/detail?id=397
2010-11-11 23:57:12 -05:00
David A. Mellis
a403c19ade
Cast to encourage optimization of Serial ring buffer index calculations.
...
http://code.google.com/p/arduino/issues/detail?id=391
2010-11-11 23:29:21 -05:00
David A. Mellis
66755f9bce
Changing baud rate calculation to always use double speed mode except for 57600 baud at 16 MHz.
...
http://code.google.com/p/arduino/issues/detail?id=394
2010-11-11 23:28:21 -05:00
David A. Mellis
9b42d2dc03
Modifying Tone.cpp to use register-based (not CPU-based) #ifdefs.
2010-11-08 23:09:29 -05:00
David A. Mellis
b0bc52d7d5
Modifying basic functions (digital and analog, read and write) to use register-based ifdefs, not cpu-based.
...
http://code.google.com/p/arduino/issues/detail?id=307
http://code.google.com/p/arduino/issues/detail?id=316
http://code.google.com/p/arduino/issues/detail?id=323
http://code.google.com/p/arduino/issues/detail?id=324
2010-10-17 17:55:53 -04:00
David A. Mellis
b0888a34b5
Making attachInterrupt() check registers, not CPUs.
...
Patch by Mark Sproul, via Christian Maglie.
http://code.google.com/p/arduino/issues/detail?id=340
2010-10-17 14:05:46 -04:00
David A. Mellis
1cb3c97610
Making HardwareSerial tests register-based, not CPU-based.
...
Mark Sproul's patches, via Christian Maglie.
http://code.google.com/p/arduino/issues/detail?id=315
2010-10-17 13:36:02 -04:00
David A. Mellis
9cad196ae5
Changing #include <> to #include "" in Tone.cpp.
2010-10-09 17:08:19 -04:00
David A. Mellis
b3ba5d4f97
Fixing PWM on pins 9 & 10 on the Uno.
...
Resetting TCCR1B to 0 after it's configured by optiboot.
http://code.google.com/p/arduino/issues/detail?id=364
2010-10-02 13:38:10 -04:00
David A. Mellis
d0f8052f8e
More information on USB VID/PIDs.
2010-09-28 17:19:07 -04:00
David A. Mellis
e9a913066c
Replacing Arduino VID / PID with the Atmel-supplied ones.
2010-09-28 09:31:10 -04:00
David A. Mellis
0768ebed50
Adding note about Arduino VID and PIDs.
2010-09-27 12:20:38 -04:00
David A. Mellis
be6c36ee33
Adding readme about the firmwares.
2010-09-24 10:40:37 -04:00
David A. Mellis
ffa3ce71ee
Adding usbserial and usbdfu firmwares (and combined compiled .hex files).
2010-09-24 10:35:54 -04:00
David A. Mellis
4ab27234d3
Adding Arduino Mega 2560 board entry.
2010-09-24 10:17:01 -04:00
David A. Mellis
27109e3b1a
Adding the Mega 2560 bootloader and boards.txt / boards menu entry.
2010-09-24 10:10:57 -04:00
David A. Mellis
7087bcf5bd
Adding optiboot and Arduino Uno boards menu entry.
2010-09-22 09:04:33 -04:00
David A. Mellis
27cfd22066
1280 -> 1280/2560.
2010-09-08 22:33:33 +00:00
David A. Mellis
722b93dce4
Changing String::toCharArray() and getBytes() to accept a buffer, rather than return one. That way they don't expose the internal representation of the String class, allowing future optimization. Thanks to Paul Stoffregen.
2010-08-28 10:23:54 +00:00
David A. Mellis
f8077a96d7
Returning a reference to a dummy character for indices beyond the string length (in operator[]).
2010-08-28 09:55:26 +00:00
David A. Mellis
a48d96ee49
Adding some basic error checking to the String class (i.e. checking for a non-null buffer before modifying its contents).
2010-08-18 21:39:28 +00:00
David A. Mellis
5ede40be13
Now including stdlib.h from wiring.h so our abs() #define comes after the stdlib abs() definition (and therefore doesn't break it).
2010-08-17 21:50:41 +00:00
David A. Mellis
57e2c152f1
Adding shiftIn() from Wiring (no count or delaytime though).
2010-08-11 22:59:00 +00:00
David A. Mellis
54d367b1e0
Making Client inherit from Stream, which unforunately means taking peek() out of Stream for now, since there's no immediate implementation for Client.
2010-08-11 18:19:01 +00:00
David A. Mellis
05e8d675cd
Adding Arduino BT w/ ATmega328 to the boards menu.
2010-08-07 19:56:14 +00:00
David A. Mellis
3524387e70
Adding ATmega328 version of the Arduino BT bootloader, along with a Makefile for building it.
2010-08-07 19:48:59 +00:00
David A. Mellis
e2fe4d0dfa
No longer requiring WProgram.h for Print / Stream classes (replaced Arduino-specific type names in String).
2010-08-06 01:23:19 +00:00