SAMD CORE ?.?.?? ????.??.?? SAMD CORE 1.6.21 2019.04.01 * MKR boards: changed I2C to sercom2, SPI1 + Serial2 to sercom4 * Improved accuracy of delay() function. Thanks @BenF * MKR 1500: Changed SARA module to be powered off on boot SAMD CORE 1.6.20 2018.11.28 * Replaced boolean type with bool in examples. Thanks @per1234 * Added c++ linker command to allow to include libstdc++ when linking. Thanks @helmut64 * CPX driver fixes. Thanks @dhalbert * I2S: Changed library to use 8 MHz oscillator source if 48MHz divider does not fit in 8 bits * UART: Added frame error handling * USB: Fixed memory leak on reconnects * SDU: Added support for Arduino M0. Thanks @jandrassy * Added arduinoOTA upload keys for Arduino M0. Thanks @jandrassy * USB: Fixed USB Host failures and fixed memory overwrite in USBHost. Thanks @gdsports * USB: Added method to return USB error code. Thanks @MarkFischer * CDC: Clear line state on end() * USB: Added USB device end() method * Removed requirement that the DAC is on A0. Thanks @GabrielNotman * Added alternate ports 44, 45 to make the SWCLK and SWDIO pins available on the Zero. Thanks @helmut64 * Added defines for MKR pin layout * Fixed freeze in tone() * Added MKR NB 1500 variant and bootloader * Increased the default serial buffer size to 256 SAMD CORE 1.6.19 2018.07.11 * Fixed bootloader tools for .org boards * M0: Updated pin definitions for D6, D7 and D13 to match Zero * SPI: Fixed interrupt mask to block. Thanks @ggajoch * Added MKR WiFi 1010 variant and bootloader * Updated Windows Drivers to 1.4.0 and re-signed Adafruit_Circuit_Playground_Express.inf SAMD CORE 1.6.18 2018.03.05 * Wire: Added support for general call (broadcast) * SPI: Added SPI.notUsingInterrupt(...) API * Fixed build errors if variant disabled USB * Wire: TX and RX buffers are now 256 bytes (previously was 64 bytes) * Added samd21e sercom compatibility. Thanks @mitchellpontague * Fixed lock ups when outputting to UART during ISR * Wire: correct I2C frequency calculations, and allow variant to overide default pull up resistor rise time * USB: Fixed build errors when CDC_ENABLED was not set. Thanks @gdsports SAMD CORE 1.6.17 2017.11.29 * More accurate approximation for multiplication factor of PLL to make 48Mhz. Thanks @joverbee * Fix changing trigger mode (RISING/FALLING/...) in attachInterrupt(..) during runtime. Thanks @joverbee * Improved ISR response time. Thanks @joverbee * USB power current can now be overridden in the variant. Thanks @awatterott * UART's now support optional RTS and CTS pins defined in the variant. * Added support for MKR GSM 1400 and MKR WAN 1300 SAMD CORE 1.6.16 2017.08.23 * Is now possible to use PWM on D7 (though it can't be used with PWM on D12 at the same time). Thanks @Adminius * PWMs now can perform real 16-bit resolution if analogWriteResolution(16) is set. Thanks @Adminius * USB CDC: fixed issue of available() getting stuck when receiving ZLP's * Serial (UART) tx is now buffered. * Improved CRYSTALLESS stability. Thanks @tannewt * Some fixes to Adafruit Circuit Playground Express variant. Thanks @ladyada * Updated Stream and Print class * Native USB now supports USB Serial Number * Fixed pgm_read_ptr compatibility macro. Thanks @nkrkv SAMD CORE 1.6.15 2017.04.27 * Added missing Windows driver for MKRFox1200 * Added SDU support for MKRFox1200 SAMD CORE 1.6.14 2017.04.04 * Fixed platform definition for openocd * Added bootloader definitions for MKRFox1200 * Added lowpower function on USB subsystem SAMD CORE 1.6.13 2017.03.31 * Added SDU (SD card Updater) library. * Fixed 8MHz clock being generated incorrectly. Thanks @keestux SAMD CORE 1.6.12 2017.02.07 * Fixed type conflict of utoa function. Thanks @kbumsik * Fixed pinMode(pin, OUTPUT) not working after analogRead(pin) * Reenabled support for Tian * Fixed signature for Adafruit Circuit Playground Express board * Added CMSIS headers for SAML21 chip series. Thanks @aethaniel SAMD CORE 1.6.11 2016.12.23 * Temporarily disabled support for Arduino Tian until an upload issue is fixed SAMD CORE 1.6.10 2016.12.23 * Added .org boards * Fixed MKRZero `build.board` property * linker: .data section is now aligned to 16 bytes address * Added support for CRYSTALLESS configurations (thanks @ladyada) * Added Circuits Playground board * Added method to automatically retrieve sketch start via linker variable (see https://github.com/arduino/ArduinoCore-samd/pull/185) * Fixed USBDevice.epBank1EnableTransferComplete method * Adapted bootloader source code to CMSIS 4.5 SAMD CORE 1.6.9 2016.12.12 * MKR1000: Enabled PWM on pin 11, it is shared with pin A4 * SPI: Optimized SPI.transfer(...) * Added linker flags for the ARM Math library * Added new I2S library * Bootloader: Check sketch vectors before waiting for double tap * Upgraded CMSIS version to 4.5.0, and use new CMSIS-Atmel package * Added Arduino MKRZero board. SAMD CORE 1.6.8 2016.10.12 * Fixed regression on analogWrite. Thanks @bose-mdellisanti! * Fixed regression on SerialUSB.available() * C++ global constructors (if any) are now run after hardware initalization. SAMD CORE 1.6.7 2016.09.28 * Fixed Serial.flush() blocking before any writes. Thanks @hangmoh * Added snprintf_P to avr/pgmspace.h stub. Thanks @jantje * Another small fix to String iterators. Thanks @Ivan-Perez @Chris--A * Fixes SerialUSB.write(...) returning 0 instead of byte written * Added Uart::availableForWrite() * Added defines for RAMSTART, RAMSIZE, RAMEND * Fixed writing LOW to a digital input pin blocking subsequent digitalRead attempts * Fixed digitalWrite() unnecessarily activating the pull-up resistor * Wire: Slave writes now use TX buffer * Added getTimeout() method to Stream. * Fixed glitch in PWM generation that may happen when calling analogWrite() * PWM frequency is now 732.4Hz (before it was 187500.0Hz) * Fixed PWM/analogwrite() not working on pin 13 on the Zero * Improved reliability of SerialUSB under heavy load (this should solve all issues with MKR1000/WiFi101 firmware updater on MacOSX) * Improved SerialUSB.read() performance * Added String::toDouble() * Bootloader: LED now pulses and USB TX/RX blink on transfer (like Leonardo) * Bootloader: enabled USB string descriptors SAMD CORE 1.6.6 2016.05.19 * Fixed digitalPinToInterrupt() macro, now it works as documented. * Added analogInputToDigitalPin macro * Fixed NUM_DIGITAL_PINS for Zero Board. * On-board RX-TX LEDs now blinks when there is activity on the native USB port * Fixed platform.txt, the core now compiles again with Arduino IDE <=1.6.5. Thanks @per1234 * Fixed Wire.write(0x00) "ambiguos method" error * String class now supports iterators. Thanks @Chris--A * Remove enabling bootloader protection when burning bootloader. This enables WDT, so sketches do not work. * Added remote upload for Yun-Shield SAMD CORE 1.6.5 2016.04.02 * Added Arduino/Genuino MKR1000 board * Set NVMCTRL.MANW bit to 1 (default is 0). This prevents accidental writes on program memory. * Bootloader: Fixed wrong UART speed (regression) * Fixed incorrect return value from Wire.available() when the receive buffer is not fully read. * Added DAC0 definition in Arduino/Genuino Zero variant file. * Enabled bootloader protection after "Burn bootloader". SAMD CORE 1.6.4 2016.02.19 * Fixed Wire address setup when running as slave. * Fixed String constructor when using floating point numbers. * USBHost: fixed blocking USBHost.Task(). Thanks @bbx10 * USBHost: fixed some ASCII Control codes in keyboard controller. Thanks @bbx10 * USBHost: ported some minor fix from upstream UHS2. Thanks @bbx10 * USBHost: fixed wrong library initialization. Thanks @bbx10 @ladyada * better interrupt handling in Serial::accept() SAMD CORE 1.6.3 2016.02.15 * Added drivers for Arduino/Genuino MKR1000 board * Fixed Wire master repeated start behaviour * Added SerialUSB methods: readBreak(), baud(), stopbits(), paritytype(), numbits(), dtr(), rts() * Added SPI.transfer16(..) method * Bugfix: added missing Serial.begin(baud, config) method. Thanks @tuxedo0801 * Fixed Serial baudrate calculations for 1200bps. Thanks @TomKeddie * Fixed Serial.flush() that now waits until the last bit has been sent. Thanks @TomKeddie * Fixed Serial configuration for data-bit. Thanks @TomKeddie * Bootloader: 32Khz external oscillator is now used, improves USB clock. Thanks @aethaniel * Bootloader: Clean up of makefiles and file organization. Thanks @aethaniel * Added PWM capability to pins A1/A2 of Arduino Zero. * variant.h/cpp: PWM capability is now determined by PIN_ATTR_PWM combined with PIN_ATTR_TIMER or PIN_ATTR_TIMER_ALT for timer selection. * Small fix to USBHost example "USB_desc.ino". Thanks @bbx10 * USBHost: USB-Keyboard right shift key was ignored. Thanks @bbx10 * Wire library now support multiple instances in variant. Thanks @spiderkeys * Ported some SerialUSB API (readBreak(), baud(), stopbits(), paritytype(), numbits(), dtr(), rts()) SAMD CORE 1.6.2 2015.11.03 * Fixed bug in delay calculations * Fixed deadlock conditions in Wire. Thanks Erin Tomson * Print not aborting on write() failure. Thanks @stickbreaker * SPI can now be configured in variants. Thanks @aethaniel * Implemented Wire.end * Fixed external interrupt for pin 8 and 9 * Implemented Wire.setClock. Thanks @PaoloP74 * Wire: allow scanning bus via beginTransmission-endTransmission * USB Device: big refactoring and bug fix * USB Device: added PluggableUSB interface * updated bossac to version 1.6.1-arduino SAMD CORE 1.6.1 2015.07.21 * Added missing ATN pin definition * Added missing bootloader key/value pair in boards.txt (this allows to burn bootloader with Sam-ICE too) * Fixed min/max functions * Fixed hooks for Cortex-M RTOS * Fixed acknowledge of UART errors * Enabled C11/C++11 * Fixed initialization in USB Device * Updated bossac to version 1.6-arduino SAMD CORE 1.6.0 2015.06.15 * First public release.