-
New universal Pulse Distance / Pulse Width decoder added, which covers many previous unknown protocols.
-
Printout of code how to send received command by IrReceiver.printIRSendUsage(&Serial).
-
RawData type is now 64 bit for 32 bit platforms and therefore decodedIRData.decodedRawData can contain complete frame information for more protocols than with 32 bit as before.
-
Callback after receiving a command - call your own code if a message was received.
-
Added decoding of PulseDistanceWidth protocols and therfore changed function decodeDistance() to decodeDistanceWidth() and filename ir_DistanceProtocol.hpp to ir_DistanceWidthProtocol.hpp.
-
Removed static function printIRSendUsage(), but kept class function printIRSendUsage().
-
Changed type of decodedRawData and decodedRawDataArray which is now 64 bit for 32 bit platforms.
-
Added receiver callback functionality and registerReceiveCompleteCallback() function.
-
Introduced common structure PulseDistanceWidthProtocolConstants.
-
Where possible, changed all send and decode functions to use PulseDistanceWidthProtocolConstants.
-
Improved MSB/LSB handling
-
New convenience fuctions bitreverse32Bit() and bitreverseOneByte().
-
Improved Magiquest protocol.
-
Fix for #1028 - Prevent long delay caused by overflow when frame duration < repeat period - Thanks to Stephen Humphries!
-
Support for ATtiny816 - Thanks to elockman.
-
Added Bang&Olufsen protocol. #1030.
-
Third parameter of function "void begin(uint_fast8_t aSendPin, bool aEnableLEDFeedback, uint_fast8_t aFeedbackLEDPin)" is not optional anymore and this function is now only available if IR_SEND_PIN is not defined. #1033.
-
Fixed bug in sendSony() for command parameter > 0x7F;
-
Fixed bug with swapped LG2 header mark and space.
-
Disabled strict checks while decoding. They can be enabled by defining DECODE_STRICT_CHECKS.
-
Merged the 2 decode pulse width and distance functions.
-
Changed macro names _REPEAT_SPACE to _REPEAT_DISTANCE.
-
Improved TinyIRReceiver,added FAST protocol for it and added TinyIRSender.hpp and TinySender example, renamed TinyReceiver.h to TinyIR.h.
-
Added DISABLE_CODE_FOR_RECEIVER to save program memory and RAM if receiving functionality is not required.
-
Extracted protocol functions used by receive and send to IRProtocol.hpp.
-
Analyzed Denon code table and therefore changed Denon from MSB to LSB first.
-
Renamed sendRC6(aRawData...) to sendRC6Raw( aRawData...).
-
Support for seeduino which lacks the print(unsigned long long...) method. Thanks to sklott https://stackoverflow.com/users/11680056/sklott
-
Added support for attiny1614 by Joe Ostrander.
-
Fixed SEND_PWM_BY_TIMER for ATtiny167 thanks to freskpe.
-
Improved SHARP repeat decoding.
-
Replaced macros TIMER_EN/DISABLE_RECEIVE_INTR and EN/DISABLE_SEND_PWM_BY_TIMER by functions.
-
Added SAMSUNG48 protocol and sendSamsung48() function.