1. 09 May, 2018 1 commit
  2. 12 Apr, 2018 1 commit
  3. 02 Mar, 2018 1 commit
  4. 19 Feb, 2018 1 commit
  5. 18 Dec, 2017 1 commit
  6. 13 Nov, 2017 13 commits
    • John Holman's avatar
      Fix flush hanging issue · 58006613
      John Holman authored
      Make write to UDR and clearing of TXC bit in flush() atomic
      to avoid race condition.
      
      Fixes #3745 (second different issue introduced later but discussed
      in the same issue)
      58006613
    • John Holman's avatar
      Improve how TXCn bit is cleared in USCRnA register · 99c294c5
      John Holman authored
      Preserve values of configuration bits MPCMn and U2Xn.
      Avoid setting other read-only bits for datasheet conformance.
      
      See #3745
      99c294c5
    • John Holman's avatar
      Prevent buffer retransmission when transmit buffer is empty · e9e43cf5
      John Holman authored
      Moving the head buffer pointer and setting interrupt flag is now
      atomic in write(). Previously an intervening ISR could empty the
      buffer before the second ISR is triggered causing retransmission.
      
      Fixes: #3745 (original issue only)
      e9e43cf5
    • John Holman's avatar
      Create macro to guard critical sections for large transmit buffers · d50e5978
      John Holman authored
      New macro TX_BUFFER_ATOMIC makes the following code block atomic
      only if the transmit buffer is larger than 256 bytes. SREG is restored
      on completion.
      The macro is then used to simplify code for availableForWrite()
      d50e5978
    • chuck todd's avatar
      UnConfigured I2C Slave ISR Causing Reboot · f1c4cc63
      chuck todd authored
      In a MultiMaster I2C environment, The Default value of 0xFE in the TWAR cause the Arduino to respond as an I2C Slave device at address 0x7f.  If the Wire.h library was not configured as a I2C Slave, `Wire.begin(slaveID);` the Callbacks for `twi_onSlaveTransmit()` and `twi_onSlaveReceive()` are never initialized.
      But, they are called during servicing the TWI ISR.  This causes a reboot of the Arduino by jumping to an uninitialized function address (0).
      So, this fix initializes them to the Default Wire.h handler which will respond correctly even during Master Mode operations.
      A MASTER MODE only Arduino will respond to all Slave Calls that match TWAR, Unless the TWEA bit is disabled outside of Master Transactions.
      Chuck.
      It also initialized the TWAR to the General Call ID (0x0) and Disables General Call responses.
      
      Chuck.
      f1c4cc63
    • Scott Allen's avatar
      Always read key to check for new LUFA bootloader · 7d4bca50
      Scott Allen authored
      Instead of checking for the NEW_LUFA_SIGNATURE once in program memory and then
      setting a flag which is used for further checks, a function is used that always
      checks program memory directly.
      
      If a flag is used, there's a slight chance that its location in RAM could fall
      on MAGIC_KEY_POS. In this case, an aborted USB auto-reset sequence may fail.
      7d4bca50
    • Scott Allen's avatar
      Don't use line coding to trigger USB auto-reset · 31223160
      Scott Allen authored
      An auto-reset invoked using USB CDC is triggered by the port closing
      (when set to 1200 baud). Closing of the port is indicated by DTR going inactive.
      There is no need to have auto-reset invoked by a CDC_SET_LINE_CODING command.
      Only the CDC_SET_CONTROL_LINE_STATE command, which indicates a change in the
      state of DTR, should be used.
      31223160
    • Scott Allen's avatar
      Save/restore the watchdog during USB auto-reset · 10e0811c
      Scott Allen authored
      The state of the watchdog timer is saved during a USB auto-reset and then
      restored if the reset is aborted, in case the sketch is using the watchdog.
      10e0811c
    • Scott Allen's avatar
      Fix save/restore of magic key location during reset · 289faaa7
      Scott Allen authored
      In the USB CDC code to invoke an auto-reset, the magic key location could be
      restored before it had actually been saved. The sketch would then have a
      corrupted value at this location. This fix prevents the value from being
      restored if it hasn't previously been saved.
      289faaa7
    • Nico's avatar
      Updated Arduino as ISP setting · b084848f
      Nico authored
      b084848f
    • Torben Nielsen's avatar
    • Quswar Mahmood Abid's avatar
    • Martino Facchin's avatar
      Add extras folder for packagein and CI · b3b2f444
      Martino Facchin authored
      b3b2f444
  7. 18 Aug, 2017 1 commit
  8. 25 Jul, 2017 1 commit
    • Varun Mehta's avatar
      Fixed Serial Port Argument That May Include Spaces · 4866d9be
      Varun Mehta authored
      Other paths in avrdude.upload.pattern are wrapped in double quotes, and
      this -P{serial.port} causes issues with some platforms. This allows
      serial port devices which include spaces and other characters. Without
      this fix a /dev/tty* or /dev/cu* device that includes a space in its
      name gets truncated when passed to avrdude. Error messages returned
      from avrdude are cryptic, and workarounds (symlinks) are prone to
      failure.
      
      Fixes #3693
      4866d9be
  9. 18 Jul, 2017 1 commit
  10. 06 Jul, 2017 1 commit
  11. 31 May, 2017 1 commit
  12. 23 May, 2017 2 commits
  13. 16 May, 2017 1 commit
  14. 20 Mar, 2017 2 commits
  15. 16 Mar, 2017 3 commits
  16. 14 Mar, 2017 1 commit
  17. 08 Mar, 2017 1 commit
  18. 07 Mar, 2017 2 commits
  19. 08 Feb, 2017 4 commits
  20. 09 Jan, 2017 1 commit