What is the most exact IR receiver for Arduiono?

Hi,
I would like to know, what is the best IR receiver for a good price? I m not looking for super expensive IR receivers, but for one, which can receive IR codes pretty good, so I can use them for every divice in my android app. I have used one of these: receivers: https://www.amazon.de/gp/product/B00PJ80S14/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&psc=1 ,
but the codes weren t so good, that they worked with every build in IR blaster in every device.
Thanks

Nothing wrong with that type of sensor.
But there might be something wrong with your code, or the way you have connected the sensor.
Did you use the sensor on a breakout board, with decoupling caps?
Also note that this is a 38kHz receiver, and is not very sensitive to remotes with a different base frequency.
Leo..

Wawa:
Nothing wrong with that type of sensor.
But there might be something wrong with your code, or the way you have connected the sensor.
Did you use the sensor on a breakout board, with decoupling caps?
Also note that this is a 38kHz receiver, and is not very sensitive to remotes with a different base frequency.
Leo..

Hi Leo,
I think the code is ok, but I haven t used a breakout board or decoupling caps. The remote has a frequency of 38kHz. I have connected it, as this photo shows: https://2.bp.blogspot.com/-Lg8ziFIJlVM/VR7ltTdXq8I/AAAAAAAADAg/Vf836nvEq9o/s1600/Armdroid-IRreciever.png

Piotr

Do you have an idea what I can do better?

No experience with remote control demodulation (I have used 3-pin sensors for beambreak), but I expect interrupts are needed for those fast/accurate signals.
Are you using a library, and why pin10 (not an interrupt pin).
Leo..

Hi,
I am using a library (Infrared4Arduino), you can download it from the arduino library manager.
This is the code I was using:

#include <Arduino.h>
#include <IrReceiverSampler.h>
#include <Pronto.h>

#define RECEIVE_PIN 5U
#define BUFFERSIZE 200U
#define BAUD 115200
IrReceiver *receiver;

void setup() {
    Serial.begin(BAUD);
    receiver = IrReceiverSampler::newIrReceiverSampler(BUFFERSIZE, RECEIVE_PIN);
    receiver->setEndingTimeout(100);
}

void loop() {
    receiver->receive(); // combines enable, loop, disable

    if (receiver->isEmpty())
        Serial.println(F("timeout"));
    else {
        //receiver->dump(Serial);
        IrSequence* irSequence = receiver->toIrSequence();
        const char* hex = Pronto::toProntoHex(*irSequence);
        Serial.println(hex);
        delete[] hex;
    }
}

BTW I was using PIN 5
Piotr..

I have used the IRremote library many times with great success. With any library you must insure that the receiver/decoder sesitive (carrier) frequency matches the remote control's carrier frequency. Also the remote control's protocol must be recognizable by the library. There are many protocols and not all are supported by every library.