#include <IRremote.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define IR_RECEIVE_PIN 15 // choose your pin (e.g., D2)
void initModules() {
IrReceiver.begin(IR_RECEIVE_PIN); // start receiver
Serial.println("Ready to receive IR signals...");
}
void setup() {
Serial.begin(115200);
initModules();
}
void loop() {
if (IrReceiver.decode()) {
// Print raw data
Serial.print("Received IR code: ");
Serial.println(IrReceiver.decodedIRData.decodedRawData, HEX);
// Print protocol + command
Serial.print("Protocol: ");
Serial.println(IrReceiver.decodedIRData.protocol);
Serial.print("Command: ");
Serial.println(IrReceiver.decodedIRData.command);
// Prepare for next
IrReceiver.resume();
}
}