Skip to content

Instantly share code, notes, and snippets.

@bengtmartensson
Created January 31, 2017 08:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bengtmartensson/e7f475f04d9d8bc596602c46d7654323 to your computer and use it in GitHub Desktop.
Save bengtmartensson/e7f475f04d9d8bc596602c46d7654323 to your computer and use it in GitHub Desktop.
// This Arduino sketch was automatically generated by IrScrutinizer.
// It supports:
//
// * IRremote https://github.com/z3t0/Arduino-IRremote
// http://z3t0.github.io/Arduino-IRremote/
// * IRLib https://github.com/cyborg5/IRLib
// * Infrared4Arduino https://github.com/bengtmartensson/Infrared4Arduino,
// http://www.harctoolbox.org/Infrared4Arduino.html (planned)
// For problems, bugs, and suggestions, please open an issue at
// https://github.com/bengtmartensson/harctoolboxbundle/issues
// This file contains C identifiers which have been translated from command names.
// Define exactly one of these
#define IRREMOTE
// #define IRLIB
// #define INFRARED4ARDUINO
/////////////////////////////////////////////////////
// Sanity check
#if defined(IRREMOTE) & ( defined(IRLIB) | defined(INFRARED4ARDUINO) )
#error Must define only one of IRREMOTE, IRLIB, or INFRARED4ARDUINO
#endif
#if defined(IRLIB) & ( defined(IRREMOTE) | defined(INFRARED4ARDUINO) )
#error Must define only one of IRREMOTE, IRLIB, or INFRARED4ARDUINO
#endif
#if defined(INFRARED4ARDUINO) & ( defined(IRLIB) | defined(IRREMOTE) )
#error Must define only one of IRREMOTE, IRLIB, or INFRARED4ARDUINO
#endif
#ifdef IRREMOTE
#include <IRremote.h>
#elif defined(IRLIB)
#include <IRLib.h>
#define sendRaw send
#elif defined(INFRARED4ARDUINO)
#include <IrSenderPwm.h>
#else
#error Must defined one of IRREMOTE, IRLIB, or INFRARED4ARDUINO
#endif
#if defined(IRREMOTE) | defined(IRLIB)
typedef uint16_t microseconds_t; // Change if desired
typedef uint16_t frequency_t; // Change if desired
static inline unsigned hz2khz(frequency_t f) { return f/1000U; }
#endif
// Constants
static const long BAUD = 115200UL; // Change if desired
// Global variables
#ifdef IRREMOTE
IRsend irsend;
#elif defined(IRLIB)
IRsendRaw irsend;
#else
IrSender *irsend = IrSenderPwm::getInstance(true);
#endif
// Command #1: S. TONE
// Protocol: nec2, Parameters: S=85 D=131 F=42
const microseconds_t repeat_S__TONE[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 40884 };
// Command #2: CONTRAST
// Protocol: nec2, Parameters: S=85 D=131 F=44
const microseconds_t repeat_CONTRAST[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 40884 };
// Command #3: CONTRAST -
// Protocol: nec2, Parameters: S=85 D=131 F=44
const microseconds_t repeat_CONTRAST__[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 40884 };
// Command #4: COLOR TEMP
// Protocol: nec2, Parameters: S=85 D=131 F=45
const microseconds_t repeat_COLOR_TEMP[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 40884 };
// Command #5: COLOR TEMP.
// Protocol: nec2, Parameters: S=85 D=131 F=45
const microseconds_t repeat_COLOR_TEMP_[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 40884 };
// Command #6: INPUT VIDEO
// Protocol: nec2, Parameters: S=85 D=131 F=112
const microseconds_t repeat_INPUT_VIDEO[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #7: SOURCE VIDEO
// Protocol: nec2, Parameters: S=85 D=131 F=112
const microseconds_t repeat_SOURCE_VIDEO[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #8: VIDEO
// Protocol: nec2, Parameters: S=85 D=131 F=112
const microseconds_t repeat_VIDEO[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #9: COMPONENT
// Protocol: nec2, Parameters: S=85 D=131 F=113
const microseconds_t repeat_COMPONENT[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #10: INPUT A
// Protocol: nec2, Parameters: S=85 D=131 F=113
const microseconds_t repeat_INPUT_A[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #11: SOURCE INPUT A
// Protocol: nec2, Parameters: S=85 D=131 F=113
const microseconds_t repeat_SOURCE_INPUT_A[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #12: INPUT D4/SCART
// Protocol: nec2, Parameters: S=85 D=131 F=114
const microseconds_t repeat_INPUT_D4_SCART[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #13: SOURCE D4
// Protocol: nec2, Parameters: S=85 D=131 F=114
const microseconds_t repeat_SOURCE_D4[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #14: HDMI 1
// Protocol: nec2, Parameters: S=85 D=131 F=115
const microseconds_t repeat_HDMI_1[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #15: INPUT HDMI
// Protocol: nec2, Parameters: S=85 D=131 F=115
const microseconds_t repeat_INPUT_HDMI[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #16: USB
// Protocol: nec2, Parameters: S=85 D=131 F=118
const microseconds_t repeat_USB[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #17: HDMI 2
// Protocol: nec2, Parameters: S=85 D=131 F=119
const microseconds_t repeat_HDMI_2[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #18: GAMMA
// Protocol: nec2, Parameters: S=85 D=131 F=126
const microseconds_t repeat_GAMMA[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 40884 };
// Command #19: ESC
// Protocol: nec2, Parameters: S=85 D=131 F=132
const microseconds_t repeat_ESC[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #20: ESCAPE
// Protocol: nec2, Parameters: S=85 D=131 F=132
const microseconds_t repeat_ESCAPE[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #21: CURSOR ENTER
// Protocol: nec2, Parameters: S=85 D=131 F=133
const microseconds_t repeat_CURSOR_ENTER[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #22: ENTER
// Protocol: nec2, Parameters: S=85 D=131 F=133
const microseconds_t repeat_ENTER[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #23: SELECT
// Protocol: nec2, Parameters: S=85 D=131 F=133
const microseconds_t repeat_SELECT[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #24: ASPECT
// Protocol: nec2, Parameters: S=85 D=131 F=138
const microseconds_t repeat_ASPECT[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #25: MEMORY
// Protocol: nec2, Parameters: S=85 D=131 F=139
const microseconds_t repeat_MEMORY[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #26: FOCUS
// Protocol: nec2, Parameters: S=85 D=131 F=140
const microseconds_t repeat_FOCUS[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #27: SOURCE SEARCH
// Protocol: nec2, Parameters: S=85 D=131 F=140
const microseconds_t repeat_SOURCE_SEARCH[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #28: ZOOM
// Protocol: nec2, Parameters: S=85 D=131 F=142
const microseconds_t repeat_ZOOM[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #29: COLOR MODE
// Protocol: nec2, Parameters: S=85 D=131 F=143
const microseconds_t repeat_COLOR_MODE[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #30: ON
// Protocol: nec2, Parameters: S=85 D=131 F=144
const microseconds_t repeat_ON[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #31: POWER
// Protocol: nec2, Parameters: S=85 D=131 F=144
const microseconds_t repeat_POWER[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #32: OFF
// Protocol: nec2, Parameters: S=85 D=131 F=145
const microseconds_t repeat_OFF[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #33: FREEZE
// Protocol: nec2, Parameters: S=85 D=131 F=146
const microseconds_t repeat_FREEZE[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #34: A/V MUTE
// Protocol: nec2, Parameters: S=85 D=131 F=147
const microseconds_t repeat_A_V_MUTE[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #35: BLANK
// Protocol: nec2, Parameters: S=85 D=131 F=147
const microseconds_t repeat_BLANK[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #36: COMPUTER
// Protocol: nec2, Parameters: S=85 D=131 F=148
const microseconds_t repeat_COMPUTER[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #37: HELP
// Protocol: nec2, Parameters: S=85 D=131 F=149
const microseconds_t repeat_HELP[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #38: PATTERN
// Protocol: nec2, Parameters: S=85 D=131 F=150
const microseconds_t repeat_PATTERN[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #39: VOLUME +
// Protocol: nec2, Parameters: S=85 D=131 F=152
const microseconds_t repeat_VOLUME__[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #40: VOLUME -
// Protocol: nec2, Parameters: S=85 D=131 F=153
const microseconds_t repeat_VOLUME___1[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #41: MENU
// Protocol: nec2, Parameters: S=85 D=131 F=154
const microseconds_t repeat_MENU[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #42: INPUT S-VIDEO
// Protocol: nec2, Parameters: S=85 D=131 F=156
const microseconds_t repeat_INPUT_S_VIDEO[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #43: S-VIDEO
// Protocol: nec2, Parameters: S=85 D=131 F=156
const microseconds_t repeat_S_VIDEO[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #44: SOURCE S-VIDEO
// Protocol: nec2, Parameters: S=85 D=131 F=156
const microseconds_t repeat_SOURCE_S_VIDEO[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #45: INPUT B
// Protocol: nec2, Parameters: S=85 D=131 F=157
const microseconds_t repeat_INPUT_B[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #46: PC
// Protocol: nec2, Parameters: S=85 D=131 F=157
const microseconds_t repeat_PC[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #47: SOURCE INPUT B
// Protocol: nec2, Parameters: S=85 D=131 F=157
const microseconds_t repeat_SOURCE_INPUT_B[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #48: AUTO
// Protocol: nec2, Parameters: S=85 D=131 F=158
const microseconds_t repeat_AUTO[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #49: USER
// Protocol: nec2, Parameters: S=85 D=131 F=159
const microseconds_t repeat_USER[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #50: CURSOR UP
// Protocol: nec2, Parameters: S=85 D=131 F=176
const microseconds_t repeat_CURSOR_UP[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #51: UP
// Protocol: nec2, Parameters: S=85 D=131 F=176
const microseconds_t repeat_UP[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #52: CURSOR RIGHT
// Protocol: nec2, Parameters: S=85 D=131 F=177
const microseconds_t repeat_CURSOR_RIGHT[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #53: RIGHT
// Protocol: nec2, Parameters: S=85 D=131 F=177
const microseconds_t repeat_RIGHT[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #54: CURSOR DOWN
// Protocol: nec2, Parameters: S=85 D=131 F=178
const microseconds_t repeat_CURSOR_DOWN[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #55: DOWN
// Protocol: nec2, Parameters: S=85 D=131 F=178
const microseconds_t repeat_DOWN[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #56: CURSOR LEFT
// Protocol: nec2, Parameters: S=85 D=131 F=179
const microseconds_t repeat_CURSOR_LEFT[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 40884 };
// Command #57: LEFT
// Protocol: nec2, Parameters: S=85 D=131 F=179
const microseconds_t repeat_LEFT[] PROGMEM = { 9024U, 4512U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 1692U, 564U, 564U, 564U, 564U, 564U, 1692U, 564U, 564U, 564U, 40884 };
static void sendRaw(const microseconds_t intro_P[], size_t lengthIntro, const microseconds_t repeat_P[],
size_t lengthRepeat, frequency_t frequency, unsigned times) {
microseconds_t intro[lengthIntro];
microseconds_t repeat[lengthRepeat];
memcpy_PF(intro, (uint_farptr_t) intro_P, sizeof(microseconds_t) * lengthIntro);
memcpy_PF(repeat, (uint_farptr_t) repeat_P, sizeof(microseconds_t) * lengthRepeat);
#if defined(IRREMOTE) | defined(IRLIB)
if (lengthIntro > 0U)
irsend.sendRaw(intro, lengthIntro, hz2khz(frequency));
if (lengthRepeat > 0U)
for (unsigned i = 0U; i < times - (lengthIntro > 0U); i++)
irsend.sendRaw(repeat, lengthRepeat, hz2khz(frequency));
#else // INFRARED4ARDUINO
IrSignal irSignal(intro, lengthIntro, repeat, lengthRepeat, NULL, 0U, frequency);
irsend->sendIrSignal(irSignal, times);
#endif
}
void setup() {
Serial.begin(BAUD);
Serial.setTimeout(60000UL);
}
// A pretty silly main loop; just intended as an example.
void loop() {
Serial.println(F("Enter number of signal to send (1 .. 57)"));
long commandno = Serial.parseInt();
Serial.println(F("Enter number of times to send it"));
long times = Serial.parseInt();
switch (commandno) {
case 1U:
sendRaw(NULL, 0U, repeat_S__TONE, 68U, 38400U, times);
break;
case 2U:
sendRaw(NULL, 0U, repeat_CONTRAST, 68U, 38400U, times);
break;
case 3U:
sendRaw(NULL, 0U, repeat_CONTRAST__, 68U, 38400U, times);
break;
case 4U:
sendRaw(NULL, 0U, repeat_COLOR_TEMP, 68U, 38400U, times);
break;
case 5U:
sendRaw(NULL, 0U, repeat_COLOR_TEMP_, 68U, 38400U, times);
break;
case 6U:
sendRaw(NULL, 0U, repeat_INPUT_VIDEO, 68U, 38400U, times);
break;
case 7U:
sendRaw(NULL, 0U, repeat_SOURCE_VIDEO, 68U, 38400U, times);
break;
case 8U:
sendRaw(NULL, 0U, repeat_VIDEO, 68U, 38400U, times);
break;
case 9U:
sendRaw(NULL, 0U, repeat_COMPONENT, 68U, 38400U, times);
break;
case 10U:
sendRaw(NULL, 0U, repeat_INPUT_A, 68U, 38400U, times);
break;
case 11U:
sendRaw(NULL, 0U, repeat_SOURCE_INPUT_A, 68U, 38400U, times);
break;
case 12U:
sendRaw(NULL, 0U, repeat_INPUT_D4_SCART, 68U, 38400U, times);
break;
case 13U:
sendRaw(NULL, 0U, repeat_SOURCE_D4, 68U, 38400U, times);
break;
case 14U:
sendRaw(NULL, 0U, repeat_HDMI_1, 68U, 38400U, times);
break;
case 15U:
sendRaw(NULL, 0U, repeat_INPUT_HDMI, 68U, 38400U, times);
break;
case 16U:
sendRaw(NULL, 0U, repeat_USB, 68U, 38400U, times);
break;
case 17U:
sendRaw(NULL, 0U, repeat_HDMI_2, 68U, 38400U, times);
break;
case 18U:
sendRaw(NULL, 0U, repeat_GAMMA, 68U, 38400U, times);
break;
case 19U:
sendRaw(NULL, 0U, repeat_ESC, 68U, 38400U, times);
break;
case 20U:
sendRaw(NULL, 0U, repeat_ESCAPE, 68U, 38400U, times);
break;
case 21U:
sendRaw(NULL, 0U, repeat_CURSOR_ENTER, 68U, 38400U, times);
break;
case 22U:
sendRaw(NULL, 0U, repeat_ENTER, 68U, 38400U, times);
break;
case 23U:
sendRaw(NULL, 0U, repeat_SELECT, 68U, 38400U, times);
break;
case 24U:
sendRaw(NULL, 0U, repeat_ASPECT, 68U, 38400U, times);
break;
case 25U:
sendRaw(NULL, 0U, repeat_MEMORY, 68U, 38400U, times);
break;
case 26U:
sendRaw(NULL, 0U, repeat_FOCUS, 68U, 38400U, times);
break;
case 27U:
sendRaw(NULL, 0U, repeat_SOURCE_SEARCH, 68U, 38400U, times);
break;
case 28U:
sendRaw(NULL, 0U, repeat_ZOOM, 68U, 38400U, times);
break;
case 29U:
sendRaw(NULL, 0U, repeat_COLOR_MODE, 68U, 38400U, times);
break;
case 30U:
sendRaw(NULL, 0U, repeat_ON, 68U, 38400U, times);
break;
case 31U:
sendRaw(NULL, 0U, repeat_POWER, 68U, 38400U, times);
break;
case 32U:
sendRaw(NULL, 0U, repeat_OFF, 68U, 38400U, times);
break;
case 33U:
sendRaw(NULL, 0U, repeat_FREEZE, 68U, 38400U, times);
break;
case 34U:
sendRaw(NULL, 0U, repeat_A_V_MUTE, 68U, 38400U, times);
break;
case 35U:
sendRaw(NULL, 0U, repeat_BLANK, 68U, 38400U, times);
break;
case 36U:
sendRaw(NULL, 0U, repeat_COMPUTER, 68U, 38400U, times);
break;
case 37U:
sendRaw(NULL, 0U, repeat_HELP, 68U, 38400U, times);
break;
case 38U:
sendRaw(NULL, 0U, repeat_PATTERN, 68U, 38400U, times);
break;
case 39U:
sendRaw(NULL, 0U, repeat_VOLUME__, 68U, 38400U, times);
break;
case 40U:
sendRaw(NULL, 0U, repeat_VOLUME___1, 68U, 38400U, times);
break;
case 41U:
sendRaw(NULL, 0U, repeat_MENU, 68U, 38400U, times);
break;
case 42U:
sendRaw(NULL, 0U, repeat_INPUT_S_VIDEO, 68U, 38400U, times);
break;
case 43U:
sendRaw(NULL, 0U, repeat_S_VIDEO, 68U, 38400U, times);
break;
case 44U:
sendRaw(NULL, 0U, repeat_SOURCE_S_VIDEO, 68U, 38400U, times);
break;
case 45U:
sendRaw(NULL, 0U, repeat_INPUT_B, 68U, 38400U, times);
break;
case 46U:
sendRaw(NULL, 0U, repeat_PC, 68U, 38400U, times);
break;
case 47U:
sendRaw(NULL, 0U, repeat_SOURCE_INPUT_B, 68U, 38400U, times);
break;
case 48U:
sendRaw(NULL, 0U, repeat_AUTO, 68U, 38400U, times);
break;
case 49U:
sendRaw(NULL, 0U, repeat_USER, 68U, 38400U, times);
break;
case 50U:
sendRaw(NULL, 0U, repeat_CURSOR_UP, 68U, 38400U, times);
break;
case 51U:
sendRaw(NULL, 0U, repeat_UP, 68U, 38400U, times);
break;
case 52U:
sendRaw(NULL, 0U, repeat_CURSOR_RIGHT, 68U, 38400U, times);
break;
case 53U:
sendRaw(NULL, 0U, repeat_RIGHT, 68U, 38400U, times);
break;
case 54U:
sendRaw(NULL, 0U, repeat_CURSOR_DOWN, 68U, 38400U, times);
break;
case 55U:
sendRaw(NULL, 0U, repeat_DOWN, 68U, 38400U, times);
break;
case 56U:
sendRaw(NULL, 0U, repeat_CURSOR_LEFT, 68U, 38400U, times);
break;
case 57U:
sendRaw(NULL, 0U, repeat_LEFT, 68U, 38400U, times);
break;
default:
Serial.println(F("Invalid number entered, try again"));
break;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment