aboutsummaryrefslogtreecommitdiff
path: root/cores/arduino
AgeCommit message (Collapse)Author
2015-08-12Made Magic Key Settings more flexibleNicoHood
2015-08-12Print not Aborting on Write() failureChuck Todd
Print::write(const uint8_t *buffer, size_t size) and Print::print(const __FlashStringHelper *ifsh) would continue calling write(char) after a failed write(char) this behavior would render returned count unuseable see arduino/Arduino issue #3614
2015-07-31Add Serial_::availableForWrite().Peter Van Hoyweghen
This makes the CDC "Serial" object on the Leonardo and similar boards support this recently introduced method as well. The CDC code in the sam core is not changed.
2015-07-31Prevent losing bytes in HardwareSerial::end()Matthijs Kooijman
end() already waited for the buffer to be empty, but then there could still be two bytes in the hardware registers that still need to be transmitted (which were dropped or kept in the buffer, depending on the exact timing). This changes the wait loop to a call to the flush() function, which already takes care of really waiting for all bytes to be transmitted, meaning it is safe to turn off the transmitter.
2015-07-31Add Serial_::readBreak() to process SEND_BREAK requestsMatthijs Kooijman
This allows detecting when the USB host sends a break request and what the value of the request was. See the comments in USBAPI.h for details. This just modifies the avr core, not the sam core.
2015-07-31Expose serial settings from CDC virtual serial portMatthijs Kooijman
This allows a sketch to find out the settings chosen by the USB host (computer) and act accordingly. Other than reading the DTR flag and checking if the baudrate is 1200, the regular CDC code doesn't actually use any of these settings. By exposing these settings to the sketch, it can for example copy them to the hardware UART, turning the Leonardo into a proper USB-to-serial device. This can be useful to let the computer directly talk to whatever device is connected to the hardware serial port (like an XBee module). The Teensy core already supported these methods. This code was independently developed, but the method names were chosen to match the Teensy code, for compatibility (except that `dtr()` and `rtr()` return `bool`, while the Teensy version return a `uint8_t`). This change is applied to both the avr and sam cores, which have a very similar CDC implementation.
2015-07-16fix pluggableUSB linked listMartino Facchin
2015-07-16save RAM content overridden by bootloader magicMartino Facchin
and restore it in case of aborted reboot use RAMEND-1 as suggested by @yyyc514 in PR #2474 of course it's not a real solution but we cannot force everyone to update the bootloader using an external programmer
2015-07-16rename Setup typedef struct to USBSetupMartino Facchin
was really too common
2015-07-16fix HID headersMartino Facchin
2015-07-16fix HID descriptors bigger than 127 bytesMartino Facchin
2015-07-16Add support for waking up a host via USB HIDMartino Facchin
this is a rework of commit fbcf94801b8bba7f1c8c79cc7ae402b6b9dbb2d3
2015-07-16remove setupUSB weak hook and replace with global constructorsMartino Facchin
thanks @matthijskooijman
2015-07-16rework PUSBCallbacks initializationMartino Facchin
2015-07-16remove 3 endpoints to match at32u4 limitMartino Facchin
2015-07-16add numInterfaces field to PUSBCallbacksMartino Facchin
2015-07-16implement PUSB modules as linked listMartino Facchin
2015-07-16remove useless variablesMartino Facchin
2015-07-16make CDC function non removableMartino Facchin
2015-07-16add weak setupUSB() hookMartino Facchin
override this function to insert additional USB endpoints
2015-07-16remove useless variableMartino Facchin
2015-07-16add PluggableUSB moduleMartino Facchin
2015-07-16move _initEndpoints from PROGMEM to RAMMartino Facchin
2015-07-16Use generic composite device descriptorMartino Facchin
2015-07-16Move EP defines to headerMartino Facchin
2015-07-16Remove HID core libraryMartino Facchin
2015-07-16Check for __cplusplus >= 201103L as well as __GXX_EXPERIMENTAL_CXX0X__Matthijs Kooijman
Gcc 4.8 defines __cplusplus as 201103L, so we can check for that now. It still also defines __GXX_EXPERIMENTAL_CXX0X__, but this could help on other compilers, or if gcc ever decides to stop defining the experimental macro.
2015-07-03Removed a handful of SVN expansion keywords. See #277Federico Fissore
2015-06-18Warn about increasing HardwareSerial buffers to > 256Matthijs Kooijman
Properly supporting bigger buffers need better atomicity code, which isn't implemented yet. Until it is, best to add a warning. See #2405.
2015-06-01Add a Stream::find(char) methodMartino Facchin
2015-05-30Fixed unused argument warningCristian Maglie
2015-05-29Fixed unused variables warnings and indentationCristian Maglie
2015-05-29Saving some bytes in HardwareSerial::writechromhelm
2015-05-29pulseIn: be consistent with standard APIMartino Facchin
return 0 if timeout has been reached
2015-05-29pulseInASM: rework comment styleMartino Facchin
2015-05-29pulseIn: add alternative implementation based on micros()Martino Facchin
pulseInLong is suitable for long pulses in interrupt context
2015-05-29pulseIn: modify function to use ASM implementationMartino Facchin
2015-05-29pulseIn: add ASM implementationMartino Facchin
this assembly code was generated by avr-gcc 4.8.3
2015-05-29Revert "Temporary fix for pulseIn() regression."Martino Facchin
This reverts commit 8ddc5198f6ef8b2816a61b7b0fcce99f927d11a0. To be substituted by ASM generated code
2015-05-28Merge pull request #3202 from Chris--A/randomSeedMartino Facchin
Modified randomSeed, now uses unsigned long.
2015-05-28Merge pull request #3211 from Chris--A/println-optimizeMartino Facchin
Println optimize
2015-05-28Merge pull request #3244 from Lauszus/INT2Cristian Maglie
Check if INT2 is actually defined before issuing warning in detachInterrupt
2015-05-28Merge pull request #3207 from chromhelm/masterMartino Facchin
Fixed bug with HWSerial flushing
2015-05-28Check if INT2 is actually defined before issuing warning in detachInterruptKristian Sloth Lauszus
This was caused after: https://github.com/arduino/Arduino/pull/3221
2015-05-24Add missing case to detachinterruptVictor Aprea
2015-05-22Indent fix.Cristian Maglie
2015-05-22zero delay fix, ADC prescaler fixCano
2015-05-22delayMicroseconds(): added support for 1Mhz, 12Mhz and 24MhzCano
1Mhz is a default clock speed on Atmega328, many users run it on the internal 1Mhz clock to save battery power. Up until now delayMicroseconds() function wasn't taking this frequencies into an account.
2015-05-22Optimize printLn calls.Chris--A
2015-05-21Fixed bug with flushingchromhelm