This commit is contained in:
@@ -18,7 +18,7 @@ Refrain from using overly long or capitalized titles as they are usually annoyin
|
||||
We use the original [C Style by Kerninghan / Ritchie](https://en.wikipedia.org/wiki/Indentation_style#K&R_style) in [variant: 1TBS (OTBS)](https://en.wikipedia.org/wiki/Indentation_style#Variant:_1TBS_(OTBS)).<br/>
|
||||
In short: 4 spaces indentation, no tabs, opening braces on the same line, braces are mandatory on all if/while/do, no hard line length limit.<br/>
|
||||
To beautify your code, you may use the online formatter [here](https://www.freecodeformat.com/c-format.php).
|
||||
#### Cover **all** occurences of the problem / addition you address with your PR
|
||||
#### Cover **all** occurrences of the problem / addition you address with your PR
|
||||
Do not forget the documentation like it is done for existing code. Code changes without proper documentation will be rejected!
|
||||
|
||||
## Adding new protocols
|
||||
|
||||
@@ -31,5 +31,9 @@ These are the active contributors of this project that you may contact if there
|
||||
- [slott](https://stackoverflow.com/users/11680056/sklott) Seeduino print(unsigned long long...) support.
|
||||
- [Joe Ostrander](https://github.com/joeostrander) Added support for attiny1614.
|
||||
- [Buzzerb](https://github.com/Buzzerb) Added Extended NEC protocol to TinyIR and making it more consistent.
|
||||
- [akellai](https://github.com/akellai) Added ESP 3.0 support.
|
||||
- [Hayden McAfee](https://github.com/haydenmc) Help with UnoR4 support.
|
||||
- [Yonghwan SO](https://github.com/sio4) Fixed bug in ReceiveDemo.cpp if DEBUG_BUTTON_PIN is not defined. #1306.
|
||||
- [A.R.Jung](https://github.com/arjung467) Marantz-RC5 extension support #1314.
|
||||
|
||||
Note: Please let [ArminJo](https://github.com/ArminJo) know if you have been missed.
|
||||
|
||||
@@ -2339,7 +2339,7 @@ INCLUDED_BY_GRAPH = YES
|
||||
# The default value is: NO.
|
||||
# This tag requires that the tag HAVE_DOT is set to YES.
|
||||
|
||||
CALL_GRAPH = NO
|
||||
CALL_GRAPH = YES
|
||||
|
||||
# If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
|
||||
# dependency graph for every global function or class method.
|
||||
@@ -2351,7 +2351,7 @@ CALL_GRAPH = NO
|
||||
# The default value is: NO.
|
||||
# This tag requires that the tag HAVE_DOT is set to YES.
|
||||
|
||||
CALLER_GRAPH = NO
|
||||
CALLER_GRAPH = YES
|
||||
|
||||
# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
|
||||
# hierarchy of all classes instead of a textual one.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -2,6 +2,62 @@
|
||||
The latest version may not be released!
|
||||
See also the commit log at github: https://github.com/Arduino-IRremote/Arduino-IRremote/commits/master
|
||||
|
||||
# 4.5.0
|
||||
- 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.
|
||||
|
||||
# 4.4.3
|
||||
- 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.
|
||||
|
||||
# 4.4.2
|
||||
- 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().
|
||||
|
||||
# 4.4.1
|
||||
- Support for ESP core 3.x 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.
|
||||
|
||||
# 4.4.0
|
||||
- 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.
|
||||
|
||||
# 4.3.2
|
||||
- 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.
|
||||
|
||||
# 4.3.1
|
||||
- Fixed overflow bug for rawlen > 254.
|
||||
- Removed deprecated sendPulseDistance... functions with parameter aSendStopBit.
|
||||
|
||||
# 4.3.0
|
||||
- Removed default value USE_DEFAULT_FEEDBACK_LED_PIN for last parameter of IRsend::begin(bool aEnableLEDFeedback, uint_fast8_t aFeedbackLEDPin).
|
||||
Therefore IrSender.begin(DISABLE_LED_FEEDBACK) will not longer work!
|
||||
@@ -31,14 +87,14 @@ See also the commit log at github: https://github.com/Arduino-IRremote/Arduino-I
|
||||
- Usage of ATTinyCore pin numbering scheme e.g. PIN_PB2.
|
||||
- Added ARDUINO_ARCH_NRF52 to support Seeed XIAO nRF52840 Sense.
|
||||
- First untested support of Uno R4.
|
||||
- Extraced version macros to IRVersion.h.
|
||||
- Extracted version macros to IRVersion.h.
|
||||
|
||||
## 4.1.2
|
||||
- Workaround for ESP32 RTOS delay() timing bug influencing the mark() function.
|
||||
|
||||
## 4.1.1
|
||||
- SAMD51 use timer3 if timer5 not available.
|
||||
- Disabled #define LOCAL_DEBUG in IRReceive.hpp, which was accidently enabled at 4.1.0.
|
||||
- Disabled #define LOCAL_DEBUG in IRReceive.hpp, which was accidentally enabled at 4.1.0.
|
||||
|
||||
## 4.1.0
|
||||
- Fixed bug in printing durations > 64535 in printIRResultRawFormatted().
|
||||
@@ -65,7 +121,7 @@ See also the commit log at github: https://github.com/Arduino-IRremote/Arduino-I
|
||||
- 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().
|
||||
- New convenience functions 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.
|
||||
@@ -109,7 +165,7 @@ See also the commit log at github: https://github.com/Arduino-IRremote/Arduino-I
|
||||
- Improved pin mapping for TinyReceiver.
|
||||
|
||||
## 3.7.1
|
||||
- SendRaw now supports bufferlenght > 255.
|
||||
- SendRaw now supports buffer length > 255.
|
||||
- Improved DistanceProtocol decoder output.
|
||||
- Fixed ESP32 send bug for 2.x ESP32 cores.
|
||||
|
||||
@@ -277,7 +333,7 @@ See also the commit log at github: https://github.com/Arduino-IRremote/Arduino-I
|
||||
- Corrected keywords.txt.
|
||||
- BoseWave protocol added PR #690.
|
||||
- Formatting comply to the new stylesheet.
|
||||
- Renamed "boarddefs.h" [ISSUE #375](https://github.com/Arduino-IRremote/Arduino-IRremote/issues/375).
|
||||
- Renamed "boarddefs.h".
|
||||
- Renamed `SEND_PIN` to `IR_SEND_PIN`.
|
||||
- Renamed state macros.
|
||||
- Enabled `DUTY_CYCLE` for send signal.
|
||||
@@ -344,7 +400,7 @@ Changes from #268 by adamlhumphreys
|
||||
- Fixed #110 Mess
|
||||
- Created Gitter Room
|
||||
- Added Gitter Badge
|
||||
- Standardised Code Base
|
||||
- Standardized Code Base
|
||||
- Clean Debug Output
|
||||
- Optimized Send Loops
|
||||
- Modularized Design
|
||||
@@ -372,4 +428,4 @@ Changes from #268 by adamlhumphreys
|
||||
- Broke Teensy 3 / 3.1 Support
|
||||
|
||||
### Not Working
|
||||
- Teensy 3 / 3.1 Support is in Development
|
||||
- Teensy 3 / 3.1 Support is in Development
|
||||
@@ -34,9 +34,17 @@ void dumpFooter();
|
||||
|
||||
void setup() {
|
||||
Serial.begin(115200);
|
||||
#if defined(__AVR_ATmega32U4__) || defined(SERIAL_PORT_USBVIRTUAL) || defined(SERIAL_USB) /*stm32duino*/|| defined(USBCON) /*STM32_stm32*/|| defined(SERIALUSB_PID) || defined(ARDUINO_attiny3217)
|
||||
delay(4000); // To be able to connect Serial monitor after reset or power up and before first print out. Do not wait for an attached Serial Monitor!
|
||||
|
||||
#if defined(__AVR_ATmega32U4__) || defined(SERIAL_PORT_USBVIRTUAL) || defined(SERIAL_USB) /*stm32duino*/|| defined(USBCON) /*STM32_stm32*/ \
|
||||
|| defined(SERIALUSB_PID) || defined(ARDUINO_ARCH_RP2040) || defined(ARDUINO_attiny3217)
|
||||
// Wait until Serial Monitor is attached.
|
||||
// Required for boards using USB code for Serial like Leonardo.
|
||||
// Is void for USB Serial implementations using external chips e.g. a CH340.
|
||||
while (!Serial)
|
||||
;
|
||||
// !!! Program will not proceed if no Serial Monitor is attached !!!
|
||||
#endif
|
||||
|
||||
// Just to know which program is running on my Arduino
|
||||
Serial.println(F("START " __FILE__ " from " __DATE__ "\r\nUsing library version " VERSION_IRREMOTE));
|
||||
|
||||
@@ -193,7 +201,7 @@ void dumpPulseParams() {
|
||||
;
|
||||
Serial.println(F(" uSecs"));
|
||||
Serial.print(F("Measurement tolerance: "));
|
||||
Serial.print(TOLERANCE_FOR_DECODERS_MARK_OR_SPACE_MATCHING);
|
||||
Serial.print(TOLERANCE_FOR_DECODERS_MARK_OR_SPACE_MATCHING_PERCENT);
|
||||
Serial.println(F("%"));
|
||||
}
|
||||
|
||||
|
||||
@@ -67,12 +67,11 @@
|
||||
#include "PinDefinitionsAndMore.h" // Define macros for input and output pin etc.
|
||||
|
||||
#if !defined(RAW_BUFFER_LENGTH)
|
||||
# if RAMEND <= 0x4FF || RAMSIZE < 0x4FF
|
||||
#define RAW_BUFFER_LENGTH 180 // 750 (600 if we have only 2k RAM) is the value for air condition remotes. Default is 112 if DECODE_MAGIQUEST is enabled, otherwise 100.
|
||||
# elif RAMEND <= 0x8FF || RAMSIZE < 0x8FF
|
||||
#define RAW_BUFFER_LENGTH 500 // 750 (600 if we have only 2k RAM) is the value for air condition remotes. Default is 112 if DECODE_MAGIQUEST is enabled, otherwise 100.
|
||||
// For air condition remotes it may require up to 750. Default is 200.
|
||||
# if (defined(RAMEND) && RAMEND <= 0x4FF) || (defined(RAMSIZE) && RAMSIZE < 0x4FF)
|
||||
#define RAW_BUFFER_LENGTH 360
|
||||
# else
|
||||
#define RAW_BUFFER_LENGTH 750 // 750 (600 if we have only 2k RAM) is the value for air condition remotes. Default is 112 if DECODE_MAGIQUEST is enabled, otherwise 100.
|
||||
#define RAW_BUFFER_LENGTH 750
|
||||
# endif
|
||||
#endif
|
||||
|
||||
@@ -83,6 +82,8 @@
|
||||
#define BAUDRATE 115200
|
||||
#define NO_DECODER
|
||||
|
||||
//#define NO_LED_FEEDBACK_CODE // Saves 346 bytes program memory
|
||||
|
||||
#include "IRremote.hpp"
|
||||
#include <limits.h>
|
||||
|
||||
@@ -190,8 +191,7 @@ String Tokenizer::getRest() {
|
||||
}
|
||||
|
||||
String Tokenizer::getLine() {
|
||||
if (index == invalidIndex)
|
||||
return String("");
|
||||
if (index == invalidIndex) return String("");
|
||||
|
||||
int i = payload.indexOf('\n', index);
|
||||
String s = (i > 0) ? payload.substring(index, i) : payload.substring(index);
|
||||
@@ -200,16 +200,13 @@ String Tokenizer::getLine() {
|
||||
}
|
||||
|
||||
String Tokenizer::getToken() {
|
||||
if (index < 0)
|
||||
return String("");
|
||||
if (index < 0) return String("");
|
||||
|
||||
int i = payload.indexOf(' ', index);
|
||||
String s = (i > 0) ? payload.substring(index, i) : payload.substring(index);
|
||||
index = (i > 0) ? i : invalidIndex;
|
||||
if (index != invalidIndex)
|
||||
if (index != invalidIndex)
|
||||
while (payload.charAt(index) == ' ')
|
||||
index++;
|
||||
if (index != invalidIndex) if (index != invalidIndex) while (payload.charAt(index) == ' ')
|
||||
index++;
|
||||
return s;
|
||||
}
|
||||
|
||||
@@ -253,26 +250,23 @@ static inline unsigned hz2khz(frequency_t hz) {
|
||||
*/
|
||||
static void sendRaw(const microseconds_t intro[], unsigned lengthIntro, const microseconds_t repeat[], unsigned lengthRepeat,
|
||||
const microseconds_t ending[], unsigned lengthEnding, frequency_t frequency, unsigned times) {
|
||||
if (lengthIntro > 0U)
|
||||
IrSender.sendRaw(intro, lengthIntro, hz2khz(frequency));
|
||||
if (lengthRepeat > 0U)
|
||||
for (unsigned i = 0U; i < times - (lengthIntro > 0U); i++)
|
||||
IrSender.sendRaw(repeat, lengthRepeat, hz2khz(frequency));
|
||||
if (lengthEnding > 0U)
|
||||
IrSender.sendRaw(ending, lengthEnding, hz2khz(frequency));
|
||||
if (lengthIntro > 0U) IrSender.sendRaw(intro, lengthIntro, hz2khz(frequency));
|
||||
if (lengthRepeat > 0U) for (unsigned i = 0U; i < times - (lengthIntro > 0U); i++)
|
||||
IrSender.sendRaw(repeat, lengthRepeat, hz2khz(frequency));
|
||||
if (lengthEnding > 0U) IrSender.sendRaw(ending, lengthEnding, hz2khz(frequency));
|
||||
}
|
||||
#endif // TRANSMIT
|
||||
|
||||
#if defined(RECEIVE)
|
||||
|
||||
static void dump(Stream &stream) {
|
||||
unsigned int count = IrReceiver.decodedIRData.rawDataPtr->rawlen;
|
||||
unsigned int count = IrReceiver.irparams.rawlen;
|
||||
// If buffer gets full, count = RAW_BUFFER_LENGTH, which is odd,
|
||||
// and IrScrutinizer does not like that.
|
||||
count &= ~1;
|
||||
for (unsigned int i = 1; i < count; i++) {
|
||||
stream.write(i & 1 ? '+' : '-');
|
||||
stream.print(IrReceiver.decodedIRData.rawDataPtr->rawbuf[i] * MICROS_PER_TICK, DEC);
|
||||
stream.print(IrReceiver.irparams.rawbuf[i] * MICROS_PER_TICK, DEC);
|
||||
stream.print(" ");
|
||||
}
|
||||
stream.print('-');
|
||||
@@ -300,8 +294,6 @@ static void receive(Stream &stream) {
|
||||
*/
|
||||
void setup() {
|
||||
Serial.begin(BAUDRATE);
|
||||
while (!Serial)
|
||||
; // wait for serial port to connect.
|
||||
|
||||
Serial.println(F(PROGNAME " " VERSION));
|
||||
// Just to know which program is running on my Arduino
|
||||
@@ -317,9 +309,13 @@ void setup() {
|
||||
#endif
|
||||
|
||||
#if defined(IR_SEND_PIN)
|
||||
IrSender.begin(); // Start with IR_SEND_PIN -which is defined in PinDefinitionsAndMore.h- as send pin and enable feedback LED at default feedback LED pin
|
||||
/*
|
||||
* No IR library setup required :-)
|
||||
* Default is to use IR_SEND_PIN -which is defined in PinDefinitionsAndMore.h- as send pin
|
||||
* and use feedback LED at default feedback LED pin if not disabled by #define NO_LED_SEND_FEEDBACK_CODE
|
||||
*/
|
||||
#else
|
||||
IrSender.begin(3, ENABLE_LED_FEEDBACK, USE_DEFAULT_FEEDBACK_LED_PIN); // Specify send pin and enable feedback LED at default feedback LED pin
|
||||
IrSender.begin(3); // Specify send pin and enable feedback LED at default feedback LED pin
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
@@ -16,45 +16,56 @@ decodedIRData KEYWORD1
|
||||
#######################################
|
||||
# Methods and Functions (KEYWORD2)
|
||||
#######################################
|
||||
|
||||
setFeedbackLED KEYWORD2
|
||||
enableLEDFeedback KEYWORD2
|
||||
enableLEDFeedbackForSend KEYWORD2
|
||||
disableLEDFeedback KEYWORD2
|
||||
disableLEDFeedbackForSend KEYWORD2
|
||||
printIRResultShort KEYWORD2
|
||||
begin KEYWORD2
|
||||
start KEYWORD2
|
||||
# IRReceive
|
||||
available KEYWORD2
|
||||
begin KEYWORD2
|
||||
decode KEYWORD2
|
||||
disableIRIn KEYWORD2
|
||||
enableIRIn KEYWORD2
|
||||
isIdle KEYWORD2
|
||||
printActiveIRProtocols KEYWORD2
|
||||
printIRResultMinimal KEYWORD2
|
||||
printIRResultRawFormatted KEYWORD2
|
||||
printIRResultShort KEYWORD2
|
||||
printIRSendUsage KEYWORD2
|
||||
registerReceiveCompleteCallback KEYWORD2
|
||||
restartAfterSend KEYWORD2
|
||||
restartTimer KEYWORD2
|
||||
restartTimerWithTicksToAdd KEYWORD2
|
||||
resume KEYWORD2
|
||||
setReceivePin KEYWORD2
|
||||
start KEYWORD2
|
||||
read KEYWORD2
|
||||
stop KEYWORD2
|
||||
end KEYWORD2
|
||||
enableLEDFeedback KEYWORD2
|
||||
decode KEYWORD2
|
||||
resume KEYWORD2
|
||||
enableIRIn KEYWORD2
|
||||
disableIRIn KEYWORD2
|
||||
sendNEC KEYWORD2
|
||||
|
||||
# IRSend
|
||||
setSendPin KEYWORD2
|
||||
write KEYWORD2
|
||||
enableIROut KEYWORD2
|
||||
IRLedOff KEYWORD2
|
||||
sendRaw KEYWORD2
|
||||
sendApple KEYWORD2
|
||||
sendFAST KEYWORD2
|
||||
sendJVC KEYWORD2
|
||||
sendLegoPowerFunctions KEYWORD2
|
||||
sendLG KEYWORD2
|
||||
sendLGRepeat KEYWORD2
|
||||
sendLG2 KEYWORD2
|
||||
sendLG2Repeat KEYWORD2
|
||||
sendLGRaw KEYWORD2
|
||||
sendMaranz KEYWORD2
|
||||
sendMagiQuest KEYWORD2
|
||||
sendNEC KEYWORD2
|
||||
sendNEC2 KEYWORD2
|
||||
sendNECRepeat KEYWORD2
|
||||
sendNECRaw KEYWORD2
|
||||
sendOnkyo KEYWORD2
|
||||
sendApple KEYWORD2
|
||||
sendPanasonic KEYWORD2
|
||||
sendPronto KEYWORD2
|
||||
sendKaseikyo KEYWORD2
|
||||
sendKaseikyo_Denon KEYWORD2
|
||||
sendKaseikyo_Sharp KEYWORD2
|
||||
sendKaseikyo_JVC KEYWORD2
|
||||
sendKaseikyo_Mitsubishi KEYWORD2
|
||||
sendRaw KEYWORD2
|
||||
sendRaw_P KEYWORD2
|
||||
sendRC5 KEYWORD2
|
||||
sendRC6 KEYWORD2
|
||||
sendSamsungRepeat KEYWORD2
|
||||
@@ -62,23 +73,42 @@ sendSamsung KEYWORD2
|
||||
sendSharp KEYWORD2
|
||||
sendSony KEYWORD2
|
||||
sendSharpRaw KEYWORD2
|
||||
sendLegoPowerFunctions KEYWORD2
|
||||
sendMagiQuest KEYWORD2
|
||||
sendPronto KEYWORD2
|
||||
sendMagiQuest KEYWORD2
|
||||
sendVelux KEYWORD2
|
||||
|
||||
# IRFeedbackLED
|
||||
disableLEDFeedback KEYWORD2
|
||||
disableLEDFeedbackForSend KEYWORD2
|
||||
enableLEDFeedback KEYWORD2
|
||||
enableLEDFeedbackForSend KEYWORD2
|
||||
setFeedbackLED KEYWORD2
|
||||
setLEDFeedback KEYWORD2
|
||||
|
||||
# TinyIRReceiver
|
||||
disablePCIInterruptForTinyReceiver KEYWORD2
|
||||
enablePCIInterruptForTinyReceiver KEYWORD2
|
||||
initPCIInterruptForTinyReceiver KEYWORD2
|
||||
isIRReceiverAttachedForTinyReceiver KEYWORD2
|
||||
printTinyReceiverResultMinimal KEYWORD2
|
||||
TinyReceiverDecode KEYWORD2
|
||||
# TinyIRSender
|
||||
sendExtendedNEC KEYWORD2
|
||||
sendFAST KEYWORD2
|
||||
|
||||
#######################################
|
||||
# Constants (LITERAL1)
|
||||
#######################################
|
||||
|
||||
UNKNOWN LITERAL1
|
||||
PULSE_DISTANCE LITERAL1
|
||||
PULSE_WIDTH LITERAL1
|
||||
APPLE LITERAL1
|
||||
DENON LITERAL1
|
||||
DISH LITERAL1
|
||||
JVC LITERAL1
|
||||
LG LITERAL1
|
||||
LG2 LITERAL1
|
||||
NEC LITERAL1
|
||||
NEC2 LITERAL1
|
||||
ONKYO LITERAL1
|
||||
PANASONIC LITERAL1
|
||||
KASEIKYO LITERAL1
|
||||
KASEIKYO_JVC LITERAL1
|
||||
@@ -87,18 +117,57 @@ KASEIKYO_SHARP LITERAL1
|
||||
KASEIKYO_MITSUBISHI LITERAL1
|
||||
RC5 LITERAL1
|
||||
RC6 LITERAL1
|
||||
RC6A LITERAL1
|
||||
SAMSUNG LITERAL1
|
||||
SAMSUNGLG LITERAL1
|
||||
SAMSUNG48 LITERAL1
|
||||
SHARP LITERAL1
|
||||
SONY LITERAL1
|
||||
ONKYO LITERAL1
|
||||
APPLE LITERAL1
|
||||
BANG_OLUFSEN LITERAL1
|
||||
BOSEWAVE LITERAL1
|
||||
LEGO_PF LITERAL1
|
||||
MAGIQUEST LITERAL1
|
||||
WHYNTER LITERAL1
|
||||
FAST LITERAL1
|
||||
UNKNOWN LITERAL1
|
||||
IR_RECEIVE_PIN LITERAL1
|
||||
|
||||
IRDATA_FLAGS_IS_REPEAT LITERAL1
|
||||
IRDATA_FLAGS_IS_AUTO_REPEAT LITERAL1
|
||||
IRDATA_FLAGS_PARITY_FAILED LITERAL1
|
||||
IRDATA_FLAGS_TOGGLE_BIT LITERAL1
|
||||
IRDATA_FLAGS_EXTRA_INFO LITERAL1
|
||||
IRDATA_FLAGS_WAS_OVERFLOW LITERAL1
|
||||
IRDATA_FLAGS_IS_MSB_FIRST LITERAL1
|
||||
|
||||
|
||||
RAW_BUFFER_LENGTH LITERAL1
|
||||
EXCLUDE_UNIVERSAL_PROTOCOLS LITERAL1
|
||||
EXCLUDE_EXOTIC_PROTOCOLS LITERAL1
|
||||
IR_REMOTE_DISABLE_RECEIVE_COMPLETE_CALLBACK LITERAL1
|
||||
MARK_EXCESS_MICROS LITERAL1
|
||||
RECORD_GAP_MICROS LITERAL1
|
||||
DISTANCE_WIDTH_DECODER_DURATION_ARRAY_SIZE LITERAL1
|
||||
IR_INPUT_IS_ACTIVE_HIGH LITERAL1
|
||||
IR_SEND_PIN LITERAL1
|
||||
FEEDBACK_LED_IS_ACTIVE_LOW LITERAL1
|
||||
SEND_PWM_BY_TIMER LITERAL1
|
||||
IR_SEND_DUTY_CYCLE_PERCENT LITERAL1
|
||||
USE_ACTIVE_LOW_OUTPUT_FOR_SEND_PIN LITERAL1
|
||||
USE_OPEN_DRAIN_OUTPUT_FOR_SEND_PIN LITERAL1
|
||||
USE_NO_SEND_PWM LITERAL1
|
||||
USE_ACTIVE_HIGH_OUTPUT_FOR_NO_SEND_PWM LITERAL1
|
||||
DISABLE_CODE_FOR_RECEIVER LITERAL1
|
||||
FEEDBACK_LED_IS_ACTIVE_LOW LITERAL1
|
||||
NO_LED_FEEDBACK_CODE LITERAL1
|
||||
NO_LED_RECEIVE_FEEDBACK_CODE LITERAL1
|
||||
NO_LED_SEND_FEEDBACK_CODE LITERAL1
|
||||
MICROS_PER_TICK LITERAL1
|
||||
TOLERANCE_FOR_DECODERS_MARK_OR_SPACE_MATCHING_PERCENT LITERAL1
|
||||
|
||||
# Constants for TinyIRReceiver
|
||||
IR_RECEIVE_PIN LITERAL1
|
||||
IR_FEEDBACK_LED_PIN LITERAL1
|
||||
DISABLE_PARITY_CHECKS LITERAL1
|
||||
USE_EXTENDED_NEC_PROTOCOL LITERAL1
|
||||
USE_ONKYO_PROTOCOL LITERAL1
|
||||
USE_FAST_PROTOCOL LITERAL1
|
||||
ENABLE_NEC2_REPEATS LITERAL1
|
||||
USE_CALLBACK_FOR_TINY_RECEIVER LITERAL1
|
||||
|
||||
@@ -1,15 +1,14 @@
|
||||
{
|
||||
"name": "IRremote",
|
||||
"keywords": "communication, infrared, ir, remote",
|
||||
"version": "4.5.0",
|
||||
"description": "Send and receive infrared signals with multiple protocols",
|
||||
"keywords": "communication, infrared, ir, remote",
|
||||
"homepage": "https://github.com/Arduino-IRremote/Arduino-IRremote",
|
||||
"repository":
|
||||
{
|
||||
"type": "git",
|
||||
"url": "https://github.com/z3t0/Arduino-IRremote.git"
|
||||
"url": "https://github.com/Arduino-IRremote/Arduino-IRremote.git"
|
||||
},
|
||||
"version": "4.3.0",
|
||||
"frameworks": "arduino",
|
||||
"platforms": ["atmelavr", "atmelmegaavr", "atmelsam", "espressif8266", "espressif32", "ststm32"],
|
||||
"authors" :
|
||||
[
|
||||
{
|
||||
@@ -26,5 +25,10 @@
|
||||
"email":"ken.shirriff@gmail.com"
|
||||
}
|
||||
],
|
||||
"headers": "IRRemote.hpp"
|
||||
"license": "MIT",
|
||||
"frameworks": "arduino",
|
||||
"platforms": ["atmelavr", "atmelmegaavr", "atmelsam", "espressif8266", "espressif32", "ststm32", "raspberrypi"],
|
||||
"headers": "IRRemote.hpp",
|
||||
"examples": "examples/*/*.ino",
|
||||
"export": {"exclude": [".github", "pictures"]}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
name=IRremote
|
||||
version=4.3.0
|
||||
version=4.5.0
|
||||
author=shirriff, z3t0, ArminJo
|
||||
maintainer=Armin Joachimsmeyer <armin.arduino@gmail.com>
|
||||
sentence=Send and receive infrared signals with multiple protocols
|
||||
paragraph=Currently included protocols: Denon / Sharp, JVC, LG / LG2, NEC / Onkyo / Apple, Panasonic / Kaseikyo, RC5, RC6, Samsung, Sony, (Pronto), BangOlufsen, BoseWave, Lego, Whynter, FAST, MagiQuest, Universal Pulse Distance and Pulse Width. NEW: TinyRSender improvements, sendSamsung bug fixes, new fields rawlen and initialGap and new functions stop/startTimer...().
|
||||
paragraph=Currently included protocols: Denon / Sharp, JVC, LG / LG2, NEC / Onkyo / Apple, Panasonic / Kaseikyo, RC5, RC6, Samsung, Sony, (Pronto), BangOlufsen, BoseWave, Lego, Whynter, FAST, MagiQuest, Velux, Universal Pulse Distance and Pulse Width.
|
||||
category=Communication
|
||||
url=https://github.com/Arduino-IRremote/Arduino-IRremote
|
||||
architectures=avr,megaavr,samd,esp8266,esp32,stm32,STM32F1,mbed,mbed_nano,rp2040,mbed_rp2040,renesas_uno
|
||||
|
||||
@@ -9,14 +9,13 @@
|
||||
|
||||
#include "IRremote.hpp"
|
||||
|
||||
#warning Thank you for using the IRremote library!
|
||||
#warning It seems, that you are using a old version 2.0 code / example.
|
||||
#warning It seems, that you are using an old version 2.0 code / example.
|
||||
#warning This version is no longer supported!
|
||||
#warning Please use one of the new code examples from the library available at "File > Examples > Examples from Custom Libraries / IRremote".
|
||||
#warning Or downgrade your library to version 2.6.0.
|
||||
#warning Upgrade instructions can be found here: "https://github.com/Arduino-IRremote/Arduino-IRremote?tab=readme-ov-file#converting-your-2x-program-to-the-4x-version"
|
||||
#warning Please use one of the new code examples from the library, available at "File > Examples > Examples from Custom Libraries / IRremote".
|
||||
#warning Start with the SimpleReceiver or SimpleSender example.
|
||||
#warning The examples are documented here: https://github.com/Arduino-IRremote/Arduino-IRremote#examples-for-this-library
|
||||
#warning A guide how to convert your 2.0 program is here: https://github.com/Arduino-IRremote/Arduino-IRremote#converting-your-2x-program-to-the-4x-version
|
||||
#warning The examples are documented here: "https://github.com/Arduino-IRremote/Arduino-IRremote?tab=readme-ov-file#examples-for-this-library"
|
||||
#warning Or just downgrade your library to version 2.6.0.
|
||||
|
||||
/**********************************************************************************************************************
|
||||
* The OLD and DEPRECATED decode function with parameter aResults, kept for backward compatibility to old 2.0 tutorials
|
||||
@@ -31,18 +30,19 @@ bool IRrecv::decode(decode_results *aResults) {
|
||||
if (!sMessageWasSent) {
|
||||
Serial.println(F("**************************************************************************************************"));
|
||||
Serial.println(F("Thank you for using the IRremote library!"));
|
||||
Serial.println(F("It seems, that you are using a old version 2.0 code / example."));
|
||||
Serial.println(F("It seems, that you are using an old version 2.0 code / example."));
|
||||
Serial.println(F("This version is no longer supported!"));
|
||||
Serial.println();
|
||||
Serial.println(F("Upgrade instructions can be found here:"));
|
||||
Serial.println(F(" https://github.com/Arduino-IRremote/Arduino-IRremote?tab=readme-ov-file#converting-your-2x-program-to-the-4x-version"));
|
||||
Serial.println();
|
||||
Serial.println(F("Please use one of the new code examples from the library,"));
|
||||
Serial.println(F(" available at \"File > Examples > Examples from Custom Libraries / IRremote\"."));
|
||||
Serial.println(F("Or downgrade your library to version 2.6.0."));
|
||||
Serial.println();
|
||||
Serial.println(F("Start with the SimpleReceiver or SimpleSender example."));
|
||||
Serial.println();
|
||||
Serial.println(F("The examples are documented here:"));
|
||||
Serial.println(F(" https://github.com/Arduino-IRremote/Arduino-IRremote#examples-for-this-library"));
|
||||
Serial.println(F("A guide how to convert your 2.0 program is here:"));
|
||||
Serial.println(F(" https://github.com/Arduino-IRremote/Arduino-IRremote#converting-your-2x-program-to-the-4x-version"));
|
||||
Serial.println(F(" https://github.com/Arduino-IRremote/Arduino-IRremote?tab=readme-ov-file#examples-for-this-library"));
|
||||
Serial.println();
|
||||
Serial.println(F("Or just downgrade your library to version 2.6.0."));
|
||||
Serial.println();
|
||||
Serial.println(F("Thanks"));
|
||||
Serial.println(F("**************************************************************************************************"));
|
||||
|
||||
Reference in New Issue
Block a user