How to use IR Dump data to re-create an IR code on demand

I tried to find an answer to this on Google, but nothing seems to address specifically what I'm trying to find out.

Here is some output from the IRrecvDumpV2 example sketch from the IRremote library. This comes from a remote that is used on a Cisco brand cable TV receiver. Notice the brand it's detecting is Sanyo ... there is no sender function in the IRremote library for Sanyo, only a decoder ... so how would I use the simpler hex codes to re-create these codes accurately? I'm trying to get away from using the larger RAW int arrays to avoid the memory issues since I want to store and recall over 50 of these codes.

IN: Timing[47]:

Name Code: 366932

IN: Code      : 366932 (23 bits)

IN: Encoding  : SANYO

IN: + 750, -2650     + 650, -2650     + 700, - 900     + 750, - 950

IN: +3200, -3400     + 750, -2550     + 750, -2600     + 750, - 950

IN: + 700, -2650     + 700, -2650     + 700, - 900     + 750, -2650

IN: + 700, -1000     + 700, -2600     + 700, -2700     + 650, - 950

IN: + 700, - 950     + 700, - 900     + 750, -2600     + 750, - 950

IN: + 700, -1000     + 700, -2600     + 750, - 950     + 700

IN: unsigned int  data = 0x366932;







IN: Timing[47]:

Name Code: 366133

IN: Code      : 366133 (23 bits)

IN: Encoding  : SANYO

IN: + 750, -2500     + 800, -2550     + 800, - 850     + 800, - 900

IN: +3300, -3350     + 800, -2500     + 850, -2500     + 800, - 950

IN: + 800, -2550     + 750, -2550     + 800, - 900     + 750, - 900

IN: + 750, - 900     + 750, -2550     + 800, -2500     + 850, - 950

IN: + 800, - 800     + 850, - 850     + 800, -2550     + 800, - 900

IN: + 700, - 950     + 700, -2550     + 800, -2550     + 800

IN: unsigned int  data = 0x366133;







IN: Timing[47]:

Name Code: 37e902

IN: Code      : 37e902 (23 bits)

IN: Encoding  : SANYO

IN: +3250, -3350     + 800, -2600     + 700, -2550     + 800, - 900

IN: + 750, -2600     + 700, -2600     + 750, - 900     + 750, -2600

IN: + 750, -2650     + 700, -2550     + 800, -2500     + 850, -2600

IN: + 800, - 850     + 800, - 900     + 750, - 900     + 750, - 950

IN: + 750, - 900     + 750, - 900     + 800, -2550     + 750, - 900

IN: + 700, - 950     + 750, -2550     + 750, - 900     + 800

IN: unsigned int  data = 0x37e902;

Thank you,

Mike

Unfortunately, whoever added the Sanyo decoder to IRremote did not include an ENCODER. That should be fairly easy to do since the decoder says that Sanyo is very similar to Sony.

johnwasser:
Unfortunately, whoever added the Sanyo decoder to IRremote did not include an ENCODER. That should be fairly easy to do since the decoder says that Sanyo is very similar to Sony.

OK, so what needs to be done to make the encoder?

EasyGoing1:
OK, so what needs to be done to make the encoder?

My guess, based on their comment, is that you would take the Sony encoder and drop it in the Sanyo file, change the name to sendSanyo(), and change this part of IRremote.h:

#define DECODE_SANYO         1
#define SEND_SANYO           0 // NOT WRITTEN