Failing to reproduce IR Signal

Hi all,

I’m trying to receive and reproduce an IR signal of a remote which is not know in standard protocols such as Sony. So I want to save a raw signal and reproduce it.

When reading the signal multiple times the results are quite consistent as you can see in the screenshot attached here (originalsignal.png)

So next I save the signal I received in a variable and resend it via the following code

#include <IRLibRecvPCI.h> 
#include <IRLibSendBase.h>    //We need the base code
#include <IRLib_HashRaw.h>    //Only use raw sender

//Create a remote class; this is a collection of IRsignals
class Remote {
  public: 
  
  //Class Variables
    int OnOffButton[14] = {910, 638, 1218, 658, 1218, 658, 594, 658, 1846, 658, 1238, 638, 286, 1000};
};

Remote TelenetDigibox;      //Create a remote object
IRsendRaw mySender;         //Create a sender object
IRrecvPCI myReceiver(2);    //Create a receiver object

void setup() {
  Serial.begin(9600);
  delay(2000); while (!Serial); //delay for Leonardo
}

void loop() {
    mySender.send(TelenetDigibox.OnOffButton,14,36);  //Pass the buffer,length, optionally frequency
    Serial.println(F("Sent OnOff voor Telenet Digibox"));
    delay(2500);
}

However, when sending this signal to the device that should respond to this signal, nothing happens. So I went on and used a second arduino to read the signal that i’m sending/reproducing via the code above.
In the result I see that the signal i’m sending is slightly different than the signal I put into the code and want to send. Results of the reproduced signal (via the code above) you can see in the image attached (badreproduction.png)

How is it possible that it fails to exactly reproduce the signal?

Thanks in advance :slight_smile: