#include #include #include #include #include #define ID 2 Sensor gw; int recvLED = 3; //Transmitter int numberBtns = 34; //The number of entries in irRECIEVE. IRsend irsend; const unsigned long irTRANSMIT[] = { //Sony IR Codes 0xa90, //Power 0x5d0, //Display 0x290, //Mute 0xa50, //TV/Video 0x270, //Picture Mode 0x5e25, //Screen Mode 0x10, //1 0x810, //2 0x410, //3 0xc10, //4 0x210, //5 0xa10, //6 0x610, //7 0xe10, //8 0x110, //9 0x910, //0 0x5ce9, //. 0xd10, //Enter 0xdd0, //Jump 0x58ee, //Digital/Analog 0x490, //Volume Up 0xc90, //Volume Down 0x90, //Channel Up 0x890, //Channel Down 0x710, //Guide 0x70, //Menu 0x2f0, //Up 0xaf0, //Down 0x2d0, //Left 0xcd0, //Right 0xa70, //Select 0x690, //Reset 0x6d0, //Sleep 0xc70 //Exit }; void setup() { pinMode(recvLED, OUTPUT); //Configue the recvLED pin as an OUTPUT pin digitalWrite(recvLED, LOW); //Leave the LED off as we start gw.begin(); gw.sendSketchInfo("IR Transmitter", “1.0”); gw.sendSensorPresentation(ID, S_IR); } void loop() { unsigned long recv_value; if (gw.messageAvailable()) { message_s message = gw.getMessage(); if (message.header.type==V_IR_SEND) { Serial.println(message.data); recv_value = atoi(message.data); irsend.sendSony(irTRANSMIT[recv_value], 1); Serial.println(recv_value); } } }