aboutsummaryrefslogtreecommitdiff
path: root/cores/arduino
AgeCommit message (Collapse)Author
2016-07-18Merge pull request #4667 from bblanchon/patch-1Sandeep Mistry
Speed and size improvement in Print::printFloat()
2016-07-18Merge pull request #4718 from mattb5906/new-feature/stream-timeout-get-4680Sandeep Mistry
Add getTimeout accessor method.
2016-07-18Merge branch 'invalidated-string-move' of ↵Cristian Maglie
https://github.com/sandeepmistry/Arduino
2016-07-14Send an USB remote wakeup if data need to be writtenMartino Facchin
On Linux, setting autosuspend_delay_ms to N and control to auto allows the host pc to suspend the peripheral. Some Linux distro (Ubuntu, Mint) apply this behaviour by default. If the sketch's prints where less frequent than N milliseconds the sketch prints would never arrive. This patch allows sending a remote wakeup event to unsuspend the peripheral and allow the serial prints to be received.
2016-07-14[AVR][USB] fix IRQ flags clearingMartino Facchin
2016-07-13configurable USB_VERSION string via defineMartino Facchin
to allow WebUSB development, provide a way to change the USB_VERSION reported using an additional core. The additional (webUSB) core will survive IDE and AVR core updates
2016-07-12Make String::move of an invalidated String result in an invalidated StringSandeep Mistry
2016-07-11Merge pull request #4864 from sandeepmistry/avr-usb-txArturo Guadalupi
Subtract one from USB_EP_SIZE in USB_SendSpace
2016-06-28WString.h: allow modifying the string while iteratingIvan-Perez
2016-06-28WString.h: Add const qualifier to `begin` and `end` functionsIvan-Perez
2016-05-18Move Caterina_BL related defines into generic USBCore.hMartino Facchin
In an excess of confidence, these defines were added to Leonardo's variant.h 3rd party boards sometimes avoid inheriting this variant but they still define USBCON, thus breaking the build
2016-04-20Removed extra whitespaces in WString.hCristian Maglie
2016-04-20Removed C++11 dependency for `begin()` and `end()`Christopher Andrews
As I was not able to base the return types of `begin()` & `end()` off the c_str() function, I have changed the source so the features can be used by C++98 code, while still allowing ranged loops in C++11.
2016-04-20Updated String library to use C++11 iterators.Christopher Andrews
This will allow using the String library in a ranged for loop: ```C++ String s = "Hi, this is a test"; for( char c : s ) Serial.print( c ); ```
2016-04-14Subtract one from USB_EP_SIZE in USB_SendSpaceSandeep Mistry
This avoids dealing with ZLP’s in USB_Send, because the max packet size will be EP size - 1.
2016-04-06[AVR] Discover newer bootloader at runtimeMartino Facchin
Replaces #4280, only checks for the bootloader once Tested with Hoodloader2, should work with every LUFA-derived bootloader released after 2014 (.apitable_signatures section must be placed at end of the flash) BootloaderAPITable.S : .global BootloaderAPI_Signatures BootloaderAPI_Signatures: .long BOOT_START_ADDR ; Start address of the bootloader .word 0xDF00 ; Signature for the CDC class bootloader .word 0xDCFB ; Signature for a LUFA class bootloader makefile: BOOT_API_LD_FLAGS += $(call BOOT_SECTION_LD_FLAG, .apitable_signatures, BootloaderAPI_Signatures, 8)
2016-03-18Add getTimeout accessor method.mattb5906
2016-03-08Speed and size improvement in Print::printFloat()Benoît Blanchon
Avoid using the overload of print() for signed integer since a negative value is not allowed here. This results in a smaller (unless print(int) is used somewhere else in the program) and faster code because the overload for unsigned integer is simpler.
2016-03-03huh? i guess it's just 'modulo'. let's save even moretico-tico
2016-02-03Boilerplate compression on ISR declarationPaulo Costa
The current code is very verbose and a painful to maintain (Change ISR implementation in 20 different places? No Thanks!). (This was originally part of #4519, but we all agreeded it deserved it's own PR)
2015-12-27fix delay/yield on avr, if function called by yield takes more a millisecond ↵vbextreme
the delay fails
2015-12-23Merge NicoHood's fix for USB_SendControl with len>64Cristian Maglie
Fix #4325
2015-12-23Added >64 byte USB_RecvControl() supportNicoHood
2015-12-19Added Long USB RecvControl call for >64 bytesNicoHood
2015-11-23Cleanup some Stream compiler warnings from #3337Sandeep Mistry
2015-11-23Make protected Stream::parseInt/Float overloads public.Chris--A
Stream::parseInt & Stream::parseFloat previously had protected overloads which allowed skipping a custom character. This commit brings this feature to the public interface. To keep the public API simpler, the single paramter overload remains protected. However its functionality is available in the public interface using the two parameter overload.
2015-11-23This adds control of Stream::parseInt/float lookahead.Chris--A
Its default is SKIP_ALL which reflects previous versions. However SKIP_NONE, and SKIP_WHITESPACE can refine this behaviour. A parameter used in the protected overloads of parseInt/Float has been changed from `skipChar` to `ignore`.
2015-11-23This is a bug fix which prevents parseFloat from proceeding pastChris--A
multiple decimals '.' in the stream. Only one can be accepted for valid decimal numbers.
2015-11-23This commit improves the parsing capability by allowing decimals onlyChris--A
prefixed by an '.' character. Previously the preceeding zero must be present: '0.'
2015-10-21[USB] use plugged modules name to create iSerial fieldMartino Facchin
2015-10-12[PUSB] Renamed PUSBListNode to PluggableUSBModuleCristian Maglie
2015-10-09[PUSB] Minor Style changeNico
2015-10-08[HID] Improved checks in getDescriptor() methodCristian Maglie
2015-10-07[PUSB] Removed unnecessary endpoint and interface functionNicoHood
2015-10-07[PUSB] Made getDescriptor() and setup() more flexibleNicoHood
Alternatively we can only pass the wIndex to getDescriptor but I suggest to just pass the pointer aka reference of the whole setup. In guess (havent tested this) that this results in more or less the code size but its a) idential with the other functions and b) we late have more flexibility here. The Code got a quick SerialKeyboard.ino test
2015-10-07[PUSB] Changed Interface + Endpoint to unsigned variablesNicoHood
The iterations in the for loop also use unsigned and the setup struct etc as well. There was no change in HID required since we just init the inherited variables via constructor and the type is never mentioned.
2015-10-07[PUSB] renamed some parametersCristian Maglie
2015-10-07Small return value error check correctionNicoHood
2015-10-03Removed not needed public statement for root nodeNicoHood
2015-10-02[PUSB] Fix static initialization order fiascoMartino Facchin
For details see: https://isocpp.org/wiki/faq/ctors#static-init-order-on-first-use
2015-10-02[HID] Code cleanup (no semantic changes)Cristian Maglie
2015-10-02[PUSB] Fixed checks on return valuesCristian Maglie
2015-10-02[USB] Fixed some compiler warningsCristian Maglie
2015-10-02[PUSB] Fixed the correct number of endpointsCristian Maglie
2015-10-02[PUSB] Fixed check for available endpointsCristian Maglie
The check for available slot in PluggableUSB is done on the endpoint and not on the number of plugged modules. The modulesCount field is no longer useful and it has been removed.
2015-10-02[PUSB] No more static fields in PluggableUSB classCristian Maglie
2015-10-02[PUSB] The latest fields are now set via constructorCristian Maglie
2015-10-02[PUSB] callbacks are now pure virtual methodsCristian Maglie
This change allows the compiler to handle callbacks resolution. Callbacks now must be implemented on the class that extends PUSBListNode and this is forced by compiler by means of pure virtual methods. Also the calls to HID.interface() and HID.endpoint() can now be simplified to interface() and endpoint() respectively since the methods are no more static.
2015-10-02[PUSB] replaced u8 with uint8_tCristian Maglie
2015-10-02[PUSB] Selected interface and endpoint are now part of PUSBListNodeCristian Maglie
The method int8_t PluggableUSB::addFunction(PUSBListNode *, uint8_t *) has been changed to bool PluggableUSB::plug(PUSBListNode *node) since both EP and Interfaces are now saved directly into node