Main.ReleaseNotes History

Hide minor edits - Show changes to output

October 01, 2014, at 06:31 PM by Cristian -Vacuum- Maglie -
Changed lines 75-76 from:
The following changes are included also in the (not yet released) Arduino IDE 1.0.6:
to:
The following changes are included also in the Arduino IDE 1.0.6:
October 01, 2014, at 06:30 PM by Cristian -Vacuum- Maglie -
Changed lines 5-6 from:
ARDUINO 1.5.7 BETA - 2014.07.07
to:
ARDUINO 1.5.8 BETA - 2014.10.01

[ide]
* Find/Replace over multiple tabs (Erwin Ried, Fulvio Ieva)
* Fix wrong "Replace" behavior with empty "Find" field (Fulvio Ieva)
* A lot of command-line improvements (Matthijs Kooijman)
* Cursor is not moved when invoking autoformat

[libraries]
* SPI: added transaction API (Paul Stoffregen)
https://github.com/arduino/Arduino/pull/2223
https://groups.google.com/a/arduino.cc/forum/#!msg/developers/TuZLfjeZjDI/6deNjw3Y9m4J
* FileIO bridge: fixed wrong return value in File::size() for size >32768
* Updated Temboo to latest version
* Updates/Fix to various examples
Added lines 22-36:
* sam: "new" and "delete" do not bring in 50Kb of stdclib anymore
* Correct implementation of gcc specific internal functions (__cxa_guard_*) (Alexey Guseynov)
* Fix for upload problems on Leonardo (and derivative boards based on mega32u4)
* Small improvements on String class (Matthijs Kooijman)
* Fixed size of available flash for mega2560 boards (Leonardo Milani, Arnav Gupta)
* sam: removed useless empty digitalPinToTimer(..) macro stub (Bill Perry)

The following changes are included also in the Arduino IDE 1.0.6:

[core]
* avr: Added replacement stub for cstdlib atexit() funciton (Christopher Andrews)

ARDUINO 1.5.7 BETA - 2014.07.07

[core]
October 01, 2014, at 01:16 PM by Cristian -Vacuum- Maglie -
Added lines 303-306:



