aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-10-18Inserted cast to unsigned int in available method in order to avoid call to ↵Bernhard Nebel
__divmodhi4
2021-10-01Merge pull request #383 from DanielGibson/disable-cdcMartino Facchin
Allow disabling CDC with -DCDC_DISABLED
2021-09-08Merge pull request #417 from per1234/ignore-wordSilvano Cerza
Don't use codespell's "rare" dictionary for CI spell check
2021-06-30Don't use codespell's "rare" dictionary for CI spell checkper1234
The word "statics" was recently added to codespell's "rare" commonly mispelled words directory. By default, this dictionary is used in addition to the more conservative "clear" dictionary, resulting in a spurious failure of the "Spell Check" CI workflow. Although this could be fixed by adding the word to the ignore list, it seems that an increasing number of common words being added to this dictionary, so I think it's best to just remove it altogether. The goal for the "Spell Check" workflow is to catch some typos without a significant number of false positives, even if that means some misspellings slip through. I think the "clear" dictionary is more in line with that goal.
2021-05-26Merge pull request #413 from per1234/ciMartino Facchin
Use GitHub Actions for continuous integration
2021-05-26Report changes in memory usage that would result from merging a PRper1234
On creation or commit to a pull request, a report of the resulting change in memory usage of the examples will be commented to the PR thread.
2021-05-26Add "smoke test" examples compilation CI workflowper1234
On every push or pull request that affects platform source code or bundled libraries, compile example sketches of all bundled libraries for the platform's boards.
2021-05-26Add CI workflow to do Arduino project-specific lintingper1234
On every push, pull request, and periodically, run Arduino Lint to check for common problems not related to the project code.
2021-05-26Correct typos in comments and documentationper1234
2021-05-26Add CI workflow to check for commonly misspelled wordsper1234
On every push, pull request, and periodically, use the codespell-project/actions-codespell action to check for commonly misspelled words. In the event of a false positive, the problematic word should be added, in all lowercase, to the ignore-words-list field of ./.codespellrc. Regardless of the case of the word in the false positive, it must be in all lowercase in the ignore list. The ignore list is comma-separated with no spaces.
2021-05-26Revert "Declare TwoWire functions as virtual" (#412)Alexander Entinger
2021-05-26Configure Dependabot to check for outdated actions used in workflowsper1234
Dependabot will periodically check the versions of all actions used in the repository's workflows. If any are found to be outdated, it will submit a pull request to update them. NOTE: Dependabot's PRs will sometimes try to pin to the patch version of the action (e.g., updating `uses: foo/bar@v1` to `uses: foo/bar@v2.3.4`). When the action author has provided a major version ref, use that instead (e.g., `uses: foo/bar@v2`). Dependabot will automatically close its PR once the workflow has been updated. More information: https://docs.github.com/en/github/administering-a-repository/keeping-your-actions-up-to-date-with-dependabot
2021-05-26Provide a brief description of the projectper1234
2021-05-25Merge pull request #396 from ArkadyGamza/make_TwoWire_functions_virtualAlexander Entinger
Declare TwoWire functions as virtual
2021-02-25Declare TwoWire functions as virtualArkadyGamza
To make alternative implementations of the TwoWire class (e.g. SoftwareWire for software I2C) work properly being passed to libraries that expect TwoWire type.
2021-01-12Merge pull request #385 from greyltc/patch-1Martino Facchin
fix twi_manageTimeoutFlag function description
2021-01-09fix twi_manageTimeoutFlag function descriptionGreyson Christoforo
2021-01-06Allow disabling CDC with -DCDC_DISABLEDDaniel Gibson
Sometimes Arduino-based USB devices don't work because some hardware (like KVM switches) gets confused by the CDC sub-devices. This change makes it relatively easy to disable CDC at compiletime. Disabling it of course means that the serial console won't work anymore, so you need to use the reset button when flashing. CDC_DISABLED is also used in ArduinoCore-samd for the same purpose. based on https://github.com/gdsports/usb-metamorph/tree/master/USBSerPassThruLine See also https://github.com/NicoHood/HID/issues/225 and https://github.com/arduino/Arduino/issues/6387 and https://forum.arduino.cc/index.php?topic=545288.msg3717028#msg3717028
2020-11-02Merge pull request #369 from per1234/update-platform-docs-urlsMartino Facchin
Update platform specification URLs in configuration files
2020-11-02Update platform specification URLs in configuration filesper1234
The Google Code URL in boards.txt is very outdated. The URL in platform.txt is to a more recent home of the content, which has been replaced with a link to the new location, but while I'm updating boards.txt, I might as well point both URLs to the real page.
2020-11-02Merge pull request #345 from Vitve4/pr_344Martino Facchin
Improve reading ADC result
2020-11-01Improve reading ADC resultVitaly Shmagun
7.3.0-atmel3.6.1-arduino7 gcc fails to optimize separate reading from ADCL and ADCH. It produces additionally three eor commands or in some cases two mov commands in the assembly code (see discussion #344). These commands swap register contents before store them to data area. So they are completely unnecessary. Reading ADC result with ADC macro fixes it and gcc generates the right code..
2020-10-15Merge pull request #361 from matthijskooijman/improve-newMartino Facchin
Improve and complete implementation of new/delete
2020-09-17Use std::size_t in new/deleteMatthijs Kooijman
The standard dictates that `std::size_t` is used, rather than the plain `size_t` type. Even though these types are usually, if not always, exactly the same type, other code might assume that `std::size_t` is actually used and thus also available under that name after including `<new>`. This fixes that by using the right type. One challenge is that it is usually declared in headers that we do not have available, so this just defines the `std::size_t` type in the `<new>` header to work around that.
2020-09-17Optionally let new terminate on allocation failureMatthijs Kooijman
This is currently disabled, keeping the old behavior of returning NULL on failure, but should probably be enabled in the future as code that does want to do a null check has had a chance to switch to the more portable nothrow versions. When enabled, allocation failure calls the weak `std::terminate()`, which calls `abort()` by default, but can be replaced by user code to do more specific handling. To enable this, a macro must be defined (in new.cpp or on the compiler commandline). This fixes part of #287.
2020-09-17Make zero-sized new standards-compliantMatthijs Kooijman
This fixes part of #287.
2020-09-17Call std::terminate on pure or deleted virtual functionsMatthijs Kooijman
These are special functions that are presumably put into vtables for deleted or pure virtual functions. Previously, this would call `abort()` directly, but calling `std::terminate()` achieves the same effect, but allows user code to change the behavior (e.g. to print to serial, blink leds or whatever makes sense).
2020-09-17Add weak `std::terminate()` implementationMatthijs Kooijman
This allows calling it from other places later. The default implementation calls `abort()`, but making it weak allows user code to override this function (either directly, or by including a library like uclibc++ that implements `std::set_terminate()`). Note that this does not add a declaration for this function, since the standard dictates this to be in `<exception>`, but we cannot meaningfully or completely implement that header, so better leave it to be overridden by e.g. libraries like uclibc++.
2020-09-17Allow overriding selected operator new and delete functionsMatthijs Kooijman
This makes these functions weak, so that a sketch or library can replace them. This does not apply to all of these operators, only for the ones that the C++ standard specifies as replaceable.
2020-09-17Clean up and complete `<new>` headerMatthijs Kooijman
This makes this header complete up to including C++14, except two exception classes that cannot be defined without `<exception>`. The functions related to the "new_handler" are declared but not actually defined, to prevent overhead and complexity. They are still declared to allow implementing them in user code if needed. This makes the implementation of all operator new and delete functions comply with the C++11/C++14 specification in terms of which should be actually implemented and which should be delegate to other functions. There are still some areas where these implementations are not entirely standards-compliant, which will be fixed in subsequent commits. This fixes part of #287 and fixes #47.
2020-09-17Swap new and new.h header filesMatthijs Kooijman
Originally, the Arduino core used "new.h", rather than the standard "new", probably because the implementation was incomplete, and for the most commonly used new and delete operators, no include is needed at all (they are defined implicitly by the compiler). However, now Arduino does expose the "new" name, as an alias for the older "new.h". Given that the standard name is "new", it makes more sense to put the actual content in "new", and make "new.h" a compatibility header that includes "new" instead of the other way around.
2020-06-11Wire: apply last suggested comment from @matthijskooijmanMartino Facchin
2020-06-11Publish 1.8.3Martino Facchin
2020-06-11Wire: improve comments on timeoutMatthijs Kooijman
2020-06-11Wire: add sensible defaults to setWireTimeoutMartino Facchin
2020-06-11Introduce non compulsory Wire timeoutGreyson Christoforo
move timout handling into its own function change timeout from milliseconds to microseconds don't forget operating slave address or the bitrate when we reset because of a timeout Co-Authored-By: Witold Markowski <witold.a.markowski@gmail.com> fix delay datatype uint16_t --> uint32_t Update libraries/Wire/src/utility/twi.c fix mix up using TWBR instea of TWAR! Co-Authored-By: Matthijs Kooijman <matthijs@stdin.nl> Update libraries/Wire/src/utility/twi.c fix 2nd TWBR/TWAR mixup Co-Authored-By: Matthijs Kooijman <matthijs@stdin.nl> twi_stop() should use the same timeout as everywhere else all while loops are now protected by timeouts Revert "twi_stop() should use the same timeout as everywhere else" This reverts commit 68fe5f1dae1bb41183bb37eeda3fb453394a580c. make timeout counter volatile rename timeout function for improved clarity - resetting the twi interface on timeouts is now optional - timeouts in the ISR are no longer hardcoded and now obey the set timeout value - a user-readable flag is now set whenever a timeout occurs - the user can clear this flag whenever they like
2020-06-11Merge pull request #340 from eudoxos/header-newMartino Facchin
Add "new" proxy header for compatibility with c++-standard #include<new>
2020-06-11Merge pull request #335 from cmaglie/add-precomp-lib-supportMartino Facchin
Added precompiled library support
2020-05-13Add "new" proxy header for compatibility with c++-standard #include<new>eudoxos
2020-05-04Merge pull request #337 from Max-Leopold/patch-1Martino Facchin
Correct comment on wiring_analog.c
2020-05-02Update comment on wiring_analog.cMaximilian Leopold
2020-04-28Added precompiled lib supportCristian Maglie
2020-03-19Merge pull request #318 from e28eta/typosMartino Facchin
Fix sine -> since typo in HardwareSerial files
2020-03-18Fix sine -> since typo in HardwareSerial filesDaniel Jackson
2019-12-02Release 1.8.2Cristian Maglie
2019-09-25Interrupt ordering for 32u2 and 16u2 MCU (#66)Manuel Reimer
* Interrupt ordering for 32u2 and 16u2 MCU * Added missing chip variants
2019-09-20Added SERIAL_PORT_MONITOR define to Arduino EthernetGiampiero Baggiani
Port of https://github.com/arduino/Arduino/pull/7023
2019-09-20Merge pull request #286 from arduino/remove-genuinoMartino Facchin
Remove Genuino Occurrences
2019-09-20Removed Genuino Micro and set to replace it with Arduino Micro on uploadCristian Maglie
2019-09-19Remove Genuino OccurrencesLuca Cipriani