-
What did you make?
I built a dual-purpose, smart touchscreen device that functions as a high-utility Universal Infrared (IR) Remote when in use and transitions into a desktop Live Weather Station and Clock when idle.
Universal IR Tool: It features a custom touchscreen UI capable of capturing raw infrared signals from existing appliances, displaying their exact hex codes, and saving them with custom names using an on-screen QWERTY keyboard for later emulation (signal playback).
Smart Power & Display: To maximize signal accuracy and power efficiency, the device automatically shuts down its Wi-Fi radio when entering active IR Mode, and instantly spins the wireless connection back up to fetch live weather data when docked or idle. -
What was challenging?
The most significant challenge was hardware resource management and strict signal timing. Leaving the background Wi-Fi network stack active while trying to capture or transmit precise IR pulses caused microsecond delays and signal jitter. This resulted in corrupted hex codes.
I resolved this hurdle by writing a strict power-management rule into the state machine: the system completely terminates the Wi-Fi radio connection the exact millisecond the user enters IR Mode, ensuring clean, interference-free hardware timers for precise signal emulation. -
What are you proud of?
I am incredibly proud of the UI/UX integration and the custom QWERTY touchscreen keyboard. Designing a responsive UI on a small TFT screen that feels intuitive was a massive hurdle. Successfully implementing a dynamic naming system—where a user can tap an on-screen keyboard to instantly label a captured hex code as a human-readable string (like “OFF” or “VOL_UP”) rather than managing hardcoded array values—gives the project a highly polished, consumer-grade feel. -
What should people know so they can test your project?
To successfully flash and test this project, reviewers and users need to know the following parameters:
Required Libraries: Before compiling the Arduino sketch, ensure you have the TFT_eSPI library installed and properly configured for your specific display pinout in the User_Setup.h file. You will also need the IRremoteESP8266 library to handle signal decoding.
Network Isolation: Keep in mind that when testing the IR Tool functions (CAPTURE/SEND), the device’s web and Wi-Fi features will consciously disconnect to safeguard timing accuracy.
Testing Hardware: If testing without an existing television remote, you can target any standard consumer remote (such as an Light or AC controller) directly at your IR receiver module to verify that the hex protocols populate accurately in the display terminal.
- 4 devlogs
- 4h