Created
July 18, 2018 23:02
-
-
Save rhaseven7h/36c66abd37a66ff5211bae0a0807155d to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include "IRremote.h" | |
#include <SoftwareSerial.h> | |
#define REL_SIGNAL 5 | |
#define IR_POLL_DELAY 50 | |
#define WIFI_MODULE_RX 3 | |
#define WIFI_MODULE_TX 2 | |
bool lampOn = false; | |
int receiver = 11; | |
IRrecv irrecv(receiver); | |
decode_results results; | |
SoftwareSerial WiFiModule(WIFI_MODULE_RX, WIFI_MODULE_TX); | |
void translateIR() { | |
switch (results.value) { | |
case 0xFFA25D: | |
Serial.println("POWER"); | |
if (lampOn) { | |
Serial.println("Turn lamp off..."); | |
digitalWrite(REL_SIGNAL, LOW); | |
lampOn = false; | |
break; | |
} | |
Serial.println("Turn lamp on..."); | |
digitalWrite(REL_SIGNAL, HIGH); | |
lampOn = true; | |
break; | |
default: | |
Serial.println("Other button was pressed..."); | |
} | |
} | |
void setup() { | |
Serial.begin(115200); | |
Serial.println("IR Receiver Button Decode enabling..."); | |
irrecv.enableIRIn(); | |
Serial.println("Setting up relay signal as output, and turning it off..."); | |
pinMode(REL_SIGNAL, OUTPUT); | |
digitalWrite(REL_SIGNAL, LOW); | |
Serial.println("Setting up WiFI module serial to 115200bps."); | |
WiFiModule.begin(115200); | |
Serial.println("Done."); | |
} | |
void loop() { | |
if (irrecv.decode(&results)) { | |
Serial.println("Translating..."); | |
translateIR(); | |
delay(IR_POLL_DELAY); | |
irrecv.resume(); | |
Serial.println("Resumed..."); | |
} | |
if (WiFiModule.available()) { | |
char c = WiFiModule.read() ; | |
Serial.print(c); | |
} | |
if (Serial.available()) { | |
char c = Serial.read(); | |
WiFiModule.print(c); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment