Abstract
IRremote ESP8266 is an open-source Internet of Things (IoT) project. Infrared remote library for ESP8266/ESP32: send and receive infrared signals with multiple protocols. Based on: https://github.com/shirriff/Arduino-IRremote/. This project allows decoding and encoding of IR signals for controlling Air Conditioners and other devices using ESP8266 or ESP32 boards. It is built using C++, ESP8266, ESP32. The complete source code is publicly available on GitHub under the GNU Lesser General Public License v2.1, making it a useful reference for students building an Internet of Things (IoT) mini project or final-year project.
1. Introduction
This project allows decoding and encoding of IR signals for controlling Air Conditioners and other devices using ESP8266 or ESP32 boards.
This library enables you to send _and_ receive infra-red signals on an ESP8266 or an ESP32 using the Arduino framework using common 940nm IR LEDs and common IR receiver modules. e.g. TSOP{17,22,24,36,38,44,48} demodulators etc.
Version 2.9.0 of the library is now available. You can view the Release Notes for all the significant changes.
2. Objective
Infrared remote library for ESP8266/ESP32: send and receive infrared signals with multiple protocols. Based on: https://github.com/shirriff/Arduino-IRremote/
This project demonstrates how C++, ESP8266, ESP32 can be applied to a real-world Internet of Things (IoT) problem.
4. Technology Stack
5. System Requirements
General requirements for this technology stack — check the README for exact versions.
- Arduino IDE / PlatformIO or a C++ compiler (g++)
- Target board (e.g. Arduino, ESP32) where applicable
- Git (to clone the repository)
6. Installation & Setup
git clone https://github.com/crankyoldgit/IRremoteESP8266.git
cd IRremoteESP8266- Click on _"Clone or Download"_ button, then _"Download ZIP"_ on the page.
- Extract the contents of the downloaded zip file.
- Rename the extracted folder to _"IRremoteESP8266"_.
- Move this folder to your libraries directory. (under windows: C:\Users\YOURNAME\Documents\Arduino\libraries\)
- Restart your Arduino IDE.
- Check out the examples.
cd ~/Arduino/libraries
git clone https://github.com/crankyoldgit/IRremoteESP8266.gitFull setup instructions are in the project README.
7. Future Enhancements
Suggested extensions you can add to make this your own project.
- Add a mobile dashboard using Blynk or Firebase
- Store readings in a cloud database for history charts
- Add alerts via SMS / Telegram when thresholds are crossed
8. Viva / Review Questions
Common questions examiners ask for projects in this domain.
- Which microcontroller / board and sensors are used and why?
- How does the device send data (Wi-Fi, MQTT, HTTP, Bluetooth)?
- Where is the sensor data stored and visualised?
- How is power consumption managed?
- How would you secure the device and its communication?
9. Source Code & License
This project is developed by crankyoldgit and published on GitHub under the GNU Lesser General Public License v2.1. Please follow the license terms and credit the original author when you use or modify this code.
Want to build this as your internship project?
Work on an Internet of Things (IoT) project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.
Apply for Internet of Things (IoT) Internship