IR, how do your adjust the reciever frame size?

I have a remote control from an air conditioner I need to clone.
When I depress the remote, the MEGA2650 with the receiver goes crazy, throwing line of hexcode everywhere.

The remote is a little bit exotic. We're confident that it's because the remote is sending packets too wide/big.

How do you adjust the IR receiver framesize?

#define sprint Serial.print 
#define sprintln Serial.println
#include <IRremote.h>

#define IR_RCVR_PIN 7
IRrecv ir_receiver(IR_RCVR_PIN);
decode_results results;

void setup() {
    Serial.begin(115200);
    ir_receiver.enableIRIn(); // Start the receiver
}

void loop() {
   if (ir_receiver.decode(&results)) {
    dump(&results);
    ir_receiver.resume(); // Receive the next value
   }
}

int c = 1;

void dump(decode_results *results) {
   int count = results->rawlen;
   sprintln(c);
   c++;
   sprintln("For IR Scope: ");
   for (int i = 1; i < count; i++) {
       sprint("0x");
       sprint((unsigned int)results->rawbuf[i], HEX);
    sprint(" ");
   }

   sprintln("");
   sprintln("For Arduino sketch: ");
   sprint("unsigned int raw[");
   sprint(count, DEC);
   sprint("] = {");
   for (int i = 1; i < count; i++) {
       sprint("0x");
       sprint((unsigned int)results->rawbuf[i], HEX);
       sprint(",");
    }
    sprint("};");
    sprintln("");
    sprint("irsend.sendRaw(raw,");
    sprint(count, DEC);
    sprint(",38);");
    sprintln("");
    sprintln("");
}

wild output:

0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xA 0xC 0xB 0xB 0xA 0xC 0xB 0xB 0x21 0xB 0x21 0xB 0x22 0xB 0xB 0xB 0xA 0xC 0xB 0xB 0xB 0xB 0xA 0xC 0xA 0xC 0xB 0xA 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x22 0xA 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xA 0xC 0xA 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0x22 0xA 0x22 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 
For Arduino sketch: 
unsigned int raw[201] = {0xB2,0x59,0xB,0x21,0xB,0x22,0xB,0xA,0xC,0xA,0xB,0xC,0xA,0xB,0xB,0x22,0xB,0x21,0xB,0x22,0xB,0x21,0xB,0x21,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xA,0xC,0xB,0xB,0xA,0xC,0xB,0xB,0x21,0xB,0x21,0xB,0x22,0xB,0xB,0xB,0xA,0xC,0xB,0xB,0xB,0xB,0xA,0xC,0xA,0xC,0xB,0xA,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0x22,0xA,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0x21,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0x21,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xA,0xC,0xA,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0x21,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0x21,0xB,0xB,0xB,0x22,0xA,0x22,0xB,0xB,0xB,0x21,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0x21,0xB,0xB,0xB,0xB,};
irsend.sendRaw(raw,201,38);

68
For IR Scope: 
0xB2 0x59 0xB 0x21 0xB 0x22 0xB 0xA 0xC 0xA 0xB 0xC 0xA 0xB 0xB 0x22 0xB 0x21 0xB 0x22 0xB 0x21 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xA 0xC 0xB 0xB 0xA 0xC 0xB 0xB 0x21 0xB 0x21 0xB 0x22 0xB 0xB 0xB 0xA 0xC 0xB 0xB 0xB 0xB 0xA 0xC 0xA 0xC 0xB 0xA 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x22 0xA 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xA 0xC 0xA 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0x22 0xA 0x22 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 
For Arduino sketch: 
unsigned int raw[201] = {0xB2,0x59,0xB,0x21,0xB,0x22,0xB,0xA,0xC,0xA,0xB,0xC,0xA,0xB,0xB,0x22,0xB,0x21,0xB,0x22,0xB,0x21,0xB,0x21,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xA,0xC,0xB,0xB,0xA,0xC,0xB,0xB,0x21,0xB,0x21,0xB,0x22,0xB,0xB,0xB,0xA,0xC,0xB,0xB,0xB,0xB,0xA,0xC,0xA,0xC,0xB,0xA,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0x22,0xA,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0x21,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0x21,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xA,0xC,0xA,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0x21,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0x21,0xB,0xB,0xB,0x22,0xA,0x22,0xB,0xB,0xB,0x21,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0xB,0x21,0xB,0xB,0xB,0xB,};
irsend.sendRaw(raw,201,38);

69
For IR Scope: 
0xB2 0x59 0xB 0x21 0xB 0x22 0xB 0xA 0xC 0xA 0xB 0xC 0xA 0xB 0xB 0x22 0xB 0x21 0xB 0x22 0xB 0x21 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xA 0xC 0xB 0xB 0xA 0xC 0xB 0xB 0x21 0xB 0x21 0xB 0x22 0xB 0xB 0xB 0xA 0xC 0xB 0xB 0xB 0xB 0xA 0xC 0xA 0xC 0xB 0xA 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x22 0xA 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xA 0xC 0xA 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0x22 0xA 0x22 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0xB 0x21 0xB 0xB 0xB 0xB 
For Arduino sketch: 
unsigned int raw[201] = {0xB2,0x59,0xB,0x21,0xB,0x22,0xB,0xA,0xC,0xA,0xB,0xC,0xA,0xB,0xB,0x22,0xB,0x21,0xB,0x22,0xB,0x21,0xB

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.