October 01, 2014, at 01:13 PM by Cristian -Vacuum- Maglie -
Added line 302:
=] [[#v1.0.6]] [=
September 17, 2014, at 05:33 PM by Cristian -Vacuum- Maglie - Upgrade to 1.0.6
Changed line 198 from:
* sam: Fixed delayMicrosecond() when interrupts are disabled
to:
* sam: Fixed delayMicrosecond() when interrupts are disabled (Paul Stoffregen)
Changed lines 302-310 from:
ARDUINO 1.0.5-r2 - 2014.01.08

* Signed drivers for Windows 8.1
* Fixed Windows drivers signature (that prevented installation on
some Windows 8.x OS). Now the signature is timestamped and should
not expire.

ARDUINO 1.0.5 - 2013.05.15
to:
ARDUINO 1.0.6 - 2014.09.16
Changed lines 305-311 from:

* [avr] malloc bug: backported avr-libc 1.8.0 implementation
* [avr] removed deprecated interrupt handlers causing compiler issues
with newer avr-gcc.
* [avr] added c_str() method to String
* [avr] Stream "_timeout" field and related methods are now protected
to:
* avr: Improved USB-CDC write speed (Justin Rajewski)
* avr: Improved USB-CDC read code (Paul Brook)
* avr: Fixed race condition in USB-CDC transmit (Paul Brook)
* avr: Added replacement stub for cstdlib atexit() funciton (Christopher Andrews)
* Fixed wrong NULL pointer handling in Stream class (Amulya Kumar Sahoo)
* Backported String class from IDE 1.5.x (Matt Jenkins)
* Backported Print class from IDE 1.5.x
* Backported digitalPinToInterrupt macro from IDE 1.5.x
* Added initVariant() hook to allow 3rd party variant-specific initialization
* Added replacement stub for cstdlib atexit() function (Christopher Andrews)

[ide]
* Added compatibility for IDE 1.5.x libraries layout
* Fix toolchain command line to compile assembler files (Jimmy Hedman)
* If two libraries have the same header file use the lib with the same folder name (Paul Stoffregen)
Changed lines 322-350 from:
to:
* Robot_Control: removed duplicated SPI and Wire (Xun Yang)
* Robot_Control: fixed issue on motors being opposite (Xun Yang)
* Robot_Control: updated turning algorithm (Xun Yang)
* Esplora: added reading form Tinkerkit inputs
* SoftwareSerial: Fix idle level when initializing with inverted logic (Jens-Christian Skibakk)
* fixed a bunch of examples

[firmware]
* Wifishield: fixed paths on firmware upgrade scripts

ARDUINO 1.0.5-r2 - 2014.01.08

* Signed drivers for Windows 8.1
* Fixed Windows drivers signature (that prevented installation on
some Windows 8.x OS). Now the signature is timestamped and should
not expire.

ARDUINO 1.0.5 - 2013.05.15

[core]

* [avr] malloc bug: backported avr-libc 1.8.0 implementation
* [avr] removed deprecated interrupt handlers causing compiler issues
with newer avr-gcc.
* [avr] added c_str() method to String
* [avr] Stream "_timeout" field and related methods are now protected

[libraries]
July 07, 2014, at 02:49 PM by Cristian -Vacuum- Maglie -
Changed lines 69-70 from:
ARDUINO 1.5.6 - BETA 2014.02.20
to:
ARDUINO 1.5.6 BETA - 2014.02.20
Changed lines 110-111 from:
ARDUINO 1.5.5-r2 - BETA 2014.01.10
to:
ARDUINO 1.5.5-r2 BETA - 2014.01.10
Changed lines 117-118 from:
ARDUINO 1.5.5 - BETA 2013.11.28
to:
ARDUINO 1.5.5 BETA - 2013.11.28
Changed lines 170-171 from:
ARDUINO 1.5.4 - BETA 2013.09.10
to:
ARDUINO 1.5.4 BETA - 2013.09.10
Changed lines 186-187 from:
ARDUINO 1.5.3 - BETA 2013.08.30
to:
ARDUINO 1.5.3 BETA - 2013.08.30
July 07, 2014, at 02:47 PM by Cristian -Vacuum- Maglie -
Changed lines 5-6 from:
ARDUINO 1.5.7 BETA 2014.07.02
to:
ARDUINO 1.5.7 BETA - 2014.07.07
Changed lines 20-21 from:
to:
* avr: Fixed PROGMEM statements to be compatible with newer avr gcc (Scott Howard)
Changed lines 44-45 from:
* avr: Added Wire.setClock(..) method (Kristian Sloth Lauszus)
to:
* Added Wire.setClock(..) method (Kristian Sloth Lauszus)
Changed lines 68-69 from:
ARDUINO 1.5.6-r2 BETA 2014.02.21
to:

ARDUINO 1.5.6 - BETA 2014.02.20
Deleted lines 71-75:
* JSSC: Fixed NPE when RXCHAR event with no bytes (José Pereda)

ARDUINO 1.5.6 BETA 2014.02.20

[ide]
Changed lines 110-111 from:
ARDUINO 1.5.5-r2 BETA 2014.01.10
to:
ARDUINO 1.5.5-r2 - BETA 2014.01.10
Changed lines 117-118 from:
ARDUINO 1.5.5 BETA 2013.11.28
to:
ARDUINO 1.5.5 - BETA 2013.11.28
Changed lines 170-171 from:
ARDUINO 1.5.4 BETA 2013.09.10
to:
ARDUINO 1.5.4 - BETA 2013.09.10
Changed lines 186-187 from:
ARDUINO 1.5.3 BETA 2013.08.30
to:
ARDUINO 1.5.3 - BETA 2013.08.30
July 02, 2014, at 05:14 PM by Cristian -Vacuum- Maglie - Upgrade to 1.5.7
Changed lines 5-6 from:
ARDUINO 1.5.6-r2 BETA 2014.02.21
to:
ARDUINO 1.5.7 BETA 2014.07.02

[core]
* Upgraded AVR toolchain: gcc 4.8.1, avr-libc 1.8.0
* Upgraded ARM toolchain: gcc 4.8.3-2014q1
* Upgraded avrdude to version 6.0.1
* ARM gcc doesn't require ia32-libs anymore on 64 bits linux systems
* avr: fixed typo in SerialEvent3 handling (Matthijs Kooijman)
* avr: HardwareSerial support for different size of TX and RX buffer sizes (Jan Baeyens)
* avr: HardwareSerial support for buffer sizes bigger than 256 bytes (Jan Baeyens)
* sam: Added configuration (parity, data bits, stop bits) to Serial1/2/3 of Arduino Due (bluesign2k)
* Removed a lot of compiler warnings from Arduino core
* avr: Fix EXTERNAL_NUM_INTERRUPTS for atmega128rfa1 and atmega256rfr2 (Matthijs Kooijman)
* sam: Fix to Wire::endTransmisson() return value (bluesign2k)
* sam: Fix to Wire usage of TWI status register (bluesign2k)
Changed lines 22-34 from:
* JSSC: Fixed NPE when RXCHAR event with no bytes (José Pereda)

ARDUINO 1.5.6 BETA 2014.02.20

[ide]
* Implemented 1.5 library specification Rev.2
(https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5:-Library-specification)
* Replaced RXTX library with JSSC (Alexey Sokolov)
http://code.google.com/p/java-simple-serial-connector/
* If two libraries provides the same .h file prioritize the library with tha same folder name
* Improved command-line parsing (Matthijs Kooijman)
* Windows: added arduino_debug.exe to help debugging errors when launch4j fails to start IDE
to:
* Moved to appbundler for building releases for MacOSX. (Haavar Valeur)
This should remove dependency from Java 1.6 on recent MacOSX.
* Added support for '-' and '.' in filenames (Georg von Zengen)
* (re)Added 'arduino_debug.exe' in Windows build for debugging purposes
* Magic baudrate is no longer removed (it was a workaround for RXTX)
(for more info see github issues: #1203 and #995)
* Allow overriding platform.txt using platform.local.txt (Matthijs Kooijman)
* Explicitly define compiler.path in avr/platform.txt (Matthijs Kooijman)
* Make the low available memory message a warning (Matt Robinson)
* Proceed with upload even if port can't be found (David Mellis)
* Added support for ArduinoISP
* Windows: added board detection on serial port menu
Changed lines 36-42 from:
* TFT: warning messages in PImage class and strings inside examples now stored in flash to save RAM.
* Ethernet: added operator == for EthernetClient class (Norbert Truchsess)
* Robot_Control: removed embedded copies of Wire and SPI to allow their use in sketch.
Old sketches using Robot_Control now must include Wire.h and SPI.h.
* Robot_Control: fixed issues about motor turning algorithm
* Bridge: optimized FileIO.doBuffer() (bobh66)
to:
* Updated SpaceBrew library
* Fixed HttpClient::running() function
* Fixed HttpClient::ready() function (Manuel Rabade)
* Added HttpClient::noCheckSSL() method
* Improved speed of YunSerialTerminal
* Fixed CRC of shutdown command on YunSerialTerminal example
* Updates/Fix to various examples
* avr: Added Wire.setClock(..) method (Kristian Sloth Lauszus)

The following changes are included also in the (not yet released) Arduino IDE 1.0.6:
Changed lines 48-81 from:
* avr: Pile of HardwareSerial improvements (Matthijs Kooijman)
- Remove duplicate code from HardwareSerial::begin() methods
- Simplify HardwareSerial::begin() (Rob Tillaart)
- Use constants for register bit positions in HardwareSerial
- Fix HardwareSerial::flush() when interrupts are kept disabled for a while
- Fix lockup when writing to HardwareSerial with interrupts disabled
- Disable the UDRE interrupt sooner in HardwareSerial (Nathan Blackwell)
- Put each HardwareSerial instance in its own .cpp file in order to save memory
for unused UARTS
- In HardwareSerial::write, bypass the queue when it's empty in order to
improve throughput when using high baudrates (KurtE)
* sam: Fixed wrap-around bug in delay() (Mark Tillotson)
* sam: Fixed regression in analogRead() (fails to read multiple channels) (Mark Tillotson)
* sam: Fixed loops in Reset.cpp (Matthijs Kooijman)
* sam: Optimized delayMicroseconds() (Rob Tillaart) #1121
* sam: added itoa() and related functions
* Optimized Print::print(String&) method, now uses internal string buffer to perform block write
* Improved portability of String class (maniacbug) #695
* Make some operators in IPAddress const (Matthijs Kooijman)
* Fix for compiling assembler files with newer gcc

ARDUINO 1.5.5-r2 BETA 2014.01.10

* Signed drivers for Windows 8.1
* Fixed Windows drivers signature (that prevented installation on
some Windows 8.x OS). Now the signature is timestamped and should
not expire.

ARDUINO 1.5.5 BETA 2013.11.28

NOTICE:
The 1.5 library format is under heavy review on the Arduino Developers mailing list.
We suggest to delay the adoption of the new format until a stable 1.5.x is released.
to:
* avr: Improved USB-CDC write speed (Justin Rajewski)
* avr: Improved USB-CDC read code (Paul Brook)
* avr: Fixed race condition in USB-CDC transmit (Paul Brook)
* Fixed wrong NULL pointer handling in Stream class (Amulya Kumar Sahoo)
* Added initVariant() hook to allow 3rd party variant-specific initialization
Changed lines 55-78 from:
* Added missing keywords: YunServer, YunClient, pow
* Improved folder ignore: now hidden, starting with a dot, and SCCS folders are ignored
* Improved auto format: now handled by Artistic Style http://astyle.sourceforge.net/
* Improved SSH uploader (Arduino Yun): uses file ~/.ssh/config if available.
Allows public key only authentication and ssh servers listening on ports other than 22.
* Font anti-aliasing now ON by default (users will have to either delete or manually edit their preferences.txt file)
* Added warning message when opening sketches with additional files with illegal names
* (windows) Upgraded embedded Java runtime to version 7: much faster startup
* Improved files open/save dialogs
* Added line numbers, can be enabled/disabled from preferences (Cayci Gorlitsky)
* Removed check on forbidden file in 1.5 formatted libraries (#1692)
* (windows) Updated msys-1.0.dll to the latest version (Windows 8.1 compatibility)
* Using [code] tag instead of [quote] in "Copy for forum". Removed color coding.
* When an hardware addon reference another core also the libraries are referenced.
* It's now possible to specify additional custom board parameters from command line.
* Sketches path can be relative (#1493)
* Example and Boards are now scrollable.
* Fixed localization issues that sometimes prevented the IDE to start.
* Added "Using library..." debugging message in verbose compile.
* Improved preprocessor (fixes #1653, #1687, #817, #1293, #1245)
* Fixed StringStartsWithEndsWith, KeyboardMessage, LCD CustomCharacter, Blink without delay, SD List files, Arduino Robot examples
* Added PID/VID for older Arduinos
* (mac) Improved board autodetection on Mac OS X
to:
* Fix toolchain command line to compile assembler files (Jimmy Hedman)
* If two libraries have the same header file use the lib with the same folder name (Paul Stoffregen)
Changed lines 59-81 from:
* Bridge: Fixed buffer overflow in File::doBuffer() (dreggy)
* Bridge: Fixed timeout in Bridge::transfer()
* Bridge: Fixed return value of Bridge::get(..) (returning 0 with valid data len >0)
* Bridge: Implemented multi-byte File::read(..)
* sam: Fixed SPI initialization (when using extended API and multiple CS)
* Partially fixed the behavior of EthernetClient::flush(), now it doesn't discard
incoming data BUT it doesn't wait for outgoing data to be successfully transmitted.
* Esplora: Added support for display GREENTAB_L

[core]
* sam: Fixed wrong initialization for ADC timings (analogRead speed Arduino DUE improved by a factor x10)
https://github.com/arduino/Arduino/issues/1418
(http://www.djerickson.com/arduino/)
* avr: Fixed wrong extended fuses on Arduino Yún when using external programmer
* Added LED_BUILTIN metadata in variant files
* avr: Refactored Mega* variants definitions in boards.txt (Kristian Sloth Lauszus)
* avr: Removed File object destructor. In order to free memory allocated by a File object the safest way is to call its close() method
* Added digitalPinToInterrupt variant macro (Paul Stoffregen)
* avr: added variant file for Arduino Ethernet
* Added SERIAL_* metadata in variants files (Paul Stoffregen)

ARDUINO 1.5.4 BETA 2013.09.10
to:
* Robot_Control: removed duplicated SPI and Wire (Xun Yang)
* Robot_Control: fixed issue on motors being opposite (Xun Yang)
* Robot_Control: updated turning algorithm (Xun Yang)
* Esplora: added reading form Tinkerkit inputs
* SoftwareSerial: Fix idle level when initializing with inverted logic (Jens-Christian Skibakk)

[firmware]
* Wifishield: fixed paths on firmware upgrade scripts
ARDUINO 1.5.6-r2 BETA 2014.02.21
Changed lines 70-74 from:
* Revert to English locale if the system default is not available
* Added support for Arduino Yun
* Autodetect of boards connected to each serial port
* Network upload and discovery for Arduino Yun
to:
* JSSC: Fixed NPE when RXCHAR event with no bytes (José Pereda)

ARDUINO 1.5.6 BETA 2014.02.20

[ide]
* Implemented 1.5 library specification Rev.2
(https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5:-Library-specification)
* Replaced RXTX library with JSSC (Alexey Sokolov)
http://code.google.com/p/java-simple-serial-connector/
* If two libraries provides the same .h file prioritize the library with tha same folder name
* Improved command-line parsing (Matthijs Kooijman)
* Windows: added arduino_debug.exe to help debugging errors when launch4j fails to start IDE
Changed lines 84-87 from:
* sam: fixed wrong SPI initialization (noblepepper)
* updated all instances of Adafruit_GFX to the latest version
* added libraries for Arduino Yun
to:
* TFT: warning messages in PImage class and strings inside examples now stored in flash to save RAM.
* Ethernet: added operator == for EthernetClient class (Norbert Truchsess)
* Robot_Control: removed embedded copies of Wire and SPI to allow their use in sketch.
Old sketches using Robot_Control now must include Wire.h and SPI.h.
* Robot_Control: fixed issues about motor turning algorithm
* Bridge: optimized FileIO.doBuffer() (bobh66)
Changed lines 92-95 from:
* avr: fixed bug introduced with recent optimizations in HardwareSerial (atmega8 cpu) (darryl)

ARDUINO 1.5.3 BETA 2013.08.30
to:
* avr: Pile of HardwareSerial improvements (Matthijs Kooijman)
- Remove duplicate code from HardwareSerial::begin() methods
- Simplify HardwareSerial::begin() (Rob Tillaart)
- Use constants for register bit positions in HardwareSerial
- Fix HardwareSerial::flush() when interrupts are kept disabled for a while
- Fix lockup when writing to HardwareSerial with interrupts disabled
- Disable the UDRE interrupt sooner in HardwareSerial (Nathan Blackwell)
- Put each HardwareSerial instance in its own .cpp file in order to save memory
for unused UARTS
- In HardwareSerial::write, bypass the queue when it's empty in order to
improve throughput when using high baudrates (KurtE)
* sam: Fixed wrap-around bug in delay() (Mark Tillotson)
* sam: Fixed regression in analogRead() (fails to read multiple channels) (Mark Tillotson)
* sam: Fixed loops in Reset.cpp (Matthijs Kooijman)
* sam: Optimized delayMicroseconds() (Rob Tillaart) #1121
* sam: added itoa() and related functions
* Optimized Print::print(String&) method, now uses internal string buffer to perform block write
* Improved portability of String class (maniacbug) #695
* Make some operators in IPAddress const (Matthijs Kooijman)
* Fix for compiling assembler files with newer gcc

ARDUINO 1.5.5-r2 BETA 2014.01.10

* Signed drivers for Windows 8.1
* Fixed Windows drivers signature (that prevented installation on
some Windows 8.x OS). Now the signature is timestamped and should
not expire.

ARDUINO 1.5.5 BETA 2013.11.28

NOTICE:
The 1.5 library format is under heavy review on the Arduino Developers mailing list.
We suggest to delay the adoption of the new format until a stable 1.5.x is released.
Changed lines 127-148 from:
* Removed useless baud rates from serial monitor
* Fixed some minor IDE UI bugs (Shigeru Kanemoto)
* Added support for new 1.5 Library format (https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5:-Library-specification)
* Pass board type from boards.txt (https://github.com/arduino/Arduino/issues/308)
* Display estimated RAM usage after compile (Loren M. Lang)
* Import library menu is now scrollable
* Scrollable menus can now be scrolled with the mouse wheel

[arduino core]
* sam: Fixed delayMicrosecond() when interrupts are disabled
* sam: Upgraded libsam, and added missing modules (CAN, ETH, etc.) (Thibaut Viard)
* sam: Added compatibility for avr/pgmspace.h (Paul Stoffregen)
* sam: Added serialEvent*() support
* sam: Fixed micros() to work with inside interrupts. (stimmer)
* avr: Added support for Flash strings on String class (Jantje)
* Added support for floating point numbers in String class (Tevin Zhang, SebiTimeWaster)
* sam: Fixed String buffer overflows (Paul Stoffregen)
* avr: Added recipe for assembly files (C. A. Church)
* avr: Use analogPinToChannel if it's defined (Kristian Sloth Lauszus)
* avr: Optimized HardwareSerial buffer (Matthijs Kooijman)
* removed unused flags from String (free 1 byte of SRAM)
to:
* Added missing keywords: YunServer, YunClient, pow
* Improved folder ignore: now hidden, starting with a dot, and SCCS folders are ignored
* Improved auto format: now handled by Artistic Style http://astyle.sourceforge.net/
* Improved SSH uploader (Arduino Yun): uses file ~/.ssh/config if available.
Allows public key only authentication and ssh servers listening on ports other than 22.
* Font anti-aliasing now ON by default (users will have to either delete or manually edit their preferences.txt file)
* Added warning message when opening sketches with additional files with illegal names
* (windows) Upgraded embedded Java runtime to version 7: much faster startup
* Improved files open/save dialogs
* Added line numbers, can be enabled/disabled from preferences (Cayci Gorlitsky)
* Removed check on forbidden file in 1.5 formatted libraries (#1692)
* (windows) Updated msys-1.0.dll to the latest version (Windows 8.1 compatibility)
* Using [code] tag instead of [quote] in "Copy for forum". Removed color coding.
* When an hardware addon reference another core also the libraries are referenced.
* It's now possible to specify additional custom board parameters from command line.
* Sketches path can be relative (#1493)
* Example and Boards are now scrollable.
* Fixed localization issues that sometimes prevented the IDE to start.
* Added "Using library..." debugging message in verbose compile.
* Improved preprocessor (fixes #1653, #1687, #817, #1293, #1245)
* Fixed StringStartsWithEndsWith, KeyboardMessage, LCD CustomCharacter, Blink without delay, SD List files, Arduino Robot examples
* Added PID/VID for older Arduinos
* (mac) Improved board autodetection on Mac OS X
Changed lines 152-166 from:
* sam: Removed CAN library, you can find an updated version here:
https://github.com/collin80/due_can
* sam: Bugfix SPI library: begin() after end() now works (stimmer)
* sam: Bugfix SPI library: incorrent pin configuration in non-extended mode.
* Ported all libraries to new 1.5 format
* Updated Firmata to version 2.3.6 (Jeff Hoefs)

[firmwares]
* Arduino Due: fixed USB2Serial garbage at startup (https://github.com/arduino/Arduino/pull/1267)

[other]
* Merged all improvements made in Arduino IDE 1.0.5

ARDUINO 1.5.2 BETA - 2013.02.06
to:
* Bridge: Fixed buffer overflow in File::doBuffer() (dreggy)
* Bridge: Fixed timeout in Bridge::transfer()
* Bridge: Fixed return value of Bridge::get(..) (returning 0 with valid data len >0)
* Bridge: Implemented multi-byte File::read(..)
* sam: Fixed SPI initialization (when using extended API and multiple CS)
* Partially fixed the behavior of EthernetClient::flush(), now it doesn't discard
incoming data BUT it doesn't wait for outgoing data to be successfully transmitted.
* Esplora: Added support for display GREENTAB_L

[core]
* sam: Fixed wrong initialization for ADC timings (analogRead speed Arduino DUE improved by a factor x10)
https://github.com/arduino/Arduino/issues/1418
(http://www.djerickson.com/arduino/)
* avr: Fixed wrong extended fuses on Arduino Yún when using external programmer
* Added LED_BUILTIN metadata in variant files
* avr: Refactored Mega* variants definitions in boards.txt (Kristian Sloth Lauszus)
* avr: Removed File object destructor. In order to free memory allocated by a File object the safest way is to call its close() method
* Added digitalPinToInterrupt variant macro (Paul Stoffregen)
* avr: added variant file for Arduino Ethernet
* Added SERIAL_* metadata in variants files (Paul Stoffregen)

ARDUINO 1.5.4 BETA 2013.09.10
Changed lines 176-200 from:
* Scrollable editor tabs (Shigheru KANEMOTO)
* Scrollable menus
* Portable Arduino (Shigeru KANEMOTO)
* Default sketchbook folder for linux is now "Arduino"
* Fixed IDE startup bug "Menu has no enabled items"
* Command line build.
* Fixed some language strings (Shigeru KANEMOTO)
* Fix to boards.txt: added Micro and fixed Lilypad bootloader path
* Removed check for ".h" existence in libraries.
* Deleting tab from IDE does not delete from temporary folder
* Fixed NPE when unknown boards/platforms are selected in preferences
* Extended command line build flags
* Undo/Redo move cursor and focus to where the code has been undone/redone

[arduino core]
* sam: attachInterrupt() now works also on pins that belongs to PORTD
* sam: portOutputRegister() is now writeable.
* sam: fixed issue on weak-symbol for some interrupt handlers
* sam: fixed BSoD on some Windows machine (louismdavis)
* sam: added CANRX1/CANTX1 pins 88/89 (same physical pin for 66/53)
* sam: fixed analogWrite when used in very thight write loops (V.Dorrich)
* sam: fixed SerialUSB.write() while sending big buffers (Bill Dreschel)
* sam: SerialUSB receive buffer size is now 512 (PeterVH)
* sam: Fixed SerialUSB data handshake when host sends a lot of data (PeterVH, stimmer)
to:
* Revert to English locale if the system default is not available
* Added support for Arduino Yun
* Autodetect of boards connected to each serial port
* Network upload and discovery for Arduino Yun
Changed lines 182-201 from:
* sam: Added Servo library
* sam: Added WiFi library
* Fixed USBHost MouseController example

[other]
* Merged all improvements made in Arduino IDE 1.0.3
* Merged all improvements made in Arduino IDE 1.0.4 (not yet released)

ARDUINO 1.5.1r2 BETA - 2012.11.06

* Fixed wrong release file for windows.

ARDUINO 1.5.1 BETA - 2012.11.05

* Merged changes coming from stable release of Arduino IDE 1.0.2.

[arduino core]
* added support for yield() function in Arduino Core. This is a
preliminar step for experimenting with cooperative Schedulers.
to:
* sam: fixed wrong SPI initialization (noblepepper)
* updated all instances of Adafruit_GFX to the latest version
* added libraries for Arduino Yun

[core]
* avr: fixed bug introduced with recent optimizations in HardwareSerial (atmega8 cpu) (darryl)

ARDUINO 1.5.3 BETA 2013.08.30
Changed lines 192-204 from:
* Simplified boards menu selection. (new boards.txt file format with
custom sub-menus).
* Fixed "FAT" (multi-platform) library detection. This bug caused
many libraries to be detected as 'invalid'.

[sam arduino core]
* attachInterrupt() and detachInterrupt() are now working.
* Fixed macros to query low level GPIO registers:
digitalPinToBitMask(), digitalPinToTimer(),
portOutputRegister, portInputRegister()
* Fixed analogWrite() on DAC0/1 when writing on both DACs
(thanks to smay4finger)
to:
* Removed useless baud rates from serial monitor
* Fixed some minor IDE UI bugs (Shigeru Kanemoto)
* Added support for new 1.5 Library format (https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5:-Library-specification)
* Pass board type from boards.txt (https://github.com/arduino/Arduino/issues/308)
* Display estimated RAM usage after compile (Loren M. Lang)
* Import library menu is now scrollable
* Scrollable menus can now be scrolled with the mouse wheel

[arduino core]
* sam: Fixed delayMicrosecond() when interrupts are disabled
* sam: Upgraded libsam, and added missing modules (CAN, ETH, etc.) (Thibaut Viard)
* sam: Added compatibility for avr/pgmspace.h (Paul Stoffregen)
* sam: Added serialEvent*() support
* sam: Fixed micros() to work with inside interrupts. (stimmer)
* avr: Added support for Flash strings on String class (Jantje)
* Added support for floating point numbers in String class (Tevin Zhang, SebiTimeWaster)
* sam: Fixed String buffer overflows (Paul Stoffregen)
* avr: Added recipe for assembly files (C. A. Church)
* avr: Use analogPinToChannel if it's defined (Kristian Sloth Lauszus)
* avr: Optimized HardwareSerial buffer (Matthijs Kooijman)
* removed unused flags from String (free 1 byte of SRAM)

[libraries]
* sam: Removed CAN library, you can find an updated version here:
https://github.com/collin80/due_can
* sam: Bugfix SPI library: begin() after end() now works (stimmer)
* sam: Bugfix SPI library: incorrent pin configuration in non-extended mode.
* Ported all libraries to new 1.5 format
* Updated Firmata to version 2.3.6 (Jeff Hoefs)
Changed lines 223-263 from:
* Added firmware for atmega16u2 on Due Board.

ARDUINO 1.5 BETA - 2012.10.22

* First release for the unified IDE for both AVR 8-bit and ARM 32-bit
(SAM3 CPUs) architectures.
* This release include the SAM Arduino Core used in the Arduino Due
Board.
* Everything is in beta, most features or libraries are still missing
or incomplete.
* For more info refer to this press release:
http://arduino.cc/blog/2012/10/22/arduino-1-5-support-for-the-due-and-other-processors-easier-library-installation-simplified-board-menu-etc/

ARDUINO 1.0.5-r2 - 2014.01.08

* Signed drivers for Windows 8.1
* Fixed Windows drivers signature (that prevented installation on
some Windows 8.x OS). Now the signature is timestamped and should
not expire.

ARDUINO 1.0.5 - 2013.05.15

[core]

* [avr] malloc bug: backported avr-libc 1.8.0 implementation
* [avr] removed deprecated interrupt handlers causing compiler issues
with newer avr-gcc.
* [avr] added c_str() method to String
* [avr] Stream "_timeout" field and related methods are now protected

[libraries]

* Upgrades to WiFi library
* Fixed a bunch of examples
* Added Arduino Robot libraries
* Added TFT display library

[firmwares]

* Upgrades to WiFi firmwares
to:
* Arduino Due: fixed USB2Serial garbage at startup (https://github.com/arduino/Arduino/pull/1267)

[other]
* Merged all improvements made in Arduino IDE 1.0.5

ARDUINO 1.5.2 BETA - 2013.02.06
Changed lines 231-241 from:

* Backport from 1.5: install Library from .zip file or folder
* Updated windows drivers
* Added Windows installer

ARDUINO 1.0.4 - 2013.03.11

[core]

* Fixed malloc bug (Paul Stoffregen)
to:
* Scrollable editor tabs (Shigheru KANEMOTO)
* Scrollable menus
* Portable Arduino (Shigeru KANEMOTO)
* Default sketchbook folder for linux is now "Arduino"
* Fixed IDE startup bug "Menu has no enabled items"
* Command line build.
* Fixed some language strings (Shigeru KANEMOTO)
* Fix to boards.txt: added Micro and fixed Lilypad bootloader path
* Removed check for ".h" existence in libraries.
* Deleting tab from IDE does not delete from temporary folder
* Fixed NPE when unknown boards/platforms are selected in preferences
* Extended command line build flags
* Undo/Redo move cursor and focus to where the code has been undone/redone

[arduino core]
* sam: attachInterrupt() now works also on pins that belongs to PORTD
* sam: portOutputRegister() is now writeable.
* sam: fixed issue on weak-symbol for some interrupt handlers
* sam: fixed BSoD on some Windows machine (louismdavis)
* sam: added CANRX1/CANTX1 pins 88/89 (same physical pin for 66/53)
* sam: fixed analogWrite when used in very thight write loops (V.Dorrich)
* sam: fixed SerialUSB.write() while sending big buffers (Bill Dreschel)
* sam: SerialUSB receive buffer size is now 512 (PeterVH)
* sam: Fixed SerialUSB data handshake when host sends a lot of data (PeterVH, stimmer)
Changed lines 257-284 from:

* Fixed memory leak when calling Ethernet.begin() multiple times.
* Fixed SD example listfiles.ino
* Fixed a lot of Esplora examples
* Added GSM library

[environment]

* Sort entries in preferences.txt (Shigeru Kanemoto)
* Fixed some wrong translations
* Fixed NPE due to permissions IO error
* Updated drivers for Windows (all-in-one, signature for Win8)

[bootloaders]

* Fixed a bunch of bugs on Mega2560's bootloader (Mark Sproul)
(https://github.com/arduino/Arduino/pull/1183)

ARDUINO 1.0.3 - 2012.12.10

[hardware]

* Added support for the Arduino Esplora

[environment]

* Signed application for MacOSX 10.8
to:
* sam: Added Servo library
* sam: Added WiFi library
* Fixed USBHost MouseController example

[other]
* Merged all improvements made in Arduino IDE 1.0.3
* Merged all improvements made in Arduino IDE 1.0.4 (not yet released)

ARDUINO 1.5.1r2 BETA - 2012.11.06

* Fixed wrong release file for windows.

ARDUINO 1.5.1 BETA - 2012.11.05

* Merged changes coming from stable release of Arduino IDE 1.0.2.

[arduino core]
* added support for yield() function in Arduino Core. This is a
preliminar step for experimenting with cooperative Schedulers.

[ide]
* Simplified boards menu selection. (new boards.txt file format with
custom sub-menus).
* Fixed "FAT" (multi-platform) library detection. This bug caused
many libraries to be detected as 'invalid'.

[sam arduino core]
* attachInterrupt() and detachInterrupt() are now working.
* Fixed macros to query low level GPIO registers:
digitalPinToBitMask(), digitalPinToTimer(),
portOutputRegister, portInputRegister()
* Fixed analogWrite() on DAC0/1 when writing on both DACs
(thanks to smay4finger)

[firmwares]
* Added firmware for atmega16u2 on Due Board.

ARDUINO 1.5 BETA - 2012.10.22

* First release for the unified IDE for both AVR 8-bit and ARM 32-bit
(SAM3 CPUs) architectures.
* This release include the SAM Arduino Core used in the Arduino Due
Board.
* Everything is in beta, most features or libraries are still missing
or incomplete.
* For more info refer to this press release:
http://arduino.cc/blog/2012/10/22/arduino-1-5-support-for-the-due-and-other-processors-easier-library-installation-simplified-board-menu-etc/

ARDUINO 1.0.5-r2 - 2014.01.08

* Signed drivers for Windows 8.1
* Fixed Windows drivers signature (that prevented installation on
some Windows 8.x OS). Now the signature is timestamped and should
not expire.

ARDUINO 1.0.5 - 2013.05.15
Changed lines 316-325 from:
* Fixed power-up-starts-bootloader in Leonardo (and derivative)
bootloaders. (Kristian Lauszus)
(https://github.com/arduino/Arduino/pull/118)

* Fixed digital_pin_to_timer_PGM array in Leonardo variant.

* Published updated Wifi firmware

* Updated source code for atmega8 bootloader
to:
* [avr] malloc bug: backported avr-libc 1.8.0 implementation
* [avr] removed deprecated interrupt handlers causing compiler issues
with newer avr-gcc.
* [avr] added c_str() method to String
* [avr] Stream "_timeout" field and related methods are now protected
Changed lines 324-338 from:
* Added 600 baud support in SoftwareSerial (Sébastien Jean)
(http://github.com/arduino/Arduino/issues/1146)

ARDUINO 1.0.2 - 2012.11.05

[hardware]

* Added support for the Arduino Micro.

* Added support for the LilyPad Arduino USB.

* For Arduino Mega, having avrdude use "wiring" not "stk500v2" for
uploads (to improve auto-reset behavior).
http://code.google.com/p/arduino/issues/detail?id=806
to:
* Upgrades to WiFi library
* Fixed a bunch of examples
* Added Arduino Robot libraries
* Added TFT display library

[firmwares]

* Upgrades to WiFi firmwares

[ide]

* Backport from 1.5: install Library from .zip file or folder
* Updated windows drivers
* Added Windows installer

ARDUINO 1.0.4 - 2013.03.11

[core]

* Fixed malloc bug (Paul Stoffregen)

[libraries]

* Fixed memory leak when calling Ethernet.begin() multiple times.
* Fixed SD example listfiles.ino
* Fixed a lot of Esplora examples
* Added GSM library
Added lines 354-404:
* Sort entries in preferences.txt (Shigeru Kanemoto)
* Fixed some wrong translations
* Fixed NPE due to permissions IO error
* Updated drivers for Windows (all-in-one, signature for Win8)

[bootloaders]

* Fixed a bunch of bugs on Mega2560's bootloader (Mark Sproul)
(https://github.com/arduino/Arduino/pull/1183)

ARDUINO 1.0.3 - 2012.12.10

[hardware]

* Added support for the Arduino Esplora

[environment]

* Signed application for MacOSX 10.8

[core]

* Fixed power-up-starts-bootloader in Leonardo (and derivative)
bootloaders. (Kristian Lauszus)
(https://github.com/arduino/Arduino/pull/118)

* Fixed digital_pin_to_timer_PGM array in Leonardo variant.

* Published updated Wifi firmware

* Updated source code for atmega8 bootloader

[libraries]

* Added 600 baud support in SoftwareSerial (Sébastien Jean)
(http://github.com/arduino/Arduino/issues/1146)

ARDUINO 1.0.2 - 2012.11.05

[hardware]

* Added support for the Arduino Micro.

* Added support for the LilyPad Arduino USB.

* For Arduino Mega, having avrdude use "wiring" not "stk500v2" for
uploads (to improve auto-reset behavior).
http://code.google.com/p/arduino/issues/detail?id=806

[environment]
February 21, 2014, at 08:00 PM by Cristian -Vacuum- Maglie - Update IDE to 1.5.6-r2
Changed lines 5-6 from:
ARDUINO 1.5.6 BETA 2014.02.20
to:
ARDUINO 1.5.6-r2 BETA 2014.02.21
Added lines 8-12:
* JSSC: Fixed NPE when RXCHAR event with no bytes (José Pereda)

ARDUINO 1.5.6 BETA 2014.02.20

[ide]
February 20, 2014, at 05:57 PM by Cristian -Vacuum- Maglie - Update IDE to 1.5.6
Changed lines 5-17 from:
ARDUINO 1.5.5-r2 BETA 2014.01.10

* Signed drivers for Windows 8.1
* Fixed Windows drivers signature (that prevented installation on
some Windows 8.x OS). Now the signature is timestamped and should
not expire.

ARDUINO 1.5.5 BETA 2013.11.28

NOTICE:
The 1.5 library format is under heavy review on the Arduino Developers mailing list.
We suggest to delay the adoption of the new format until a stable 1.5.x is released.
to:
ARDUINO 1.5.6 BETA 2014.02.20
Changed lines 8-31 from:
* Added missing keywords: YunServer, YunClient, pow
* Improved folder ignore: now hidden, starting with a dot, and SCCS folders are ignored
* Improved auto format: now handled by Artistic Style http://astyle.sourceforge.net/
* Improved SSH uploader (Arduino Yun): uses file ~/.ssh/config if available.
Allows public key only authentication and ssh servers listening on ports other than 22.
* Font anti-aliasing now ON by default (users will have to either delete or manually edit their preferences.txt file)
* Added warning message when opening sketches with additional files with illegal names
* (windows) Upgraded embedded Java runtime to version 7: much faster startup
* Improved files open/save dialogs
* Added line numbers, can be enabled/disabled from preferences (Cayci Gorlitsky)
* Removed check on forbidden file in 1.5 formatted libraries (#1692)
* (windows) Updated msys-1.0.dll to the latest version (Windows 8.1 compatibility)
* Using [code] tag instead of [quote] in "Copy for forum". Removed color coding.
* When an hardware addon reference another core also the libraries are referenced.
* It's now possible to specify additional custom board parameters from command line.
* Sketches path can be relative (#1493)
* Example and Boards are now scrollable.
* Fixed localization issues that sometimes prevented the IDE to start.
* Added "Using library..." debugging message in verbose compile.
* Improved preprocessor (fixes #1653, #1687, #817, #1293, #1245)
* Fixed StringStartsWithEndsWith, KeyboardMessage, LCD CustomCharacter, Blink without delay, SD List files, Arduino Robot examples
* Added PID/VID for older Arduinos
* (mac) Improved board autodetection on Mac OS X
to:
* Implemented 1.5 library specification Rev.2
(https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5:-Library-specification)
* Replaced RXTX library with JSSC (Alexey Sokolov)
http://code.google.com/p/java-simple-serial-connector/
* If two libraries provides the same .h file prioritize the library with tha same folder name
* Improved command-line parsing (Matthijs Kooijman)
* Windows: added arduino_debug.exe to help debugging errors when launch4j fails to start IDE
Changed lines 17-25 from:
* Bridge: Fixed buffer overflow in File::doBuffer() (dreggy)
* Bridge: Fixed timeout in Bridge::transfer()
* Bridge: Fixed return value of Bridge::get(..) (returning 0 with valid data len >0)
* Bridge: Implemented multi-byte File::read(..)
* sam: Fixed SPI initialization (when using extended API and multiple CS)
* Partially fixed the behavior of EthernetClient::flush(), now it doesn't discard
incoming data BUT it doesn't wait for outgoing data to be successfully transmitted.
* Esplora: Added support for display GREENTAB_L
to:
* TFT: warning messages in PImage class and strings inside examples now stored in flash to save RAM.
* Ethernet: added operator == for EthernetClient class (Norbert Truchsess)
* Robot_Control: removed embedded copies of Wire and SPI to allow their use in sketch.
Old sketches using Robot_Control now must include Wire.h and SPI.h.
* Robot_Control: fixed issues about motor turning algorithm
* Bridge: optimized FileIO.doBuffer() (bobh66)
Changed lines 25-37 from:
* sam: Fixed wrong initialization for ADC timings (analogRead speed Arduino DUE improved by a factor x10)
https://github.com/arduino/Arduino/issues/1418
(http://www.djerickson.com/arduino/)
* avr: Fixed wrong extended fuses on Arduino Yún when using external programmer
* Added LED_BUILTIN metadata in variant files
* avr: Refactored Mega* variants definitions in boards.txt (Kristian Sloth Lauszus)
* avr: Removed File object destructor. In order to free memory allocated by a File object the safest way is to call its close() method
* Added digitalPinToInterrupt variant macro (Paul Stoffregen)
* avr: added variant file for Arduino Ethernet
* Added SERIAL_* metadata in variants files (Paul Stoffregen)

ARDUINO 1.5.4 BETA 2013.09.10
to:
* avr: Pile of HardwareSerial improvements (Matthijs Kooijman)
- Remove duplicate code from HardwareSerial::begin() methods
- Simplify HardwareSerial::begin() (Rob Tillaart)
- Use constants for register bit positions in HardwareSerial
- Fix HardwareSerial::flush() when interrupts are kept disabled for a while
- Fix lockup when writing to HardwareSerial with interrupts disabled
- Disable the UDRE interrupt sooner in HardwareSerial (Nathan Blackwell)
- Put each HardwareSerial instance in its own .cpp file in order to save memory
for unused UARTS
- In HardwareSerial::write, bypass the queue when it's empty in order to
improve throughput when using high baudrates (KurtE)
* sam: Fixed wrap-around bug in delay() (Mark Tillotson)
* sam: Fixed regression in analogRead() (fails to read multiple channels) (Mark Tillotson)
* sam: Fixed loops in Reset.cpp (Matthijs Kooijman)
* sam: Optimized delayMicroseconds() (Rob Tillaart) #1121
* sam: added itoa() and related functions
* Optimized Print::print(String&) method, now uses internal string buffer to perform block write
* Improved portability of String class (maniacbug) #695
* Make some operators in IPAddress const (Matthijs Kooijman)
* Fix for compiling assembler files with newer gcc

ARDUINO 1.5.5-r2 BETA 2014.01.10

* Signed drivers for Windows 8.1
* Fixed Windows drivers signature (that prevented installation on
some Windows 8.x OS). Now the signature is timestamped and should
not expire.

ARDUINO 1.5.5 BETA 2013.11.28

NOTICE:
The 1.5 library format is under heavy review on the Arduino Developers mailing list.
We suggest to delay the adoption of the new format until a stable 1.5.x is released.
Changed lines 60-64 from:
* Revert to English locale if the system default is not available
* Added support for Arduino Yun
* Autodetect of boards connected to each serial port
* Network upload and discovery for Arduino Yun
to:
* Added missing keywords: YunServer, YunClient, pow
* Improved folder ignore: now hidden, starting with a dot, and SCCS folders are ignored
* Improved auto format: now handled by Artistic Style http://astyle.sourceforge.net/
* Improved SSH uploader (Arduino Yun): uses file ~/.ssh/config if available.
Allows public key only authentication and ssh servers listening on ports other than 22.
* Font anti-aliasing now ON by default (users will have to either delete or manually edit their preferences.txt file)
* Added warning message when opening sketches with additional files with illegal names
* (windows) Upgraded embedded Java runtime to version 7: much faster startup
* Improved files open/save dialogs
* Added line numbers, can be enabled/disabled from preferences (Cayci Gorlitsky)
* Removed check on forbidden file in 1.5 formatted libraries (#1692)
* (windows) Updated msys-1.0.dll to the latest version (Windows 8.1 compatibility)
* Using [code] tag instead of [quote] in "Copy for forum". Removed color coding.
* When an hardware addon reference another core also the libraries are referenced.
* It's now possible to specify additional custom board parameters from command line.
* Sketches path can be relative (#1493)
* Example and Boards are now scrollable.
* Fixed localization issues that sometimes prevented the IDE to start.
* Added "Using library..." debugging message in verbose compile.
* Improved preprocessor (fixes #1653, #1687, #817, #1293, #1245)
* Fixed StringStartsWithEndsWith, KeyboardMessage, LCD CustomCharacter, Blink without delay, SD List files, Arduino Robot examples
* Added PID/VID for older Arduinos
* (mac) Improved board autodetection on Mac OS X
Changed lines 85-88 from:
* sam: fixed wrong SPI initialization (noblepepper)
* updated all instances of Adafruit_GFX to the latest version
* added libraries for Arduino Yun
to:
* Bridge: Fixed buffer overflow in File::doBuffer() (dreggy)
* Bridge: Fixed timeout in Bridge::transfer()
* Bridge: Fixed return value of Bridge::get(..) (returning 0 with valid data len >0)
* Bridge: Implemented multi-byte File::read(..)
* sam: Fixed SPI initialization (when using extended API and multiple CS)
* Partially fixed the behavior of EthernetClient::flush(), now it doesn't discard
incoming data BUT it doesn't wait for outgoing data to be successfully transmitted.
* Esplora: Added support for display GREENTAB_L
Changed lines 95-98 from:
* avr: fixed bug introduced with recent optimizations in HardwareSerial (atmega8 cpu) (darryl)

ARDUINO 1.5.3 BETA 2013.08.30
to:
* sam: Fixed wrong initialization for ADC timings (analogRead speed Arduino DUE improved by a factor x10)
https://github.com/arduino/Arduino/issues/1418
(http://www.djerickson.com/arduino/)
* avr: Fixed wrong extended fuses on Arduino Yún when using external programmer
* Added LED_BUILTIN metadata in variant files
* avr: Refactored Mega* variants definitions in boards.txt (Kristian Sloth Lauszus)
* avr: Removed File object destructor. In order to free memory allocated by a File object the safest way is to call its close() method
* Added digitalPinToInterrupt variant macro (Paul Stoffregen)
* avr: added variant file for Arduino Ethernet
* Added SERIAL_* metadata in variants files (Paul Stoffregen)

ARDUINO 1.5.4 BETA 2013.09.10
Added lines 109-124:
* Revert to English locale if the system default is not available
* Added support for Arduino Yun
* Autodetect of boards connected to each serial port
* Network upload and discovery for Arduino Yun

[libraries]
* sam: fixed wrong SPI initialization (noblepepper)
* updated all instances of Adafruit_GFX to the latest version
* added libraries for Arduino Yun

[core]
* avr: fixed bug introduced with recent optimizations in HardwareSerial (atmega8 cpu) (darryl)

ARDUINO 1.5.3 BETA 2013.08.30

[ide]
January 10, 2014, at 11:28 PM by Cristian -Vacuum- Maglie -
Added lines 5-11:
ARDUINO 1.5.5-r2 BETA 2014.01.10

* Signed drivers for Windows 8.1
* Fixed Windows drivers signature (that prevented installation on
some Windows 8.x OS). Now the signature is timestamped and should
not expire.
Added lines 197-203:
ARDUINO 1.0.5-r2 - 2014.01.08

* Signed drivers for Windows 8.1
* Fixed Windows drivers signature (that prevented installation on
some Windows 8.x OS). Now the signature is timestamped and should
not expire.
November 28, 2013, at 04:43 PM by Cristian -Vacuum- Maglie -
Changed lines 5-6 from:
ARDUINO 1.5.4 BETA 2013.09.10
to:
ARDUINO 1.5.5 BETA 2013.11.28

NOTICE:
The 1.5 library format is under heavy review on the Arduino Developers mailing list.
We suggest to delay the adoption of the new format until a stable 1.5.x is released.
Changed lines 12-16 from:
* Revert to English locale if the system default is not available
* Added support for Arduino Yun
* Autodetect of boards connected to each serial port
* Network upload and discovery for Arduino Yun
to:
* Added missing keywords: YunServer, YunClient, pow
* Improved folder ignore: now hidden, starting with a dot, and SCCS folders are ignored
* Improved auto format: now handled by Artistic Style http://astyle.sourceforge.net/
* Improved SSH uploader (Arduino Yun): uses file ~/.ssh/config if available.
Allows public key only authentication and ssh servers listening on ports other than 22.
* Font anti-aliasing now ON by default (users will have to either delete or manually edit their preferences.txt file)
* Added warning message when opening sketches with additional files with illegal names
* (windows) Upgraded embedded Java runtime to version 7: much faster startup
* Improved files open/save dialogs
* Added line numbers, can be enabled/disabled from preferences (Cayci Gorlitsky)
* Removed check on forbidden file in 1.5 formatted libraries (#1692)
* (windows) Updated msys-1.0.dll to the latest version (Windows 8.1 compatibility)
* Using [code] tag instead of [quote] in "Copy for forum". Removed color coding.
* When an hardware addon reference another core also the libraries are referenced.
* It's now possible to specify additional custom board parameters from command line.
* Sketches path can be relative (#1493)
* Example and Boards are now scrollable.
* Fixed localization issues that sometimes prevented the IDE to start.
* Added "Using library..." debugging message in verbose compile.
* Improved preprocessor (fixes #1653, #1687, #817, #1293, #1245)
* Fixed StringStartsWithEndsWith, KeyboardMessage, LCD CustomCharacter, Blink without delay, SD List files, Arduino Robot examples
* Added PID/VID for older Arduinos
* (mac) Improved board autodetection on Mac OS X
Changed lines 37-40 from:
* sam: fixed wrong SPI initialization (noblepepper)
* updated all instances of Adafruit_GFX to the latest version
* added libraries for Arduino Yun
to:
* Bridge: Fixed buffer overflow in File::doBuffer() (dreggy)
* Bridge: Fixed timeout in Bridge::transfer()
* Bridge: Fixed return value of Bridge::get(..) (returning 0 with valid data len >0)
* Bridge: Implemented multi-byte File::read(..)
* sam: Fixed SPI initialization (when using extended API and multiple CS)
* Partially fixed the behavior of EthernetClient::flush(), now it doesn't discard
incoming data BUT it doesn't wait for outgoing data to be successfully transmitted.
* Esplora: Added support for display GREENTAB_L
Changed lines 47-50 from:
* avr: fixed bug introduced with recent optimizations in HardwareSerial (atmega8 cpu) (darryl)

ARDUINO 1.5.3 BETA 2013.08.30
to:
* sam: Fixed wrong initialization for ADC timings (analogRead speed Arduino DUE improved by a factor x10)
https://github.com/arduino/Arduino/issues/1418
(http://www.djerickson.com/arduino/)
* avr: Fixed wrong extended fuses on Arduino Yún when using external programmer
* Added LED_BUILTIN metadata in variant files
* avr: Refactored Mega* variants definitions in boards.txt (Kristian Sloth Lauszus)
* avr: Removed File object destructor. In order to free memory allocated by a File object the safest way is to call its close() method
* Added digitalPinToInterrupt variant macro (Paul Stoffregen)
* avr: added variant file for Arduino Ethernet
* Added SERIAL_* metadata in variants files (Paul Stoffregen)

ARDUINO 1.5.4 BETA 2013.09.10
Added lines 61-76:
* Revert to English locale if the system default is not available
* Added support for Arduino Yun
* Autodetect of boards connected to each serial port
* Network upload and discovery for Arduino Yun

[libraries]
* sam: fixed wrong SPI initialization (noblepepper)
* updated all instances of Adafruit_GFX to the latest version
* added libraries for Arduino Yun

[core]
* avr: fixed bug introduced with recent optimizations in HardwareSerial (atmega8 cpu) (darryl)

ARDUINO 1.5.3 BETA 2013.08.30

[ide]
September 10, 2013, at 07:00 PM by Cristian -Vacuum- Maglie -
Changed lines 5-6 from:
ARDUINO 1.5.3 BETA 2013.08.30
to:
ARDUINO 1.5.4 BETA 2013.09.10
Added lines 8-23:
* Revert to English locale if the system default is not available
* Added support for Arduino Yun
* Autodetect of boards connected to each serial port
* Network upload and discovery for Arduino Yun

[libraries]
* sam: fixed wrong SPI initialization (noblepepper)
* updated all instances of Adafruit_GFX to the latest version
* added libraries for Arduino Yun

[core]
* avr: fixed bug introduced with recent optimizations in HardwareSerial (atmega8 cpu) (darryl)

ARDUINO 1.5.3 BETA 2013.08.30

[ide]
September 04, 2013, at 12:52 PM by Cristian -Vacuum- Maglie -
Changed lines 31-32 from:
* sam: Added CAN library (still in early stage of development) (Palliser)
to:
* sam: Removed CAN library, you can find an updated version here:
https://github.com/collin80/due_can
August 30, 2013, at 06:09 PM by Cristian -Vacuum- Maglie -
Changed lines 5-6 from:
ARDUINO 1.5.2 BETA - 2013.02.06
to:
ARDUINO 1.5.3 BETA 2013.08.30
Changed lines 8-21 from:
* Scrollable editor tabs (Shigheru KANEMOTO)
* Scrollable menus
* Portable Arduino (Shigeru KANEMOTO)
* Default sketchbook folder for linux is now "Arduino"
* Fixed IDE startup bug "Menu has no enabled items"
* Command line build.
* Fixed some language strings (Shigeru KANEMOTO)
* Fix to boards.txt: added Micro and fixed Lilypad bootloader path
* Removed check for ".h" existence in libraries.
* Deleting tab from IDE does not delete from temporary folder
* Fixed NPE when unknown boards/platforms are selected in preferences
* Extended command line build flags
* Undo/Redo move cursor and focus to where the code has been undone/redone
to:
* Removed useless baud rates from serial monitor
* Fixed some minor IDE UI bugs (Shigeru Kanemoto)
* Added support for new 1.5 Library format (https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5:-Library-specification)
* Pass board type from boards.txt (https://github.com/arduino/Arduino/issues/308)
* Display estimated RAM usage after compile (Loren M. Lang)
* Import library menu is now scrollable
* Scrollable menus can now be scrolled with the mouse wheel
Changed lines 17-26 from:
* sam: attachInterrupt() now works also on pins that belongs to PORTD
* sam: portOutputRegister() is now writeable.
* sam: fixed issue on weak-symbol for some interrupt handlers
* sam: fixed BSoD on some Windows machine (louismdavis)
* sam: added CANRX1/CANTX1 pins 88/89 (same physical pin for 66/53)
* sam: fixed analogWrite when used in very thight write loops (V.Dorrich)
* sam: fixed SerialUSB.write() while sending big buffers (Bill Dreschel)
* sam: SerialUSB receive buffer size is now 512 (PeterVH)
* sam: Fixed SerialUSB data handshake when host sends a lot of data (PeterVH, stimmer)
to:
* sam: Fixed delayMicrosecond() when interrupts are disabled
* sam: Upgraded libsam, and added missing modules (CAN, ETH, etc.) (Thibaut Viard)
* sam: Added compatibility for avr/pgmspace.h (Paul Stoffregen)
* sam: Added serialEvent*() support
* sam: Fixed micros() to work with inside interrupts. (stimmer)
* avr: Added support for Flash strings on String class (Jantje)
* Added support for floating point numbers in String class (Tevin Zhang, SebiTimeWaster)
* sam: Fixed String buffer overflows (Paul Stoffregen)
* avr: Added recipe for assembly files (C. A. Church)
* avr: Use analogPinToChannel if it's defined (Kristian Sloth Lauszus)
* avr: Optimized HardwareSerial buffer (Matthijs Kooijman)
* removed unused flags from String (free 1 byte of SRAM)
Changed lines 31-34 from:
* sam: Added Servo library
* sam: Added WiFi library
* Fixed USBHost MouseController example
to:
* sam: Added CAN library (still in early stage of development) (Palliser)
* sam: Bugfix SPI library: begin() after end() now works (stimmer)
* sam: Bugfix SPI library: incorrent pin configuration in non-extended mode.
* Ported all libraries to new 1.5 format
* Updated Firmata to version 2.3.6 (Jeff Hoefs)

[firmwares]
* Arduino Due: fixed USB2Serial garbage at startup (https://github.com/arduino/Arduino/pull/1267)
Changed lines 41-55 from:
* Merged all improvements made in Arduino IDE 1.0.3
* Merged all improvements made in Arduino IDE 1.0.4 (not yet released)

ARDUINO 1.5.1r2 BETA - 2012.11.06

* Fixed wrong release file for windows.

ARDUINO 1.5.1 BETA - 2012.11.05

* Merged changes coming from stable release of Arduino IDE 1.0.2.

[arduino core]
* added support for yield() function in Arduino Core. This is a
preliminar step for experimenting with cooperative Schedulers.
to:
* Merged all improvements made in Arduino IDE 1.0.5

ARDUINO 1.5.2 BETA - 2013.02.06
Added lines 46-92:
* Scrollable editor tabs (Shigheru KANEMOTO)
* Scrollable menus
* Portable Arduino (Shigeru KANEMOTO)
* Default sketchbook folder for linux is now "Arduino"
* Fixed IDE startup bug "Menu has no enabled items"
* Command line build.
* Fixed some language strings (Shigeru KANEMOTO)
* Fix to boards.txt: added Micro and fixed Lilypad bootloader path
* Removed check for ".h" existence in libraries.
* Deleting tab from IDE does not delete from temporary folder
* Fixed NPE when unknown boards/platforms are selected in preferences
* Extended command line build flags
* Undo/Redo move cursor and focus to where the code has been undone/redone

[arduino core]
* sam: attachInterrupt() now works also on pins that belongs to PORTD
* sam: portOutputRegister() is now writeable.
* sam: fixed issue on weak-symbol for some interrupt handlers
* sam: fixed BSoD on some Windows machine (louismdavis)
* sam: added CANRX1/CANTX1 pins 88/89 (same physical pin for 66/53)
* sam: fixed analogWrite when used in very thight write loops (V.Dorrich)
* sam: fixed SerialUSB.write() while sending big buffers (Bill Dreschel)
* sam: SerialUSB receive buffer size is now 512 (PeterVH)
* sam: Fixed SerialUSB data handshake when host sends a lot of data (PeterVH, stimmer)

[libraries]
* sam: Added Servo library
* sam: Added WiFi library
* Fixed USBHost MouseController example

[other]
* Merged all improvements made in Arduino IDE 1.0.3
* Merged all improvements made in Arduino IDE 1.0.4 (not yet released)

ARDUINO 1.5.1r2 BETA - 2012.11.06

* Fixed wrong release file for windows.

ARDUINO 1.5.1 BETA - 2012.11.05

* Merged changes coming from stable release of Arduino IDE 1.0.2.

[arduino core]
* added support for yield() function in Arduino Core. This is a
preliminar step for experimenting with cooperative Schedulers.

[ide]
May 17, 2013, at 05:49 PM by Cristian -Vacuum- Maglie -
Changed lines 82-83 from:
ARDUINO 1.0.4 - 2013.03.11
to:
ARDUINO 1.0.5 - 2013.05.15
Changed lines 86-87 from:
* Fixed malloc bug (Paul Stoffregen)
to:
* [avr] malloc bug: backported avr-libc 1.8.0 implementation
* [avr] removed deprecated interrupt handlers causing compiler issues
with newer avr-gcc.
* [avr] added c_str() method to String
* [avr] Stream "_timeout" field and related methods are now protected
Added lines 94-116:
* Upgrades to WiFi library
* Fixed a bunch of examples
* Added Arduino Robot libraries
* Added TFT display library

[firmwares]

* Upgrades to WiFi firmwares

[ide]

* Backport from 1.5: install Library from .zip file or folder
* Updated windows drivers
* Added Windows installer

ARDUINO 1.0.4 - 2013.03.11

[core]

* Fixed malloc bug (Paul Stoffregen)

[libraries]
March 11, 2013, at 03:32 PM by Cristian -Vacuum- Maglie -
Changed lines 82-83 from:
ARDUINO 1.0.4 - Not yet released.
to:
ARDUINO 1.0.4 - 2013.03.11
Changed lines 93-94 from:
to:
* Added GSM library
Added lines 102-106:
[bootloaders]

* Fixed a bunch of bugs on Mega2560's bootloader (Mark Sproul)
(https://github.com/arduino/Arduino/pull/1183)
February 06, 2013, at 07:08 PM by Cristian -Vacuum- Maglie -
Changed lines 5-26 from:
ARDUINO 1.0.3 - 2012.12.10

[hardware]

* Added support for the Arduino Esplora

[environment]

* Signed application for MacOSX 10.8

[core]

* Fixed power-up-starts-bootloader in Leonardo (and derivative)
bootloaders. (Kristian Lauszus)
(https://github.com/arduino/Arduino/pull/118)

* Fixed digital_pin_to_timer_PGM array in Leonardo variant.

* Published updated Wifi firmware

* Updated source code for atmega8 bootloader
to:
ARDUINO 1.5.2 BETA - 2013.02.06

[ide]
* Scrollable editor tabs (Shigheru KANEMOTO)
* Scrollable menus
* Portable Arduino (Shigeru KANEMOTO)
* Default sketchbook folder for linux is now "Arduino"
* Fixed IDE startup bug "Menu has no enabled items"
* Command line build.
* Fixed some language strings (Shigeru KANEMOTO)
* Fix to boards.txt: added Micro and fixed Lilypad bootloader path
* Removed check for ".h" existence in libraries.
* Deleting tab from IDE does not delete from temporary folder
* Fixed NPE when unknown boards/platforms are selected in preferences
* Extended command line build flags
* Undo/Redo move cursor and focus to where the code has been undone/redone

[arduino core]
* sam: attachInterrupt() now works also on pins that belongs to PORTD
* sam: portOutputRegister() is now writeable.
* sam: fixed issue on weak-symbol for some interrupt handlers
* sam: fixed BSoD on some Windows machine (louismdavis)
* sam: added CANRX1/CANTX1 pins 88/89 (same physical pin for 66/53)
* sam: fixed analogWrite when used in very thight write loops (V.Dorrich)
* sam: fixed SerialUSB.write() while sending big buffers (Bill Dreschel)
* sam: SerialUSB receive buffer size is now 512 (PeterVH)
* sam: Fixed SerialUSB data handshake when host sends a lot of data (PeterVH, stimmer)
Changed lines 34-39 from:

* Added 600 baud support in SoftwareSerial (Sébastien Jean)
(http://github.com/arduino/Arduino/issues/1146)

ARDUINO 1.0.2 - 2012.11.05
to:
* sam: Added Servo library
* sam: Added WiFi library
* Fixed USBHost MouseController example

[other]
* Merged all improvements made in Arduino IDE 1.0.3
* Merged all improvements made in Arduino IDE 1.0.4 (not yet released)

ARDUINO 1.5.1r2 BETA - 2012.11.06

* Fixed wrong release file for windows.

ARDUINO 1.5.1 BETA - 2012.11.05

* Merged changes coming from stable release of Arduino IDE 1.0.2.

[arduino core]
* added support for yield() function in Arduino Core. This is a
preliminar step for experimenting with cooperative Schedulers.

[ide]
* Simplified boards menu selection. (new boards.txt file format with
custom sub-menus).
* Fixed "FAT" (multi-platform) library detection. This bug caused
many libraries to be detected as 'invalid'.

[sam arduino core]
* attachInterrupt() and detachInterrupt() are now working.
* Fixed macros to query low level GPIO registers:
digitalPinToBitMask(), digitalPinToTimer(),
portOutputRegister, portInputRegister()
* Fixed analogWrite() on DAC0/1 when writing on both DACs
(thanks to smay4finger)

[firmwares]
* Added firmware for atmega16u2 on Due Board.

ARDUINO 1.5 BETA - 2012.10.22

* First release for the unified IDE for both AVR 8-bit and ARM 32-bit
(SAM3 CPUs) architectures.
* This release include the SAM Arduino Core used in the Arduino Due
Board.
* Everything is in beta, most features or libraries are still missing
or incomplete.
* For more info refer to this press release:
http://arduino.cc/blog/2012/10/22/arduino-1-5-support-for-the-due-and-other-processors-easier-library-installation-simplified-board-menu-etc/

ARDUINO 1.0.4 - Not yet released.

[core]

* Fixed malloc bug (Paul Stoffregen)

[libraries]

* Fixed memory leak when calling Ethernet.begin() multiple times.
* Fixed SD example listfiles.ino
* Fixed a lot of Esplora examples

[environment]

* Sort entries in preferences.txt (Shigeru Kanemoto)
* Fixed some wrong translations
* Fixed NPE due to permissions IO error
* Updated drivers for Windows (all-in-one, signature for Win8)

ARDUINO 1.0.3 - 2012.12.10
Changed lines 105-112 from:
* Added support for the Arduino Micro.

* Added support for the LilyPad Arduino USB.

* For Arduino Mega, having avrdude use "wiring" not "stk500v2" for
uploads (to improve auto-reset behavior).
http://code.google.com/p/arduino/issues/detail?id=806
to:
* Added support for the Arduino Esplora
Added lines 109-141:
* Signed application for MacOSX 10.8

[core]

* Fixed power-up-starts-bootloader in Leonardo (and derivative)
bootloaders. (Kristian Lauszus)
(https://github.com/arduino/Arduino/pull/118)

* Fixed digital_pin_to_timer_PGM array in Leonardo variant.

* Published updated Wifi firmware

* Updated source code for atmega8 bootloader

[libraries]

* Added 600 baud support in SoftwareSerial (Sébastien Jean)
(http://github.com/arduino/Arduino/issues/1146)

ARDUINO 1.0.2 - 2012.11.05

[hardware]

* Added support for the Arduino Micro.

* Added support for the LilyPad Arduino USB.

* For Arduino Mega, having avrdude use "wiring" not "stk500v2" for
uploads (to improve auto-reset behavior).
http://code.google.com/p/arduino/issues/detail?id=806

[environment]
December 10, 2012, at 02:48 PM by Federico -
Changed lines 4-5 from:
ARDUINO 1.0.2 - 2012.11.05
to:

ARDUINO 1.0.3 - 2012.12.10
Changed lines 9-16 from:
* Added support for the Arduino Micro.

* Added support for the LilyPad Arduino USB.

* For Arduino Mega, having avrdude use "wiring" not "stk500v2" for
uploads (to improve auto-reset behavior).
http://code.google.com/p/arduino/issues/detail?id=806
to:
* Added support for the Arduino Esplora
Added lines 13-45:
* Signed application for MacOSX 10.8

[core]

* Fixed power-up-starts-bootloader in Leonardo (and derivative)
bootloaders. (Kristian Lauszus)
(https://github.com/arduino/Arduino/pull/118)

* Fixed digital_pin_to_timer_PGM array in Leonardo variant.

* Published updated Wifi firmware

* Updated source code for atmega8 bootloader

[libraries]

* Added 600 baud support in SoftwareSerial (Sébastien Jean)
(http://github.com/arduino/Arduino/issues/1146)

ARDUINO 1.0.2 - 2012.11.05

[hardware]

* Added support for the Arduino Micro.

* Added support for the LilyPad Arduino USB.

* For Arduino Mega, having avrdude use "wiring" not "stk500v2" for
uploads (to improve auto-reset behavior).
http://code.google.com/p/arduino/issues/detail?id=806

[environment]
Deleted line 450:
Deleted line 451:
Changed lines 453-456 from:

* Including source code to the stk500v2 bootloader used by
Mega 2560.
to:
* Including source code to the stk500v2 bootloader used by Mega 2560.
Changed lines 526-527 from:
0018 - 2010.01.29
to:
ARDUINO 0018 - 2010.01.29
Changed lines 562-563 from:
0017 - 2009.07.25
to:
ARDUINO 0017 - 2009.07.25
Changed lines 591-593 from:

0016 - 2009.05.30
to:
ARDUINO 0016 - 2009.05.30
Changed lines 622-624 from:

0015 - 2009.03.26
to:
ARDUINO 0015 - 2009.03.26
Changed lines 632-634 from:

0014 - 2009.03.07
to:
ARDUINO 0014 - 2009.03.07
Changed lines 646-648 from:

0013 - 2009.02.06
to:
ARDUINO 0013 - 2009.02.06
Added lines 652-654:
* Adding support for the ATmega328. The upload speed is 57600 baud, so you
may need to edit boards.txt or reburn your bootloader if you bought an
ATmega328 w/ bootloader from adafruit or other supplier.
Deleted lines 674-676:
* Adding support for the ATmega328. The upload speed is 57600 baud, so you
may need to edit boards.txt or reburn your bootloader if you bought an
ATmega328 w/ bootloader from adafruit or other supplier.
Changed lines 681-683 from:

0012 - 2008.09.18
to:
ARDUINO 0012 - 2008.09.18
Changed lines 711-734 from:

0011 - 2008.03.28

* Improved reliability for uploading to Arduino BT.
* Better support for bootloader burning with a parallel programmer.
* Fixed Find in Reference.
* Added map() function for mapping values from one range to another.
* Added analogReference() function.
* Added interrupts() and noInterrupts() functions.
* Added degrees() and radians() functions.
* Added timeout parameter (in microseconds) to pulseIn(); default is 1 second.
* Support for uploading sketch using a programmer.
* Improved detection of functions that need prototyping.
* Placing function prototypes after #include's and #define's.
* No longer moving #include statements to the top of the sketch.
* Can now drag .pde files onto the Arduino dock icon on Mac OS X.
Thanks to Peter Sgouros.
* New script for downloading the reference from Tom Pollard. Thanks Tom!
* Miscellaneous Mac OS X and other patches from Wim Lewis. Thanks Wim!
* Updated Mac OS X FTDI drivers.


0010 - 2007.10.11
to:
ARDUINO 0011 - 2008.03.28

* Fixed Find in Reference.
* Added map() function for mapping values from one range to another.
* Added analogReference() function.
* Added interrupts() and noInterrupts() functions.
* Added degrees() and radians() functions.
* Added timeout parameter (in microseconds) to pulseIn(); default is 1 second.
* Support for uploading sketch using a programmer.
* Improved detection of functions that need prototyping.
* Placing function prototypes after #include's and #define's.
* No longer moving #include statements to the top of the sketch.
* Can now drag .pde files onto the Arduino dock icon on Mac OS X.
Thanks to Peter Sgouros.
* New script for downloading the reference from Tom Pollard. Thanks Tom!
* Miscellaneous Mac OS X and other patches from Wim Lewis. Thanks Wim!
* Updated Mac OS X FTDI drivers.

ARDUINO 0010 - 2007.10.11
Changed lines 747-749 from:

0009 - 2007.08.06
to:
ARDUINO 0009 - 2007.08.06
Changed lines 756-758 from:

0008 - 2007.06.09
to:
ARDUINO 0008 - 2007.06.09
Changed lines 775-777 from:

0007 - 2006.12.25
to:
ARDUINO 0007 - 2006.12.25
Changed lines 795-847 from:

0006 - 2006.10.21

Mac version no longer requires Java 1.5, meaning it should run on 10.3.9.
Added support for analog inputs 6 and 7 and pwm on pins 5 and 6 on the
on the ATmega168 used in the Arduino Mini (extra analog inputs not available
in DIP ATmega168s).
You now select the baud rate for the serial monitor from within the editor
status bar when the serial monitor is running instead of from the Tools menu.
Pressing enter within the serial monitor edit box no longer appends a newline
to the message sent to the board.
Included the Wire (TWI) library from Wiring.
Updated the reference.


0005 - 2006.09.06

Smaller core libraries (~4.5 KB instead of 5.5 KB).
Applied patch from Hans Steiner to improve Linux support by searching for avr
tools in the user's path instead of expecting them at a fixed location.
Added an upload.verbose preference for help in debugging.
ATmega168 support!
New Wiring-compatible randomSeed(), random(max) and random(min, max) functions
(except operating on longs instead of floats).
Fixed bug that sometimes caused uploading of old versions of a sketch.
Serial monitor nows include an interface to send messages to the Arduino
board. Pressing return appends a newline, pushing the send button doesn't.
Now displaying "burning bootloader..." and "compiling..." status messages.


0004 - 2006.04.26
Main sketch is now compiled as C++ (instead of C).
Updated avr toolchain.
printInteger(), printHex(), etc. now handle longs.
millis() fixed (now overflows after days, not minutes)
Fixed path to java in Windows run.bat.
Added Matrix and Sprite libraries (written with Nicholas Zambetti).
PWM now working on pin 11 (in addition to pins 9 and 10).
Slowed PWM frequency (on all three PWM pins) to 1KHz.
Now give an error if compiled sketch is too big.
Fixed abs(), min(), max(), and constrain() macros.
Added menu items to the IDE to burn bootloader.
Now display binary sketch size on upload, and give error if too big.
Added C++ serial library.
Resynced with Processing/Wiring IDE code (improved auto-format, faster logging
to serial monitor console, other bug fixes)
New library system (gives a few spurious errors when Arduino starts).
Updated to latest version of the RXTX serial library; Mac users will need to
rerun macosx_setup.command.


0003 - 2006.01.16
to:
ARDUINO 0006 - 2006.10.21

* Mac version no longer requires Java 1.5, meaning it should run on 10.3.9.
* Added support for analog inputs 6 and 7 and pwm on pins 5 and 6 on the
on the ATmega168 used in the Arduino Mini (extra analog inputs not available
in DIP ATmega168s).
* You now select the baud rate for the serial monitor from within the editor
status bar when the serial monitor is running instead of from the Tools menu.
* Pressing enter within the serial monitor edit box no longer appends a newline
to the message sent to the board.
* Included the Wire (TWI) library from Wiring.
* Updated the reference.

ARDUINO 0005 - 2006.09.26

* Applied patch from Hans Steiner to improve Linux support by searching for avr
tools in the user's path instead of expecting them at a fixed location.
* Added an upload.verbose preference for help in debugging.
* ATmega168 support!
* New Wiring-compatible randomSeed(), random(max) and random(min, max) functions
(except operating on longs instead of floats).
* Fixed bug that sometimes caused uploading of old versions of a sketch.
* Serial monitor nows include an interface to send messages to the Arduino
board. Pressing return appends a newline, pushing the send button doesn't.
* Now displaying "burning bootloader..." and "compiling..." status messages.

ARDUINO 0004 - 2006.04.26

* Main sketch is now compiled as C++ (instead of C).
* Updated avr toolchain.
* printInteger(), printHex(), etc. now handle longs.
* millis() fixed (now overflows after days, not minutes)
* Fixed path to java in Windows run.bat.
* Added Matrix and Sprite libraries (written with Nicholas Zambetti).
* PWM now working on pin 11 (in addition to pins 9 and 10).
* Slowed PWM frequency (on all three PWM pins) to 1KHz.
* Now give an error if compiled sketch is too big.
* Fixed abs(), min(), max(), and constrain() macros.
* Added menu items to the IDE to burn bootloader.
* Now display binary sketch size on upload, and give error if too big.
* Added C++ serial library.
* Resynced with Processing/Wiring IDE code (improved auto-format, faster logging
to serial monitor console, other bug fixes)
* New library system.
* Updated to latest version of the RXTX serial library; Mac users will need to
rerun macosx_setup.command.

ARDUINO 0003 - 2006.01.16
Changed lines 845-849 from:
Reversed the analog input pins to correspond to newer boards. This means
a call, for example, to analogRead(0) must be changed to analogRead(5) in
order to read the same physical pin.
Added a printNewline() function (which sends '\n' = ASCII 10).
to:
* Reversed the analog input pins to correspond to newer boards. This means
a call, for example, to analogRead(0) must be changed to analogRead(5) in
order to read the same physical pin.
* Added a printNewline() function (which sends '\n' = ASCII 10).
Changed lines 851-859 from:
Reference is included (features native to C not yet documented).
Serial monitor added (click the toolbar button to turn it on or off). Baud
rate is controlled by the Serial Monitor Baud Rate Menu, defaults to 9600. Icon
and implementation from Wiring.
Serial port menu now automatically refreshes when opened.
New blue color scheme and icons courtesy of Noah Shibley (colors are hardcoded
into the source to ensure consistency with image files).
Keyspan and FTDI USB drivers included with Mac and Windows distributions.
to:
* Reference is included (features native to C not yet documented).
* Serial monitor added (click the toolbar button to turn it on or off). Baud
rate is controlled by the Serial Monitor Baud Rate Menu, defaults to 9600.
Icon and implementation from Wiring.
* Serial port menu now automatically refreshes when opened.
* New blue color scheme and icons courtesy of Noah Shibley (colors are hardcoded
into the source to ensure consistency with image files).
* Keyspan and FTDI USB drivers included with Mac and Windows distributions.
Changed lines 861-866 from:
millis() now updates every millisecond instead of every second.
Bootloader included with Windows distribution (it was already in the Mac dist).
Updated icon of the Windows executable.
Now flushing the serial port before uploading (should fix some errors).
Improved accuracy of the delayMicroseconds() function.
to:
* millis() now updates every millisecond instead of every second.
* Bootloader included with Windows distribution (it was already in the Mac
dist).
* Updated icon of the Windows executable.
* Now flushing the serial port before uploading (should fix some errors).
* Improved accuracy of the delayMicroseconds() function.
Changed lines 869-892 from:
Upload rate no longer selectable from a menu within the IDE. Instead, edit the
serial.download_rate item in the preferences.txt file.
Created Xcode project for building Arduino on the Mac (doesn't yet regenerate
the grammar files or package the distribution); active target should be "App".
Removed unused or unimplemented items from menus.


0002 - 2005.10.05
New build process no longer uses makefiles; now controlled by preferences.txt.
core/ replaced with targets/; can now link against Wiring libraries.
Replaced print() with printString, printInteger, printHex, printByte, etc.
Added menu for selecting serial port speed.
Updated icon.
Bootloader shrunk to less than 1 KB; fuses updated accordingly.
Added serialRead(), serialAvailable(), and delayMicroseconds().


0001 - 2005.08.25
This is the first released of the unified IDE + language library
it's a terrible hack... but it works. at the moment it's in alpha stage
but it can be used to work.
The processing preprocessor is included but not used.

=]
to:
* Upload rate no longer selectable from a menu within the IDE. Instead, edit
the serial.download_rate item in the preferences.txt file.
* Created Xcode project for building Arduino on the Mac (doesn't yet regenerate
the grammar files or package the distribution); active target should be "App".
* Removed unused or unimplemented items from menus.

ARDUINO 0002 - 2005.10.05

* New build process no longer uses makefiles; now controlled by preferences.txt.
* core/ replaced with targets/; can now link against Wiring libraries.
* Replaced print() with printString, printInteger, printHex, printByte, etc.
* Added menu for selecting serial port speed.
* Updated icon.
* Bootloader shrunk to less than 1 KB; fuses updated accordingly.
* Added serialRead(), serialAvailable(), and delayMicroseconds().

ARDUINO 0001 - 2005.08.25

* This is the first released of the unified IDE + language library
it's a terrible hack... but it works. at the moment it's in alpha stage
but it can be used to work.
* The processing preprocessor is included but not used.
=]
November 05, 2012, at 04:50 PM by David A. Mellis - Updating for 1.0.2.
Changed lines 4-5 from:
ARDUINO 1.0.1 - 2012.05.21
to:
ARDUINO 1.0.2 - 2012.11.05

[hardware]

* Added support for the Arduino Micro.

* Added support for the LilyPad Arduino USB.

* For Arduino Mega, having avrdude use "wiring" not "stk500v2" for
uploads (to improve auto-reset behavior).
http://code.google.com/p/arduino/issues/detail?id=806
Changed lines 18-64 from:
* The IDE has been internationalized and translated into multiple languages.
Thanks to Shigeru Kanemoto for the internationalization and Japanese
translation and many others for the other translations. For more
information, see: http://arduino.cc/playground/Main/LanguagesIDE

* Added preference for selecting the language in which to display the
Arduino software. Defaults to the operating system locale.

* New upload process for the Arduino Leonardo (ATmega32U4).

* The editor font size preference now applies to the serial monitor and
error / message console as well as the editor. (Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=550

* Compilation has been speeded up by only compiling changed files. (All
files are recompiled when a new board is selected.) (Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=638

* Console log files (stdout.txt and stderr.txt) are now removed when the
Arduino software exits. (Paul Stoffregen)

* The minimum size for the Arduino software window has been reduced.
http://code.google.com/p/arduino/issues/detail?id=52

* Improvements to the Find / Replace dialog. (Peter Lewis)
http://code.google.com/p/arduino/issues/detail?id=825

* Support for selecting words (on double-click) and lines (triple-click)
in the Arduino software. (Peter Lewis)
http://code.google.com/p/arduino/issues/detail?id=824

* Don't insert newline when using serial monitor keyboard
shortcut. (Lars J. Nielsen)
http://code.google.com/p/arduino/issues/detail?id=279

* Added a preference for disabling verification on upload (for increased
speed). (Nathan Seidle)
http://code.google.com/p/arduino/issues/detail?id=842

* Added the gcc toolchain to the Linux distribution. (To use the
toolchain already installed on your system, simply delete the one
that comes with the Arduino software.) (Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=300

* Updating Arduino Mini upload protocol to 'arduino' from 'stk500' (should
fix problems with auto-reset not working).
to:
* Find-In-Reference now works whether or not text is selected.
http://code.google.com/p/arduino/issues/detail?id=940

* Not generating prototypes for functions that already have them.
(Lars J. Nielsen).
http://code.google.com/p/arduino/issues/detail?id=973

* Improved line numbers for error messages. (Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=907

* Automatically create libraries folder in the sketchbook.
(Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=986

* Tutorial on installing libraries (linked from readme.txt in the
libraries folder). (Limor Fried)

* Fix to allow selection of Norwegian. (Rune Fauske)

* Fix to race condition / occasional error in compilation. (gandrewstone)
http://code.google.com/p/arduino/issues/detail?id=950

* Don't break long C++ comments during auto-format.
http://code.google.com/p/arduino/issues/detail?id=255
Added lines 45-145:
* Included WiFi library and wifi shield firmware.

* Added ability to specify serial configuration (data bits, stop bits
and parity check) in Serial.begin(). (Alarus)
http://code.google.com/p/arduino/issues/detail?id=770

* Avoided overruns of the incoming serial (CDC) buffer on the Leonardo.
(Peter Van Hoyweghen)

* Avoided auto-reset of the Leonardo when opening serial port after
upload without specifying a baud rate. (Peter Van Hoyweghen)

* Fix for tone() on the Leonardo. (Shigeru Kanemoto)
http://code.google.com/p/arduino/issues/detail?id=960

* Fix for SD library on Leonardo.
http://code.google.com/p/arduino/issues/detail?id=931

* Added other write functions on Leonardo.
http://code.google.com/p/arduino/issues/detail?id=958

* Added support for Leonardo interrupts 2 and 3. (Kristian Lauszus)

* Print ovf, inf, or nan accordingly in Serial.print(). (Nick Gammon)
http://code.google.com/p/arduino/issues/detail?id=946
http://code.google.com/p/arduino/issues/detail?id=961
http://code.google.com/p/arduino/issues/detail?id=967

* Fix initialization of SPI data lines. (gandrewstone)
http://code.google.com/p/arduino/issues/detail?id=888

* Serial.flush() waits for last byte to transmit. (michele.mazzucchi)
http://code.google.com/p/arduino/issues/detail?id=871

* Adding overloads so Serial.write(0) works.
http://code.google.com/p/arduino/issues/detail?id=1006

[build]

* Fix Linux arduino script when there are spaces in directory name.

* Pass Linux command line arguments from arduino script through to the
Java code. (Allows specifying sketch to open on command line.)

[examples]

* Included examples for the starter kit.

ARDUINO 1.0.1 - 2012.05.21

[environment]

* The IDE has been internationalized and translated into multiple languages.
Thanks to Shigeru Kanemoto for the internationalization and Japanese
translation and many others for the other translations. For more
information, see: http://arduino.cc/playground/Main/LanguagesIDE

* Added preference for selecting the language in which to display the
Arduino software. Defaults to the operating system locale.

* New upload process for the Arduino Leonardo (ATmega32U4).

* The editor font size preference now applies to the serial monitor and
error / message console as well as the editor. (Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=550

* Compilation has been speeded up by only compiling changed files. (All
files are recompiled when a new board is selected.) (Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=638

* Console log files (stdout.txt and stderr.txt) are now removed when the
Arduino software exits. (Paul Stoffregen)

* The minimum size for the Arduino software window has been reduced.
http://code.google.com/p/arduino/issues/detail?id=52

* Improvements to the Find / Replace dialog. (Peter Lewis)
http://code.google.com/p/arduino/issues/detail?id=825

* Support for selecting words (on double-click) and lines (triple-click)
in the Arduino software. (Peter Lewis)
http://code.google.com/p/arduino/issues/detail?id=824

* Don't insert newline when using serial monitor keyboard
shortcut. (Lars J. Nielsen)
http://code.google.com/p/arduino/issues/detail?id=279

* Added a preference for disabling verification on upload (for increased
speed). (Nathan Seidle)
http://code.google.com/p/arduino/issues/detail?id=842

* Added the gcc toolchain to the Linux distribution. (To use the
toolchain already installed on your system, simply delete the one
that comes with the Arduino software.) (Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=300

* Updating Arduino Mini upload protocol to 'arduino' from 'stk500' (should
fix problems with auto-reset not working).

[core / libraries]
May 22, 2012, at 08:39 AM by David A. Mellis - adding Arduino 1.0.1 release notes.
Changed lines 4-5 from:
ARDUINO 1.0 - 2011.11.30
to:
ARDUINO 1.0.1 - 2012.05.21
Changed lines 8-25 from:
* The file extension for sketches has changed from .pde to .ino, to avoid
conflicts with the Processing software ("ino" are the last three letters
in "Arduino").

* There are a new set of toolbar icons, including a checkmark icon to
verify (compile) a sketch and an arrow for upload. The serial monitor
icon has moved to the right of the toolbar. Also, shift-clicking the
upload icon now uploads using a programmer (selected in the Tools menu).
You can still enable verbose output in the preferences dialog. (Icons
were designed by Nicholas Zambetti.)

* There’s a new color scheme and about image for the IDE (by ToDo.to.it).

* The name of the currently selected board and serial port are now shown
at the bottom of the editor. (Code from Wiring.)

* A progress bar is displayed during compilation and upload. (from Wiring.)
to:
* The IDE has been internationalized and translated into multiple languages.
Thanks to Shigeru Kanemoto for the internationalization and Japanese
translation and many others for the other translations. For more
information, see: http://arduino.cc/playground/Main/LanguagesIDE

* Added preference for selecting the language in which to display the
Arduino software. Defaults to the operating system locale.

* New upload process for the Arduino Leonardo (ATmega32U4).

* The editor font size preference now applies to the serial monitor and
error / message console as well as the editor. (Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=550

* Compilation has been speeded up by only compiling changed files. (All
files are recompiled when a new board is selected.) (Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=638

* Console log files (stdout.txt and stderr.txt) are now removed when the
Arduino software exits. (Paul Stoffregen)

* The minimum size for the Arduino software window has been reduced.
http://code.google.com/p/arduino/issues/detail?id=52

* Improvements to the Find / Replace dialog. (Peter Lewis)
http://code.google.com/p/arduino/issues/detail?id=825

* Support for selecting words (on double-click) and lines (triple-click)
in the Arduino software. (Peter Lewis)
http://code.google.com/p/arduino/issues/detail?id=824

* Don't insert newline when using serial monitor keyboard
shortcut. (Lars J. Nielsen)
http://code.google.com/p/arduino/issues/detail?id=279

* Added a preference for disabling verification on upload (for increased
speed). (Nathan Seidle)
http://code.google.com/p/arduino/issues/detail?id=842

* Added the gcc toolchain to the Linux distribution. (To use the
toolchain already installed on your system, simply delete the one
that comes with the Arduino software.) (Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=300

* Updating Arduino Mini upload protocol to 'arduino' from 'stk500' (should
fix problems with auto-reset not working).
Added lines 57-146:
* Updated (and official) support for the Arduino Leonardo (ATmega32U4).
Includes new bootloader and various fixes to the core.

* Adding overloads to Wire.write() (for Wire.write(0)). (Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=527

* Fixing delayMicroseconds() for 20 MHz clocks (Erdem U. Altinyurt)
http://code.google.com/p/arduino/issues/detail?id=306

* Support third external interrupt on ATmega1284P. (maniacbug)
http://code.google.com/p/arduino/issues/detail?id=728

* Update reference voltage constants for ATmega1284P. (maniacbug)
http://code.google.com/p/arduino/issues/detail?id=728

* Adding --relax linker flag for ATmega2560. (arducopter)
http://code.google.com/p/arduino/issues/detail?id=729

* Fixing Ethernet library bug on avr-gcc 4.5.1 (SurferTim)
http://code.google.com/p/arduino/issues/detail?id=605

* Fixed DHCP hostname generation. (peter)

* Simplifying microseconds to clock cycles conversions (Rob Tillaart)
http://code.google.com/p/arduino/issues/detail?id=675

* Fixed various warnings. (maniacbug)
http://code.google.com/p/arduino/issues/detail?id=688

* Fixed bug w/ repeated initial characters in findUntil(). (Jeffery.zksun)
http://code.google.com/p/arduino/issues/detail?id=768

* Added INPUT_PULLUP option for pinMode(). The INPUT mode now explicitly
disables the pullup resistors. (Paul Stoffregen)
http://code.google.com/p/arduino/issues/detail?id=246

* Fixing bug in the receiving of multiple UDP packets. (dylan and peter)
http://code.google.com/p/arduino/issues/detail?id=669

* Added ability to generate repeated starts in the Wire library (in
master mode). Extra boolean parameters to endTransmission() and
requestFrom() control whether or not to send a stop (or a repeated
start instead). (Todd Krein)
http://code.google.com/p/arduino/issues/detail?id=663

* Added Ethernet.maintain() to renew DHCP leases. (Peter Magnusson)
http://code.google.com/p/arduino/issues/detail?id=716

* Fix for CLOSE_WAIT bug that could cause Ethernet sketches to crash
over time. (mr-russ and Johann Richard)

* Fix to servo pulse timing calculation. (jwatte)
http://code.google.com/p/arduino/issues/detail?id=908

* Added readString() and readStringUntil() functions. (Adrian McEwen)
http://code.google.com/p/arduino/issues/detail?id=454

[examples]

* Updated to latest ArduinoISP sketch. (rsbohn)
http://code.google.com/p/arduino/issues/detail?id=378

* Fixed ArduinoISP sketch by lowering delay() in heartbeat.

* Other updates.

ARDUINO 1.0 - 2011.11.30

[environment]

* The file extension for sketches has changed from .pde to .ino, to avoid
conflicts with the Processing software ("ino" are the last three letters
in "Arduino").

* There are a new set of toolbar icons, including a checkmark icon to
verify (compile) a sketch and an arrow for upload. The serial monitor
icon has moved to the right of the toolbar. Also, shift-clicking the
upload icon now uploads using a programmer (selected in the Tools menu).
You can still enable verbose output in the preferences dialog. (Icons
were designed by Nicholas Zambetti.)

* There’s a new color scheme and about image for the IDE (by ToDo.to.it).

* The name of the currently selected board and serial port are now shown
at the bottom of the editor. (Code from Wiring.)

* A progress bar is displayed during compilation and upload. (from Wiring.)

[core / libraries]
December 01, 2011, at 03:26 PM by David A. Mellis - Adding Arduino 1.0 release notes.
Changed lines 4-11 from:
ARDUINO 0023 - 2011.11.09

* Added .inf files for R3 boards.
* Updated to optiboot 4.4.
* Included combined firmwares for ATmega16U2.

ARDUINO 0022 - 2010.12.24
to:
ARDUINO 1.0 - 2011.11.30

[environment]

* The file extension for sketches has changed from .pde to .ino, to avoid
conflicts with the Processing software ("ino" are the last three letters
in "Arduino").

* There are a new set of toolbar icons, including a checkmark icon to
verify (compile) a sketch and an arrow for upload. The serial monitor
icon has moved to the right of the toolbar. Also, shift-clicking the
upload icon now uploads using a programmer (selected in the Tools menu).
You can still enable verbose output in the preferences dialog. (Icons
were designed by Nicholas Zambetti.)

* There’s a new color scheme and about image for the IDE (by ToDo.to.it).

* The name of the currently selected board and serial port are now shown
at the bottom of the editor. (Code from Wiring.)

* A progress bar is displayed during compilation and upload. (from Wiring.)
Added lines 28-144:
* Serial transmission is now asynchronous - that is, calls to
Serial.print(), etc. add data to an outgoing buffer which is transmitted
in the background. Also, the Serial.flush() command has been repurposed
to wait for outgoing data to be transmitted, rather than dropping
received incoming data.

* The behavior of Serial.print() on a byte has been changed to align it
with the other numeric data types. In particular, it will now print
the digits of its argument as separate ASCII digits (e.g. '1', '2', '3')
rather than a single byte. The BYTE keyword has been removed. To send a
single byte of data, use Serial.write() (which is present in Arduino 0022
as well).

* The Serial class (as well as other classes inheriting from Stream, like
EthernetClient, SoftwareSerial, Wire and more) now contains functions
for parsing incoming data, based on the TextFinder library by Michael
Margolis. They include find() and findUntil() to search for data,
parseInt() and parseFloat() for converting incoming characters into
numeric values, and readBytes() and readBytesUntil() for reading
multiple bytes into a buffer. They use a timeout that can be set with the
new setTimeout().

* The SoftwareSerial class has been reimplemented, using the code originally
written for the NewSoftSerial library by Mikal Hart. This allows for
multiple simultaneous instances, although only one can receive at a time.

* Support has been added for printing strings stored in flash (program
memory) rather than RAM. Wrap double-quoted strings in F() to indicate
that they should be stored in flash, e.g. Serial.print(F("hello world")).

* The String class has been reimplemented as well, by Paul Stoffregen. This
new version is more memory-efficient and robust. Some functions which
previously returned new string instances (e.g. trim() and toUpperCase())
have been changed to instead modify strings in place.

* Support for DHCP and DNS has been added to the Ethernet library, thanks
to integration by Adrian McEwen. Most classes in the Ethernet library
have been renamed to add a "Ethernet" prefix and avoid conflicts with
other networking libraries. In particular, "Client" is now
"EthernetClient", "Server" is "EthernetServer", and "UDP" is
"EthernetUDP". A new IPAddress class makes it easier to manipulate
those values.

* The UDP API has been changed to be more similar to other libraries.
Outgoing packets are now constructed using calls to the standard write(),
print(), and println() functions – bracketed by beginPacket() and
endPacket(). The parsePacket() function checks for and parses an
incoming packet, which can then be read using available(), read(), and
peek(). The remoteIP() and remotePort() functions provide information
about the packet’s origin. (Again, thanks to Adrian McEwen for the
implementation.)

* The Wire library has also been modified to use the standard read() and
write() functions instead of send() and receive(). You can also use
print() and println() for outgoing data.

* The SD library now supports multiple simultaneous open files. It also
provides the isDirectory(), openNextFile(), and rewindDirectory()
functions for iterating through all the files in a directory. (Thanks
to Limor Fried.)

[boards / firmwares]

* Added the Arduino Mini w/ ATmega328.

* Added Windows drivers (.inf files) and 16U2 firmware (.hex files) for
the rev. 3 boards (Uno, Mega, and Mega ADK).

[internals]

* The WProgram.h file, which provides declarations for the Arduino API,
has been renamed to Arduino.h. To create a library that will work in
both Arduino 0022 and Arduino 1.0, you can use an #ifdef that checks
for the ARDUINO constant, which was 22 and is now 100. For example:

#if defined(ARDUINO) && ARDUINO >= 100
#include "Arduino.h"
#else
#include "WProgram.h"
#endif

* The write(), print(), and println() functions in Stream now return a
size_t (instead of void). This indicates the number of bytes actually
written by the function. Any classes that inherit from Stream will need
to change accordingly. Additionally the write(str) function has been
given a concrete implementation – it calls write(buf, len) - so
sub-classes don't need to (and shouldn't) implement it.

* There are new abstract base-classes for Client, Server, and UDP to
provide portability across networking libraries.

* The pin definitions for the Arduino boards (i.e. the mappings from pin
numbers to port register / bit pairs) is now stored in a sub-folder of
a new variants/ folder in the hardware folder. The variant to use for
a given board is specified by the BOARD.build.variant preference in the
boards.txt file.

* The new, variant-specific pins_arduino.h files now provides additional
macros with information about the characteristics of the board (e.g.
the locations of the SPI and TWI pins, and the number of digital and
analog pins).

* The avrdude included with the Mac and Windows versions of the Arduino
software has been upgraded to avrdude 5.11 (from an Arduino-specific
version of avrdude 5.4). The software now uses the "arduino" programmer
type in place of "stk500v1" for uploading to most Arduino boards.

ARDUINO 0023 - 2011.11.09

* Added .inf files for R3 boards.
* Updated to optiboot 4.4.
* Included combined firmwares for ATmega16U2.

ARDUINO 0022 - 2010.12.24

[core / libraries]
November 10, 2011, at 08:15 PM by David A. Mellis -
Changed lines 4-9 from:
to:
ARDUINO 0023 - 2011.11.09

* Added .inf files for R3 boards.
* Updated to optiboot 4.4.
* Included combined firmwares for ATmega16U2.
December 24, 2010, at 11:25 PM by David A. Mellis - Release notes for 0022.
Changed lines 5-25 from:
ARDUINO 0021 - 2010.10.02

* Modifying VID / PID combination in 8U2 firmwares.
* Fixing analogWrite() bug on pins 9 and 10 (Arduino Uno).
* Patched RXTX to include /dev/ttyACM* on Linux.

ARDUINO 0020 - 2010.09.27

* Added support for the Arduino Uno and Arduino Mega 2560.

* Including ATmega8U2 firmware used by Uno and Mega 2560.

* Including source code to optiboot bootloader used by the Uno.

* Including source code to the stk500v2 bootloader used by
Mega 2560.

* New application icon (by ToDo).

ARDUINO 0019 - 2010.09.03
to:
ARDUINO 0022 - 2010.12.24
Changed lines 9-44 from:
* Revised Ethernet library (by Christian Maglie). This depends on the
new SPI library, so existing sketches will need: #include <SPI.h>
added to the top of their code.

* Added an SPI library (by Christian Maglie).
http://code.google.com/p/arduino/issues/detail?id=240

* Added aliases for the analog input pins: A0, A1, etc.
http://code.google.com/p/arduino/issues/detail?id=244

* Added a String class.

* Added a shiftIn() function (from Wiring).
http://code.google.com/p/arduino/issues/detail?id=280

* Updated version of Firmata supports Mega and capability querying.

* More accurate delay() function from BenF.
http://code.google.com/p/arduino/issues/detail?id=237

* Re-enabling PWM after tone() ends.
http://code.google.com/p/arduino/issues/detail?id=228

* Added Serial.peek() method.
http://code.google.com/p/arduino/issues/detail?id=270

* Added Stream base class to Serial object (w/ available(), read() and
the write(), print(), and println() functions from the Print class).
http://code.google.com/p/arduino/issues/detail?id=60

* Disabling interrupts while digitalWrite() and pinMode() write to pins.
http://code.google.com/p/arduino/issues/detail?id=146

* Replacing INTERNAL analog reference with INTERNAL1V1 AND INTERNAL2V56 on
the Arduino Mega. http://code.google.com/p/arduino/issues/detail?id=194
to:
* Adding an SD card library based on sdfatlib by Bill Greiman and the
MemoryCard library by Philip Lindsay (follower) for SparkFun.
http://arduino.cc/en/Reference/SD

* Added character manipulation macros (from Wiring): isAlphaNumeric(),
isAlpha(), isAscii(), isWhitespace(), isControl(), isDigit(), isGraph(),
isLowerCase(), isPrintable(), isPunct(), isSpace(), isUpperCase(),
isHexadecimalDigit(), toAscii(), toLowerCase(), toLowerCase().
http://code.google.com/p/arduino/issues/detail?id=418

* Added String.toInt() function.

* Refactoring core to use register-based, not CPU-based, #ifdefs.
Patch by Mark Sproul.
http://code.google.com/p/arduino/issues/detail?id=307
http://code.google.com/p/arduino/issues/detail?id=315
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
http://code.google.com/p/arduino/issues/detail?id=340

* Modification of serial baud rate calculation to match bootloader and 8U2
firmware at 57600 baud.
http://code.google.com/p/arduino/issues/detail?id=394

* Fixed bug in tone() function.
http://code.google.com/p/arduino/issues/detail?id=361

* Fixed SPI.setClockDivider() function.
http://code.google.com/p/arduino/issues/detail?id=365

* Fixed EEPROM library on Mega 2560.
http://code.google.com/p/arduino/issues/detail?id=381

* Hardware serial receive interrupt optimization.
http://code.google.com/p/arduino/issues/detail?id=391

* Applying the timeout parameter of pulseIn() during measurement of the
pulse, not just while waiting for it.
Changed lines 51-80 from:
* Added Arduino Fio to the boards menu.

* Added Arduino Pro and Pro Mini (5V / 16 MHz) to the boards menu.
http://code.google.com/p/arduino/issues/detail?id=81

* Synchronized with the Processing 1.1 code base, bringing various changes.

* Modified the parsing of avr-gcc / avr-g++ output and error messages.

* Toggling RTS on upload for auto-reset with FTDI cables on Linux.
http://code.google.com/p/arduino/issues/detail?id=309

* Adding control over scrolling in serial monitor.
http://code.google.com/p/arduino/issues/detail?id=97

* Added drop-down for selecting line endings to the serial monitor.
http://code.google.com/p/arduino/issues/detail?id=119

* Fixed problem with tabs of the same name but different extensions.
http://code.google.com/p/arduino/issues/detail?id=191

* Allowing third-party hardware platforms to reference programmers defined
in other platforms. http://code.google.com/p/arduino/issues/detail?id=283

[examples]

* Re-organized and numbered for easier access and better progression.

0018 - 2010.01.29
to:
* Fixed problem with copy as html and angle brackets.
http://code.google.com/p/arduino/issues/detail?id=29

* Showing serial port selection dialog if serial port not found on upload.

* Remembering serial monitor window size and line ending selection.
http://code.google.com/p/arduino/issues/detail?id=96
http://code.google.com/p/arduino/issues/detail?id=330

* Replaced oro.jar regular expressions with java.regex ones (patch by
Eberhard Fahle and Christian Maglie).
http://code.google.com/p/arduino/issues/detail?id=171

* Building the user sketch before the core or libraries, so errors appear
faster. Patch by William Westfield and Paul Stoffregen.
http://code.google.com/p/arduino/issues/detail?id=393

* Setting application icon under Windows.

ARDUINO 0021 - 2010.10.02

* Modifying VID / PID combination in 8U2 firmwares.
* Fixing analogWrite() bug on pins 9 and 10 (Arduino Uno).
* Patched RXTX to include /dev/ttyACM* on Linux.

ARDUINO 0020 - 2010.09.27

* Added support for the Arduino Uno and Arduino Mega 2560.

* Including ATmega8U2 firmware used by Uno and Mega 2560.

* Including source code to optiboot bootloader used by the Uno.

* Including source code to the stk500v2 bootloader used by
Mega 2560.

* New application icon (by ToDo).

ARDUINO 0019 - 2010.09.03
Changed lines 93-101 from:
* Added tone() and noTone() functions for frequency generation.
* Added Serial.end() command.
* Added precision parameter for printing of floats / doubles.
* Incorporated latest version of Firmata.
* Fixed bug w/ disabling use of the RW pin in the LiquidCrystal library.
* No longer disabling interrupts in delayMicroseconds().
* Fixed bug w/ micros() returning incorrect values from within an interrupt.
* Fixed bug that broke use of analog inputs 8-15 on the Mega.
to:
* Revised Ethernet library (by Christian Maglie). This depends on the
new SPI library, so existing sketches will need: #include <SPI.h>
added to the top of their code.

* Added an SPI library (by Christian Maglie).
http://code.google.com/p/arduino/issues/detail?id=240

* Added aliases for the analog input pins: A0, A1, etc.
http://code.google.com/p/arduino/issues/detail?id=244

* Added a String class.

* Added a shiftIn() function (from Wiring).
http://code.google.com/p/arduino/issues/detail?id=280

* Updated version of Firmata supports Mega and capability querying.

* More accurate delay() function from BenF.
http://code.google.com/p/arduino/issues/detail?id=237

* Re-enabling PWM after tone() ends.
http://code.google.com/p/arduino/issues/detail?id=228

* Added Serial.peek() method.
http://code.google.com/p/arduino/issues/detail?id=270

* Added Stream base class to Serial object (w/ available(), read() and
the write(), print(), and println() functions from the Print class).
http://code.google.com/p/arduino/issues/detail?id=60

* Disabling interrupts while digitalWrite() and pinMode() write to pins.
http://code.google.com/p/arduino/issues/detail?id=146

* Replacing INTERNAL analog reference with INTERNAL1V1 AND INTERNAL2V56 on
the Arduino Mega. http://code.google.com/p/arduino/issues/detail?id=194
Added lines 131-173:
* Added Arduino Fio to the boards menu.

* Added Arduino Pro and Pro Mini (5V / 16 MHz) to the boards menu.
http://code.google.com/p/arduino/issues/detail?id=81

* Synchronized with the Processing 1.1 code base, bringing various changes.

* Modified the parsing of avr-gcc / avr-g++ output and error messages.

* Toggling RTS on upload for auto-reset with FTDI cables on Linux.
http://code.google.com/p/arduino/issues/detail?id=309

* Adding control over scrolling in serial monitor.
http://code.google.com/p/arduino/issues/detail?id=97

* Added drop-down for selecting line endings to the serial monitor.
http://code.google.com/p/arduino/issues/detail?id=119

* Fixed problem with tabs of the same name but different extensions.
http://code.google.com/p/arduino/issues/detail?id=191

* Allowing third-party hardware platforms to reference programmers defined
in other platforms. http://code.google.com/p/arduino/issues/detail?id=283

[examples]

* Re-organized and numbered for easier access and better progression.

0018 - 2010.01.29

[core / libraries]

* Added tone() and noTone() functions for frequency generation.
* Added Serial.end() command.
* Added precision parameter for printing of floats / doubles.
* Incorporated latest version of Firmata.
* Fixed bug w/ disabling use of the RW pin in the LiquidCrystal library.
* No longer disabling interrupts in delayMicroseconds().
* Fixed bug w/ micros() returning incorrect values from within an interrupt.
* Fixed bug that broke use of analog inputs 8-15 on the Mega.

[environment]
October 02, 2010, at 10:41 PM by David A. Mellis -
Added lines 5-10:
ARDUINO 0021 - 2010.10.02

* Modifying VID / PID combination in 8U2 firmwares.
* Fixing analogWrite() bug on pins 9 and 10 (Arduino Uno).
* Patched RXTX to include /dev/ttyACM* on Linux.
September 27, 2010, at 05:21 PM by David A. Mellis -
Added lines 5-17:
ARDUINO 0020 - 2010.09.27

* Added support for the Arduino Uno and Arduino Mega 2560.

* Including ATmega8U2 firmware used by Uno and Mega 2560.

* Including source code to optiboot bootloader used by the Uno.

* Including source code to the stk500v2 bootloader used by
Mega 2560.

* New application icon (by ToDo).
September 04, 2010, at 01:55 AM by David A. Mellis -
Changed lines 5-6 from:
0018 - 2010.01.29
to:
ARDUINO 0019 - 2010.09.03
Changed lines 9-17 from:
* Added tone() and noTone() functions for frequency generation.
* Added Serial.end() command.
* Added precision parameter for printing of floats / doubles.
* Incorporated latest version of Firmata.
* Fixed bug w/ disabling use of the RW pin in the LiquidCrystal library.
* No longer disabling interrupts in delayMicroseconds().
* Fixed bug w/ micros() returning incorrect values from within an interrupt.
* Fixed bug that broke use of analog inputs 8-15 on the Mega.
to:
* Revised Ethernet library (by Christian Maglie). This depends on the
new SPI library, so existing sketches will need: #include <SPI.h>
added to the top of their code.

* Added an SPI library (by Christian Maglie).
http://code.google.com/p/arduino/issues/detail?id=240

* Added aliases for the analog input pins: A0, A1, etc.
http://code.google.com/p/arduino/issues/detail?id=244

* Added a String class.

* Added a shiftIn() function (from Wiring).
http://code.google.com/p/arduino/issues/detail?id=280

* Updated version of Firmata supports Mega and capability querying.

* More accurate delay() function from BenF.
http://code.google.com/p/arduino/issues/detail?id=237

* Re-enabling PWM after tone() ends.
http://code.google.com/p/arduino/issues/detail?id=228

* Added Serial.peek() method.
http://code.google.com/p/arduino/issues/detail?id=270

* Added Stream base class to Serial object (w/ available(), read() and
the write(), print(), and println() functions from the Print class).
http://code.google.com/p/arduino/issues/detail?id=60

* Disabling interrupts while digitalWrite() and pinMode() write to pins.
http://code.google.com/p/arduino/issues/detail?id=146

* Replacing INTERNAL analog reference with INTERNAL1V1 AND INTERNAL2V56 on
the Arduino Mega. http://code.google.com/p/arduino/issues/detail?id=194
Added lines 47-89:
* Added Arduino Fio to the boards menu.

* Added Arduino Pro and Pro Mini (5V / 16 MHz) to the boards menu.
http://code.google.com/p/arduino/issues/detail?id=81

* Synchronized with the Processing 1.1 code base, bringing various changes.

* Modified the parsing of avr-gcc / avr-g++ output and error messages.

* Toggling RTS on upload for auto-reset with FTDI cables on Linux.
http://code.google.com/p/arduino/issues/detail?id=309

* Adding control over scrolling in serial monitor.
http://code.google.com/p/arduino/issues/detail?id=97

* Added drop-down for selecting line endings to the serial monitor.
http://code.google.com/p/arduino/issues/detail?id=119

* Fixed problem with tabs of the same name but different extensions.
http://code.google.com/p/arduino/issues/detail?id=191

* Allowing third-party hardware platforms to reference programmers defined
in other platforms. http://code.google.com/p/arduino/issues/detail?id=283

[examples]

* Re-organized and numbered for easier access and better progression.

0018 - 2010.01.29

[core / libraries]

* Added tone() and noTone() functions for frequency generation.
* Added Serial.end() command.
* Added precision parameter for printing of floats / doubles.
* Incorporated latest version of Firmata.
* Fixed bug w/ disabling use of the RW pin in the LiquidCrystal library.
* No longer disabling interrupts in delayMicroseconds().
* Fixed bug w/ micros() returning incorrect values from within an interrupt.
* Fixed bug that broke use of analog inputs 8-15 on the Mega.

[environment]
January 30, 2010, at 12:23 AM by David A. Mellis -
Changed lines 4-8 from:
0017 - 2009.07.25

[documentation / examples]
* Many new and revised examples from Tom Igoe.
to:

0018 - 2010.01.29
Changed lines 8-15 from:
* Updated LiquidCrystal library by Limor Fried. See reference for details.
* Updated Firmata library to version 2.1 (rev. 25).
* Replaced the Servo library with one (MegaServo) by Michael Margolis.
Supports up to 12 servos on most Arduino boards and 48 on the Mega.
* Improving the accuracy of the baud rate calculations for serial
communication (fixing double-speed problems on 8 MHz Arduino boards).
Thanks to gabebear.
to:

* Added tone() and noTone() functions for frequency generation.
* Added Serial.end() command.
* Added precision parameter for printing of floats / doubles.
* Incorporated latest version of Firmata.
* Fixed bug w/ disabling use of the RW pin in the LiquidCrystal library.
* No longer disabling interrupts in delayMicroseconds().
* Fixed bug w/ micros() returning incorrect values from within an interrupt.
* Fixed bug that broke use of analog inputs 8-15 on the Mega.
Added lines 19-55:

* Synchronized with the Processing 1.0.9 code base, bringing various fixes,
including to a bug causing saving to fail when closing the last sketch.

* Added support for third-party hardware in the SKETCHBOOK/hardware folder,
mirroring the current structure of the hardware folder in Arduino.

* Added Ctrl-Shift-M / Command-Shift-M shortcut for serial monitor.

* Hold down shift when pressing the Verify / Compile or Upload toolbar
buttons to generate verbose output (including command lines).

* Moving build (on upload) from the applet/ sub-folder of the sketch
to a temporary directory (fixing problems with uploading examples from
within the Mac OS X disk image or a Linux application directory).

* Fixed bug the prevented the inclusion of .cpp and .h (or .c and .h) files
of the same name in a sketch.

* Improved the Mac OS X disk image (.dmg): added a shortcut to the
Applications folder, a background image with arrow, and new FTDI drivers.

0017 - 2009.07.25

[documentation / examples]
* Many new and revised examples from Tom Igoe.

[core / libraries]
* Updated LiquidCrystal library by Limor Fried. See reference for details.
* Updated Firmata library to version 2.1 (rev. 25).
* Replaced the Servo library with one (MegaServo) by Michael Margolis.
Supports up to 12 servos on most Arduino boards and 48 on the Mega.
* Improving the accuracy of the baud rate calculations for serial
communication (fixing double-speed problems on 8 MHz Arduino boards).
Thanks to gabebear.

[environment]
August 12, 2009, at 01:09 AM by David A. Mellis - Adding Arduino 0017.
Changed lines 4-5 from:
0016 - 2009.05.30
to:
0017 - 2009.07.25
Changed lines 7-9 from:
* New communication examples (w/ corresponding Processing and Max/MSP code) by
Tom Igoe.
to:
* Many new and revised examples from Tom Igoe.
Changed lines 10-22 from:
* Adding support for the Arduino Pro and Pro Mini 3.3V / 8 MHz w/ ATmega328.
* Adding support for the LilyPad Arduino w/ ATmega328.
* Adding write(str) and write(buf, size) methods to Print, Serial, and the
Ethernet library Client and Server classes. This allows for more efficient
(fewer packet) Ethernet communication. (Thanks to mikalhart.)
* Improvements to the way the Ethernet library Client class connects and
disconnects. Should reduce or eliminate failed connections and long
timeouts. (Thanks to Bruce Luckcuck.)
* Optimizing the timer0 overflow interrupt handler (used for millis() and
micros()). Thanks to westfw and mikalhart.
* Fixing bug that limited the bit() macro to 15 bits. Thanks to Paul Badger.
* Adding ARDUINO version constant (thanks to prodding from mikalhart).
to:
* Updated LiquidCrystal library by Limor Fried. See reference for details.
* Updated Firmata library to version 2.1 (rev. 25).
* Replaced the Servo library with one (MegaServo) by Michael Margolis.
Supports up to 12 servos on most Arduino boards and 48 on the Mega.
* Improving the accuracy of the baud rate calculations for serial
communication (fixing double-speed problems on 8 MHz Arduino boards).
Thanks to gabebear.
Changed lines 19-31 from:
* Ordering the items in the Tools > Board menu.
* Adding "Copy as HTML" command to the Tools menu.
* Eliminating (maybe) the occasional "Couldn't determine program size" errors.
Thanks to the Clever Monkey.
* Moving selection of Linux look-and-feel into the arduino script so it can
be changed by users. Thanks to Eberhard Fahle.

[tools]
* Adding automatic dependency generation to the Makefile. (Lars Immisch)


0015 - 2009.03.26
to:
* Synchronized with the Processing 1.0.3 code base (rev. 5503), bringing
many improvements (listed below).
* New icons and about image by Thomas Glaser (envis precisely).
* Support for multiple sketch windows.
* The serial monitor now has its own window.
* Comment / Uncomment menu item (in Edit) and keyboard shortcut.
* Increase and Decrease Indent menu items (in Edit) and keyboard shortcuts.
* Support for third-party libraries in the SKETCHBOOK/libraries folder.
* Libraries are now compiled with the sketch, eliminating the delay when
switching boards and the need to delete .o files when changing library
source code.
* Arduino now comes as an app file (in a dmg) on the Mac.
* Adding the Arduino Nano w/ ATmega328 to the Tools > Board menu.


0016 - 2009.05.30

[documentation / examples]
* New communication examples (w/ corresponding Processing and Max/MSP code) by
Tom Igoe.
Changed lines 41-42 from:
* Adding support for the Arduino Mega (ATmega1280).
to:
* Adding support for the Arduino Pro and Pro Mini 3.3V / 8 MHz w/ ATmega328.
* Adding support for the LilyPad Arduino w/ ATmega328.
* Adding write(str) and write(buf, size) methods to Print, Serial, and the
Ethernet library Client and Server classes. This allows for more efficient
(fewer packet) Ethernet communication. (Thanks to mikalhart.)
* Improvements to the way the Ethernet library Client class connects and
disconnects. Should reduce or eliminate failed connections and long
timeouts. (Thanks to Bruce Luckcuck.)
* Optimizing the timer0 overflow interrupt handler (used for millis() and
micros()). Thanks to westfw and mikalhart.
* Fixing bug that limited the bit() macro to 15 bits. Thanks to Paul Badger.
* Adding ARDUINO version constant (thanks to prodding from mikalhart).
Changed lines 55-64 from:
* Reinstating use of core.a library in the build process, slightly shrinking
compiled sketch sizes. (Thanks to William Westfield.)
* Fixing bug in copy for forum (thanks to eried).


0014 - 2009.03.07

[core / libraries]
* Fixing bug that prevented multiple outgoing Client connections with the
ethernet library.
to:
* Ordering the items in the Tools > Board menu.
* Adding "Copy as HTML" command to the Tools menu.
* Eliminating (maybe) the occasional "Couldn't determine program size" errors.
Thanks to the Clever Monkey.
* Moving selection of Linux look-and-feel into the arduino script so it can
be changed by users. Thanks to Eberhard Fahle.
Deleted lines 61-63:
[environment]
* Clarifying ATmega168 vs. ATmega328 in the Tools > Boards menu.
Changed lines 63-72 from:
* Updating the Mac OS X AVR tools to AVR MacPack 20081213. This includes
avr-gcc 4.3.2, which should fix problems with functions called from
within interrupts.


0013 - 2009.02.06

[documentation / examples]
* Adding examples for Parallax Ping Sensor and Memsic 2125 accelerometer.
to:
* Adding automatic dependency generation to the Makefile. (Lars Immisch)


0015 - 2009.03.26
Changed lines 69-92 from:
* Adding support for printing floats to Print class (meaning that it works
in the Serial, Ethernet, and LiquidCrystal classes too). Includes two
decimal places.
* Added word, word(), bitRead(), bitWrite(), bitSet(), bitClear(), bit(),
lowByte(), and highByte(); see reference for details.
* Working around problem that caused PWM output on pins 5 and 6 to never go
to 0 (causing, for example, an LED to continue to glow faintly).
* Removing cast macros, since function-style casts are a feature of C++. This
should fix contributed libraries that broke in Arduino 0012.
* Modifying pulseIn() to wait for a transition to start timing (i.e. ignoring
any pulse that had already started when the function was called).
* Fixing bug in random() that limited the ranges of values generated. Thanks
to Mikal Hart.
* Modifying delay() to pause for at least the given number of milliseconds.
* Fixing bug in Ethernet library that interfered with use of pins 8 and 9.
* Originating each outgoing network connection from a different port (in the
Client class of the Ethernet library). Thanks to Paul and joquer.
* Updating ATmega168 bootloader to work with standard distributions of avrdude
(responding to signature requests made with the universal SPI command) and
correctly store EEPROM data. Thanks to ladyada.
* Adding support for the ATmega328. The upload speed is 57600 baud, so you
may need to edit boards.txt or reburn your bootloader if you bought an
ATmega328 w/ bootloader from adafruit or other supplier.
to:
* Adding support for the Arduino Mega (ATmega1280).
Added lines 72-122:
* Reinstating use of core.a library in the build process, slightly shrinking
compiled sketch sizes. (Thanks to William Westfield.)
* Fixing bug in copy for forum (thanks to eried).


0014 - 2009.03.07

[core / libraries]
* Fixing bug that prevented multiple outgoing Client connections with the
ethernet library.

[environment]
* Clarifying ATmega168 vs. ATmega328 in the Tools > Boards menu.

[tools]
* Updating the Mac OS X AVR tools to AVR MacPack 20081213. This includes
avr-gcc 4.3.2, which should fix problems with functions called from
within interrupts.


0013 - 2009.02.06

[documentation / examples]
* Adding examples for Parallax Ping Sensor and Memsic 2125 accelerometer.

[core / libraries]
* Adding support for printing floats to Print class (meaning that it works
in the Serial, Ethernet, and LiquidCrystal classes too). Includes two
decimal places.
* Added word, word(), bitRead(), bitWrite(), bitSet(), bitClear(), bit(),
lowByte(), and highByte(); see reference for details.
* Working around problem that caused PWM output on pins 5 and 6 to never go
to 0 (causing, for example, an LED to continue to glow faintly).
* Removing cast macros, since function-style casts are a feature of C++. This
should fix contributed libraries that broke in Arduino 0012.
* Modifying pulseIn() to wait for a transition to start timing (i.e. ignoring
any pulse that had already started when the function was called).
* Fixing bug in random() that limited the ranges of values generated. Thanks
to Mikal Hart.
* Modifying delay() to pause for at least the given number of milliseconds.
* Fixing bug in Ethernet library that interfered with use of pins 8 and 9.
* Originating each outgoing network connection from a different port (in the
Client class of the Ethernet library). Thanks to Paul and joquer.
* Updating ATmega168 bootloader to work with standard distributions of avrdude
(responding to signature requests made with the universal SPI command) and
correctly store EEPROM data. Thanks to ladyada.
* Adding support for the ATmega328. The upload speed is 57600 baud, so you
may need to edit boards.txt or reburn your bootloader if you bought an
ATmega328 w/ bootloader from adafruit or other supplier.

[environment]
June 04, 2009, at 02:20 PM by David A. Mellis -
Changed lines 4-5 from:
0015 - 2009.03.26
to:
0016 - 2009.05.30

[documentation / examples]
* New communication examples (w/ corresponding Processing and Max/MSP code) by
Tom Igoe.
Changed lines 11-12 from:
* Adding support for the Arduino Mega (ATmega1280).
to:
* Adding support for the Arduino Pro and Pro Mini 3.3V / 8 MHz w/ ATmega328.
* Adding support for the LilyPad Arduino w/ ATmega328.
* Adding write(str) and write(buf, size) methods to Print, Serial, and the
Ethernet library Client and Server classes. This allows for more efficient
(fewer packet) Ethernet communication. (Thanks to mikalhart.)
* Improvements to the way the Ethernet library Client class connects and
disconnects. Should reduce or eliminate failed connections and long
timeouts. (Thanks to Bruce Luckcuck.)
* Optimizing the timer0 overflow interrupt handler (used for millis() and
micros()). Thanks to westfw and mikalhart.
* Fixing bug that limited the bit() macro to 15 bits. Thanks to Paul Badger.
* Adding ARDUINO version constant (thanks to prodding from mikalhart).
Changed lines 25-33 from:
* Reinstating use of core.a library in the build process, slightly shrinking
compiled sketch sizes. (Thanks to William Westfield.)
* Fixing bug in copy for forum (thanks to eried).

0014 - 2009.03.07

[core / libraries]
* Fixing bug that prevented multiple outgoing Client connections with the
ethernet library.
to:
* Ordering the items in the Tools > Board menu.
* Adding "Copy as HTML" command to the Tools menu.
* Eliminating (maybe) the occasional "Couldn't determine program size" errors.
Thanks to the Clever Monkey.
* Moving selection of Linux look-and-feel into the arduino script so it can
be changed by users. Thanks to Eberhard Fahle.
Deleted lines 31-33:
[environment]
* Clarifying ATmega168 vs. ATmega328 in the Tools > Boards menu.
Changed lines 33-41 from:
* Updating the Mac OS X AVR tools to AVR MacPack 20081213. This includes
avr-gcc 4.3.2, which should fix problems with functions called from
within interrupts.

0013 - 2009.02.06

[documentation / examples]
* Adding examples for Parallax Ping Sensor and Memsic 2125 accelerometer.
to:
* Adding automatic dependency generation to the Makefile. (Lars Immisch)


0015 - 2009.03.26
Changed lines 39-62 from:
* Adding support for printing floats to Print class (meaning that it works
in the Serial, Ethernet, and LiquidCrystal classes too). Includes two
decimal places.
* Added word, word(), bitRead(), bitWrite(), bitSet(), bitClear(), bit(),
lowByte(), and highByte(); see reference for details.
* Working around problem that caused PWM output on pins 5 and 6 to never go
to 0 (causing, for example, an LED to continue to glow faintly).
* Removing cast macros, since function-style casts are a feature of C++. This
should fix contributed libraries that broke in Arduino 0012.
* Modifying pulseIn() to wait for a transition to start timing (i.e. ignoring
any pulse that had already started when the function was called).
* Fixing bug in random() that limited the ranges of values generated. Thanks
to Mikal Hart.
* Modifying delay() to pause for at least the given number of milliseconds.
* Fixing bug in Ethernet library that interfered with use of pins 8 and 9.
* Originating each outgoing network connection from a different port (in the
Client class of the Ethernet library). Thanks to Paul and joquer.
* Updating ATmega168 bootloader to work with standard distributions of avrdude
(responding to signature requests made with the universal SPI command) and
correctly store EEPROM data. Thanks to ladyada.
* Adding support for the ATmega328. The upload speed is 57600 baud, so you
may need to edit boards.txt or reburn your bootloader if you bought an
ATmega328 w/ bootloader from adafruit or other supplier.
to:
* Adding support for the Arduino Mega (ATmega1280).
Added lines 42-92:
* Reinstating use of core.a library in the build process, slightly shrinking
compiled sketch sizes. (Thanks to William Westfield.)
* Fixing bug in copy for forum (thanks to eried).


0014 - 2009.03.07

[core / libraries]
* Fixing bug that prevented multiple outgoing Client connections with the
ethernet library.

[environment]
* Clarifying ATmega168 vs. ATmega328 in the Tools > Boards menu.

[tools]
* Updating the Mac OS X AVR tools to AVR MacPack 20081213. This includes
avr-gcc 4.3.2, which should fix problems with functions called from
within interrupts.


0013 - 2009.02.06

[documentation / examples]
* Adding examples for Parallax Ping Sensor and Memsic 2125 accelerometer.

[core / libraries]
* Adding support for printing floats to Print class (meaning that it works
in the Serial, Ethernet, and LiquidCrystal classes too). Includes two
decimal places.
* Added word, word(), bitRead(), bitWrite(), bitSet(), bitClear(), bit(),
lowByte(), and highByte(); see reference for details.
* Working around problem that caused PWM output on pins 5 and 6 to never go
to 0 (causing, for example, an LED to continue to glow faintly).
* Removing cast macros, since function-style casts are a feature of C++. This
should fix contributed libraries that broke in Arduino 0012.
* Modifying pulseIn() to wait for a transition to start timing (i.e. ignoring
any pulse that had already started when the function was called).
* Fixing bug in random() that limited the ranges of values generated. Thanks
to Mikal Hart.
* Modifying delay() to pause for at least the given number of milliseconds.
* Fixing bug in Ethernet library that interfered with use of pins 8 and 9.
* Originating each outgoing network connection from a different port (in the
Client class of the Ethernet library). Thanks to Paul and joquer.
* Updating ATmega168 bootloader to work with standard distributions of avrdude
(responding to signature requests made with the universal SPI command) and
correctly store EEPROM data. Thanks to ladyada.
* Adding support for the ATmega328. The upload speed is 57600 baud, so you
may need to edit boards.txt or reburn your bootloader if you bought an
ATmega328 w/ bootloader from adafruit or other supplier.

[environment]
Added line 97:
Added line 128:
Added line 149:
Added line 168:
Added line 178:
Added line 198:
Added line 219:
Added line 233:
Added line 248:
Added line 269:
Added line 302:
Added line 312:
March 26, 2009, at 11:15 AM by David A. Mellis -
Changed lines 4-5 from:
0014 - 2009.03.07
to:
0015 - 2009.03.26
Changed lines 7-9 from:
* Fixing bug that prevented multiple outgoing Client connections with the
ethernet library.
to:
* Adding support for the Arduino Mega (ATmega1280).
Added lines 10-20:
* Reinstating use of core.a library in the build process, slightly shrinking
compiled sketch sizes. (Thanks to William Westfield.)
* Fixing bug in copy for forum (thanks to eried).

0014 - 2009.03.07

[core / libraries]
* Fixing bug that prevented multiple outgoing Client connections with the
ethernet library.

[environment]
March 11, 2009, at 05:06 PM by David A. Mellis -
March 11, 2009, at 05:05 PM by David A. Mellis -
Changed lines 4-8 from:
0013 - 2009.02.06

[documentation / examples]
* Adding examples for Parallax Ping Sensor and Memsic 2125 accelerometer.
to:
0014 - 2009.03.07
Added lines 7-23:
* Fixing bug that prevented multiple outgoing Client connections with the
ethernet library.

[environment]
* Clarifying ATmega168 vs. ATmega328 in the Tools > Boards menu.

[tools]
* Updating the Mac OS X AVR tools to AVR MacPack 20081213. This includes
avr-gcc 4.3.2, which should fix problems with functions called from
within interrupts.

0013 - 2009.02.06

[documentation / examples]
* Adding examples for Parallax Ping Sensor and Memsic 2125 accelerometer.

[core / libraries]
February 06, 2009, at 05:46 PM by David A. Mellis -
Added lines 4-38:
0013 - 2009.02.06

[documentation / examples]
* Adding examples for Parallax Ping Sensor and Memsic 2125 accelerometer.

[core / libraries]
* Adding support for printing floats to Print class (meaning that it works
in the Serial, Ethernet, and LiquidCrystal classes too). Includes two
decimal places.
* Added word, word(), bitRead(), bitWrite(), bitSet(), bitClear(), bit(),
lowByte(), and highByte(); see reference for details.
* Working around problem that caused PWM output on pins 5 and 6 to never go
to 0 (causing, for example, an LED to continue to glow faintly).
* Removing cast macros, since function-style casts are a feature of C++. This
should fix contributed libraries that broke in Arduino 0012.
* Modifying pulseIn() to wait for a transition to start timing (i.e. ignoring
any pulse that had already started when the function was called).
* Fixing bug in random() that limited the ranges of values generated. Thanks
to Mikal Hart.
* Modifying delay() to pause for at least the given number of milliseconds.
* Fixing bug in Ethernet library that interfered with use of pins 8 and 9.
* Originating each outgoing network connection from a different port (in the
Client class of the Ethernet library). Thanks to Paul and joquer.
* Updating ATmega168 bootloader to work with standard distributions of avrdude
(responding to signature requests made with the universal SPI command) and
correctly store EEPROM data. Thanks to ladyada.
* Adding support for the ATmega328. The upload speed is 57600 baud, so you
may need to edit boards.txt or reburn your bootloader if you bought an
ATmega328 w/ bootloader from adafruit or other supplier.

[environment]
* Omitting unused functions from compiled sketches, reducing their size.
* Changing compilation process to allow for use of EEMEM directive (although
not yet uploading EEPROM data).
September 18, 2008, at 02:27 PM by David A. Mellis -
Added lines 4-33:
0012 - 2008.09.18

* Added Arduino Nano to the boards menu.
* Arduino Pro or Pro Mini (8 MHz) to the boards menu.
* Added Firmata library by Hans Steiner and others. This provides a standard
protocol for communicating with software on the computer.
* Added an Ethernet library for use with the Arduino Ethernet Shield.
* Added a Servo library based on the work of Jim Studt.
* Added a LiquidCrystal library based on the work in the playground. It
supports both 4- and 8-bit modes.
* Improved millis(): it now overflows after 49 days instead of 9 hours, but
now uses slightly more processing power.
* Fixed reversing direction bug in Stepper library. (Thanks to Wayne Holder.)
* Moved insertion of #include <WProgram.h> to after any comments and #include
statements in the main sketch file. This means that an #include <stdlib.h>
now works.
* Upgraded to newer versions of avr-gcc (4.3.0) and avr-libc (1.6). This
provides support for newer Atmel chips, but may increase the size
of sketches.
* Allowing per-board specification of the upload.using preference, allowing
upload via bootloader to some boards and via a programmer to others.
* Added return values to some functions in the Wire library to allow for
better error handling.
* Fixed random() to work with long values.
* Creation of an abstract Print base-class to allow Serial, SoftwareSerial,
and LiquidCrystal to share code for print() and println().
* Incorporated ladyada's watchdog timer mods to the bootloader source, but
only compiling them in for the Pro and Pro Mini (because they are included
in the bootloader being burned on the boards by SparkFun).
March 28, 2008, at 11:51 PM by David A. Mellis -
Added lines 4-23:
0011 - 2008.03.28

* Improved reliability for uploading to Arduino BT.
* Better support for bootloader burning with a parallel programmer.
* Fixed Find in Reference.
* Added map() function for mapping values from one range to another.
* Added analogReference() function.
* Added interrupts() and noInterrupts() functions.
* Added degrees() and radians() functions.
* Added timeout parameter (in microseconds) to pulseIn(); default is 1 second.
* Support for uploading sketch using a programmer.
* Improved detection of functions that need prototyping.
* Placing function prototypes after #include's and #define's.
* No longer moving #include statements to the top of the sketch.
* Can now drag .pde files onto the Arduino dock icon on Mac OS X.
Thanks to Peter Sgouros.
* New script for downloading the reference from Tom Pollard. Thanks Tom!
* Miscellaneous Mac OS X and other patches from Wim Lewis. Thanks Wim!
* Updated Mac OS X FTDI drivers.
October 17, 2007, at 03:36 PM by David A. Mellis -
Added lines 4-21:
0010 - 2007.10.11

* Support for the LilyPad Arduino.
* Vista support.
* Mac OS X universal distribution.
* Printing!
* Copy for discourse.
* New Board menu replaces the Microcontroller menu.
* New Burn Bootloader menu offers a choice of programmers.
* New and improved keyboard shortcuts.
* Fixed some find/replace bugs.
* Better auto-format.
* Improved error messages when uploading.
* Support for COM10 and higher on Windows.
* Fixed automatic refresh of the Serial Port menu under Windows.
* Quaqua look-and-feel on Mac OS X.
* Reorganization of the Arduino application directory.
August 07, 2007, at 03:37 AM by David A. Mellis - adding 0009 release notes
Added lines 4-12:
0009 - 2007.08.06

* Added support for the Arduino Diecimila.
* Switched to using avrdude (instead of uisp) for uploading sketches.
* Added the ability to burn NG and Diecimila bootlaoders (with an AVRISPmkII).
* Fixed a bug in SoftwareSerial (a hardware serial function was being called
instead of the software serial equivalent). Thanks to brianbr for the
report and fix.
June 10, 2007, at 01:51 AM by David A. Mellis -
Added lines 4-22:
0008 - 2007.06.09

* Updated examples (in distributiorunning instead of from the Tools menu.
November 04, 2006, at 02:22 PM by David A. Mellis -
Added lines 5-13:
0006 - 2006.10.21

Mac version no longer requires Java 1.5, meaning it should run on 10.3.9.
Added support for analog inputs 6 and 7 and pwm on pins 5 and 6 on the on the ATmega168 used in the Arduino Mini (extra analog inputs not available in DIP ATmega168s).
You now select the baud rate for the serial monitor from within the editor status bar when the serial monitor is running instead of from the Tools menu.
Pressing enter within the serial monitor edit box no longer appends a newline to the message sent to the board.
Included the Wire (TWI) library from Wiring.
Updated the reference.
September 06, 2006, at 10:05 AM by David A. Mellis -
Added line 7:
Smaller core libraries (~4.5 KB instead of 5.5 KB).
September 06, 2006, at 09:58 AM by David A. Mellis - Adding 0005 release notes.
Added lines 5-17:
0005 - 2006.09.06

Applied patch from Hans Steiner to improve Linux support by searching for avr
tools in the user's path instead of expecting them at a fixed location.
Added an upload.verbose preference for help in debugging.
ATmega168 support!
New Wiring-compatible randomSeed(), random(max) and random(min, max) functions
(except operating on longs instead of floats).
Fixed bug that sometimes caused uploading of old versions of a sketch.
Serial monitor nows include an interface to send messages to the Arduino
board. Pressing return appends a newline, pushing the send button doesn't.
Now displaying "burning bootloader..." and "compiling..." status messages.
April 29, 2006, at 04:22 PM by David A. Mellis -
Changed line 21 from:
New library system.
to:
New library system (gives a few spurious errors when Arduino starts).
April 29, 2006, at 04:21 PM by David A. Mellis -
Changed lines 3-4 from:
[=
to:
[=
Changed line 72 from:
=]
to:
=]
April 29, 2006, at 04:20 PM by David A. Mellis -
Added lines 3-4:
[=
Deleted line 5:
Added lines 71-72:

=]
April 29, 2006, at 04:19 PM by David A. Mellis - Through version 0004.
Added lines 1-69:
!!Arduino Software Release Notes

0004 - 2006.04.26

Main sketch is now compiled as C++ (instead of C).
Updated avr toolchain.
printInteger(), printHex(), etc. now handle longs.
millis() fixed (now overflows after days, not minutes)
Fixed path to java in Windows run.bat.
Added Matrix and Sprite libraries (written with Nicholas Zambetti).
PWM now working on pin 11 (in addition to pins 9 and 10).
Slowed PWM frequency (on all three PWM pins) to 1KHz.
Now give an error if compiled sketch is too big.
Fixed abs(), min(), max(), and constrain() macros.
Added menu items to the IDE to burn bootloader.
Now display binary sketch size on upload, and give error if too big.
Added C++ serial library.
Resynced with Processing/Wiring IDE code (improved auto-format, faster logging
to serial monitor console, other bug fixes)
New library system.
Updated to latest version of the RXTX serial library; Mac users will need to
rerun macosx_setup.command.

0003 - 2006.01.16

API Changes
Reversed the analog input pins to correspond to newer boards. This means
a call, for example, to analogRead(0) must be changed to analogRead(5) in
order to read the same physical pin.
Added a printNewline() function (which sends '\n' = ASCII 10).

New Stuff
Reference is included (features native to C not yet documented).
Serial monitor added (click the toolbar button to turn it on or off). Baud
rate is controlled by the Serial Monitor Baud Rate Menu, defaults to 9600. Icon
and implementation from Wiring.
Serial port menu now automatically refreshes when opened.
New blue color scheme and icons courtesy of Noah Shibley (colors are hardcoded
into the source to ensure consistency with image files).
Keyspan and FTDI USB drivers included with Mac and Windows distributions.

Bug Fixes
millis() now updates every millisecond instead of every second.
Bootloader included with Windows distribution (it was already in the Mac dist).
Updated icon of the Windows executable.
Now flushing the serial port before uploading (should fix some errors).
Improved accuracy of the delayMicroseconds() function.

Other
Upload rate no longer selectable from a menu within the IDE. Instead, edit the
serial.download_rate item in the preferences.txt file.
Created Xcode project for building Arduino on the Mac (doesn't yet regenerate
the grammar files or package the distribution); active target should be "App".
Removed unused or unimplemented items from menus.

0002 - 2005.10.05
New build process no longer uses makefiles; now controlled by preferences.txt.
core/ replaced with targets/; can now link against Wiring libraries.
Replaced print() with printString, printInteger, printHex, printByte, etc.
Added menu for selecting serial port speed.
Updated icon.
Bootloader shrunk to less than 1 KB; fuses updated accordingly.
Added serialRead(), serialAvailable(), and delayMicroseconds().

0001 - 2005.08.25
This is the first released of the unified IDE + language library
it's a terrible hack... but it works. at the moment it's in alpha stage
but it can be used to work.
The processing preprocessor is included but not used.

Share