Arduino-IRremote

Infrared remote library for Arduino: send and receive infrared signals with multiple protocols (by Arduino-IRremote)

Arduino-IRremote Alternatives

Similar projects and alternatives to Arduino-IRremote

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better Arduino-IRremote alternative or higher similarity.

Arduino-IRremote reviews and mentions

Posts with mentions or reviews of Arduino-IRremote. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-06-20.
  • Connect to wand?
    1 project | /r/MagiQuest | 10 Sep 2023
    However, there are plenty of libraries at this point which can handle the signal to varying degrees (some cant handle cast type but many dont care about that feature, including the game itself). I believe the most up to date currently is: https://github.com/Arduino-IRremote/Arduino-IRremote
  • ffffffff error in serial monitor
    1 project | /r/arduino | 8 Jul 2023
    RTFM. https://github.com/Arduino-IRremote/Arduino-IRremote : "...you must use the statement #include instead of #include in your main program..."
  • IRremote SendAndReceive
    1 project | /r/arduino | 6 Jul 2023
    /* * SendAndReceive.cpp * * Demonstrates sending IR codes and receiving it simultaneously * * This file is part of Arduino-IRremote https://github.com/Arduino-IRremote/Arduino-IRremote. * ************************************************************************************ * MIT License * * Copyright (c) 2021-2023 Armin Joachimsmeyer * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is furnished * to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in all * copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * ************************************************************************************ */ #include // select only NEC and the universal decoder for pulse distance protocols #define DECODE_NEC // Includes Apple and Onkyo #define DECODE_DISTANCE_WIDTH // In case NEC is not received correctly. Universal decoder for pulse distance width protocols #define DECODE_SAMSUNG //#define EXCLUDE_UNIVERSAL_PROTOCOLS // Saves up to 1000 bytes program memory. //#define EXCLUDE_EXOTIC_PROTOCOLS // saves around 650 bytes program memory if all other protocols are active //#define NO_LED_FEEDBACK_CODE // saves 92 bytes program memory //#define RECORD_GAP_MICROS 12000 // Default is 5000. Activate it for some LG air conditioner protocols //#define SEND_PWM_BY_TIMER // Disable carrier PWM generation in software and use (restricted) hardware PWM. //#define USE_NO_SEND_PWM // Use no carrier PWM, just simulate an active low receiver signal. Overrides SEND_PWM_BY_TIMER definition //#define DEBUG // Activate this for lots of lovely debug output from the decoders. #include "PinDefinitionsAndMore.h" // Define macros for input and output pin etc. #include #define DELAY_AFTER_SEND 2000 #define DELAY_AFTER_LOOP 5000 void setup() { Serial.begin(9600); #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! #endif // Just to know which program is running on my Arduino Serial.println(F("START " __FILE__ " from " __DATE__ "\r\nUsing library version " VERSION_IRREMOTE)); // Start the receiver and if not 3. parameter specified, take LED_BUILTIN pin from the internal boards definition as default feedback LED IrReceiver.begin(IR_RECEIVE_PIN, ENABLE_LED_FEEDBACK); Serial.print(F("Ready to receive IR signals of protocols: ")); printActiveIRProtocols(&Serial); Serial.println(F("at pin " STR(IR_RECEIVE_PIN))); IrSender.begin(); // Start with IR_SEND_PIN as send pin and enable feedback LED at default feedback LED pin Serial.println(F("Send IR signals at pin " STR(IR_SEND_PIN))); #if FLASHEND >= 0x3FFF // For 16k flash or more, like ATtiny1604 // For esp32 we use PWM generation by ledcWrite() for each pin. # if !defined(SEND_PWM_BY_TIMER) && !defined(USE_NO_SEND_PWM) && !defined(ESP32) /* * Print internal software PWM generation info */ IrSender.enableIROut(38); // Call it with 38 kHz to initialize the values printed below Serial.print(F("Send signal mark duration is ")); Serial.print(IrSender.periodOnTimeMicros); Serial.print(F(" us, pulse correction is ")); Serial.print(IrSender.getPulseCorrectionNanos()); Serial.print(F(" ns, total period is ")); Serial.print(IrSender.periodTimeMicros); Serial.println(F(" us")); # endif // infos for receive Serial.print(RECORD_GAP_MICROS); Serial.println(F(" us is the (minimum) gap, after which the start of a new IR packet is assumed")); Serial.print(MARK_EXCESS_MICROS); Serial.println(F(" us are subtracted from all marks and added to all spaces for decoding")); #endif } uint16_t sAddress = 0xB24D; uint16_t sCommand = 0x3FD; uint8_t sRepeats = 1; /* * Send NEC IR protocol */ void send_ir_data() { Serial.print(F("Sending: 0x")); Serial.print(sAddress, HEX); Serial.print(sCommand, HEX); Serial.println(sRepeats, HEX); Serial.flush(); // To avoid disturbing the software PWM generation by serial output interrupts // clip repeats at 4 if (sRepeats > 4) { sRepeats = 4; } // Results for the first loop to: Protocol=NEC Address=0x102 Command=0x34 Raw-Data=0xCB340102 (32 bits) IrSender.sendSamsung48(sAddress, sCommand, sRepeats); } void receive_ir_data() { if (IrReceiver.decode()) { Serial.print(F("Decoded protocol: ")); Serial.print(getProtocolString(IrReceiver.decodedIRData.protocol)); Serial.print(F(", decoded raw data: ")); #if (__INT_WIDTH__ < 32) Serial.print(IrReceiver.decodedIRData.decodedRawData, HEX); #else PrintULL::print(&Serial, IrReceiver.decodedIRData.decodedRawData, HEX); #endif Serial.print(F(", decoded address: ")); Serial.print(IrReceiver.decodedIRData.address, HEX); Serial.print(F(", decoded command: ")); Serial.println(IrReceiver.decodedIRData.command, HEX); IrReceiver.resume(); } } void loop() { /* * Print loop values */ Serial.println(); Serial.print(F("address=0x")); Serial.print(sAddress, HEX); Serial.print(F(" command=0x")); Serial.print(sCommand, HEX); Serial.print(F(" repeats=")); Serial.println(sRepeats); Serial.flush(); send_ir_data(); IrReceiver.restartAfterSend(); // Is a NOP if sending does not require a timer. // wait for the receiver state machine to detect the end of a protocol delay((RECORD_GAP_MICROS / 1000) + 5); receive_ir_data(); delay(2000); // Loop delay }
  • pls need help with school project
    1 project | /r/arduino | 26 Jun 2023
    Maybe your use of decode() is not correct, it seems to have changed in newer versions. https://github.com/Arduino-IRremote/Arduino-IRremote
  • How do i build a homemade Infrared Sender?
    2 projects | /r/diyelectronics | 20 Jun 2023
    Use this library
  • IR receiver returns the same code for every button input
    2 projects | /r/arduino | 23 Mar 2023
    if (IrReceiver.decodedIRData.flags & IRDATA_FLAGS_WAS_OVERFLOW) { Serial.println(F("Overflow detected")); Serial.println(F("Try to increase the \"RAW_BUFFER_LENGTH\" value of " STR(RAW_BUFFER_LENGTH) " in " __FILE__)); // see also https://github.com/Arduino-IRremote/Arduino-IRremote#compile-options--macros-for-this-library } else { Serial.println(divider); Serial.print("protocol: "); Serial.print(getProtocolString(IrReceiver.decodedIRData.protocol)); Serial.print(" (0x"); Serial.print(IrReceiver.decodedIRData.protocol, HEX); Serial.println(")"); if (IrReceiver.decodedIRData.protocol != 0) { // Unknown protocol (typically due to a misread) is ignored. Serial.print("address: "); Serial.println(IrReceiver.decodedIRData.address, HEX); Serial.print("command: "); Serial.println(IrReceiver.decodedIRData.command, HEX); Serial.print("data: "); Serial.println(IrReceiver.decodedIRData.decodedRawData, HEX);
  • IRremote only returns ffffffff value
    1 project | /r/arduino | 22 Mar 2023
    GitHub - Arduino-IRremote/Arduino-IRremote: Infrared remote library for Arduino: send and receive infrared signals with multiple protocols
  • MQTT &amp; IR Receiver
    2 projects | /r/esp32 | 3 Feb 2023
    I have tried https://github.com/Arduino-IRremote/Arduino-IRremote and https://github.com/crankyoldgit/IRremoteESP8266, both cause the same error.
  • IRemote Library
    1 project | /r/arduino | 30 Nov 2022
    This is the library: https://github.com/Arduino-IRremote/Arduino-IRremote
  • Question about the possibility of automating a humidifier
    1 project | /r/arduino | 26 Nov 2022
    Easy! I've done something similar with a fan & light combo, basically if you use a library such as IRremote and an IR receiver, you can record all the it signals that the remote puts out, IRremote might even be able to automatically decode the signal into a code, but if not then you can record a raw sequence; then using an IR transmitter, you can resend those codes.
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 25 Apr 2024
    Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →

Stats

Basic Arduino-IRremote repo stats
33
4,279
7.7
1 day ago

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com