Skip to content

Releases: Arduino-IRremote/Arduino-IRremote

Changed wrong &Serial to aSerial at 2 places

08 Apr 21:22

Choose a tag to compare

v4.7.1

Bumped version to 4.7.1 - Changed wrong &Serial to aSerial at 2 places.

Removed useless `LG2` protocol, bug fixes and improvements

02 Apr 13:54

Choose a tag to compare

  • Added removed typedef IRRawDataType for backward compatibility.
  • Modified and renamed function setToggleBitValueForRC5AndRC6() to setNextToggleBitValueForRC5AndRC6().
  • Fixed bug in sending RC6A.
  • Updated LG protocol and removed useless LG2 protocol.
  • Added new functions match*WithGreaterRange(), e.g. matchMarkWithGreaterRange().
  • Improved B&O decoding using new functions.

Added OpenLASIR and decoding for Marantz protocol

26 Feb 11:19

Choose a tag to compare

  • Fixed missing ESP IRAM_ATTR for receiving interrupt.
  • Changed USE_DEFAULT_FEEDBACK_LED_PIN from 0 to 0xFF, because megaTinyCore defines the not special pin PIN_PA4 as 0.
  • Changed timer for ATtiny16X4.
  • Fixed missing initialization with pinMode() for feedback LED.
  • Fixed bitmask error in sendBiphaseData() when not sending start bit.
  • Improved decodeSamsung().
  • OpenLASIR protocol added by danielweidman.
  • Added DECODE_MARANTZ and swapped parameter aMarantzExtension and aNumberOfRepeats of sendMaranz() to be consistent with other extensions.
  • Improved biphase decoding.
  • Improved debug output handling.
  • Moved IRCommandDispatcher from demo to main library folder.

Added support for multiple receiver instances and output for UNKNOWN protocol to printIRSendUsage().

05 Sep 20:40

Choose a tag to compare

  • Added support for multiple receiver instances.
  • irparams_struct irparams is now member of IRrecv. Thus removed rawDataPtr (pointer to irparams) from IrReceiver.decodedIRData.
  • Removed return value for all decodePulseDistanceWidthData() decoding functions, which returned a constant true.
  • Removed parameter aEnableLEDFeedback in function IRsend::begin(bool aEnableLEDFeedback, uint_fast8_t aFeedbackLEDPin) and IRsend::begin(uint_fast8_t aSendPin, bool aEnableLEDFeedback, uint_fast8_t aFeedbackLEDPin).
  • LED feedback is always enabled for sending. It can only be disabled by using the macro NO_LED_SEND_FEEDBACK_CODE.
  • Added output for UNKNOWN protocol to printIRSendUsage().
  • Added experimental sendVelux().
  • Added sendMaranz().
  • Fixed bug in ReceiveDemo.cpp if DEBUG_BUTTON_PIN is not defined. #1306.
  • Fixed minor bugs in Denon decoder.
  • Minor bug fixes for DEBUG.
  • New handling of MARK_EXCESS_MICROS without strange rounding inconsistency.
  • Added experimental threshold decoding.

Added USE_ACTIVE_LOW_OUTPUT_FOR_SEND_PIN to make the software aware of send LED connected between VCC and send pin.

29 Jun 08:57

Choose a tag to compare

  • Added USE_ACTIVE_LOW_OUTPUT_FOR_SEND_PIN to make the software aware of send LED connected between VCC and send pin.
  • Fixed backward compatibility bug for printIRResultShort(3 params).
  • Minor improvements.

Improvements and bug fixes

25 May 11:46

Choose a tag to compare

  • Support for SAMD51 timer3 if timer 5 is not available (Adafruit ItsyBitsy M4).
  • attachInterrupt() on SAMD has a different semantic :-(. See: https://www.arduino.cc/reference/tr/language/functions/external-interrupts/attachinterrupt/.
  • Fixed overflow handling.
  • Improved repeat detection for DistanceWidthProtocol.
  • Print of IR frame duration in printIRResultShort();
  • PulseDistanceWidthProtocolConstants now in PROGMEM, this saves 190 bytes RAM for unit test.
  • Support for PROGMEM PulseDistanceWidthProtocol data.
  • Support duplicated 8 bit address for sendSamsungLG().

Support for ESP 3.0 core

09 Sep 10:48

Choose a tag to compare

  • Support for ESP 3.0 by akellai.
  • restartTimer() now uses variable sMicrosAtLastStopTimer to keep track of uncounted ticks between stopTimer() and restartTimer().
  • Removed functions addTicksToInternalTickCounter() and addMicrosToInternalTickCounter(), which were added in 4.1.0.
  • Version 2.2.0 of TinyIR with new TinyReceiverDecode() function to be used as drop in for IrReceiver.decode().
  • Support of RC6A.

Using 8 bit raw timing buffer for all timings except frame gap (former rawbuf[0]).

30 Jun 11:48

Choose a tag to compare

  • Using 8 bit raw timing buffer for all timings except frame gap (former rawbuf[0]).
  • Renamed decodedIRData.initialGap to decodedIRData.initialGapTicks.
  • sendNEC() and sendNEC2() now accepts 16 bit command to better map to NECext protocol found in IRDB databases.
  • ir_DistanceWidthProtocol() now decodes up to 10 ms mark or spaces if RAM is bigger than 2 k.
  • Improved sensitivity and decoding of PULSE_DISTANCE + PULSE_WIDTH protocols.
  • Changed TOLERANCE_FOR_DECODERS_MARK_OR_SPACE_MATCHING to TOLERANCE_FOR_DECODERS_MARK_OR_SPACE_MATCHING_PERCENT.
  • Improved examples AllProtocolsOnLCD, UnitTest and SimpleReceiver.
  • New functions decodePulseDistanceWidthData() with 6 parameters and decodePulseDistanceWidthDataStrict() with 7 parameters.

Added ESP32 core 3.x error message

10 Jun 12:55

Choose a tag to compare

  • Added sendSonyMSB(unsigned long data, int nbits) as a clone of sendSony(unsigned long data, int nbits) to be more consistent.
  • Added sendSamsungMSB(unsigned long data, int nbits) as a clone of sendSAMSUNG(unsigned long data, int nbits) to be more consistent.
  • Added ESP32 core 3.x error message.

Fixed overflow bug for rawlen > 254

19 Mar 21:09

Choose a tag to compare

  • Fixed overflow bug for rawlen > 254.
  • Removed deprecated sendPulseDistance... functions with parameter aSendStopBit.