Хочете будувати кар’єру в Data Science та AI? Vodafone Big Data Lab відкриває новий набір —>
Наталя ХандусенкоGadgets
25 September 2026, 10:29
2026-09-25
A Ukrainian engineer created a universal IR remote control for household appliances from the Lilka platform
Nokia systems engineer Bohdan Sverdluk shared his new development on Reddit — a Lua application that turns the open portable console "Lilka" into a full-fledged infrared remote control.
Nokia systems engineer Bohdan Sverdluk shared his new development on Reddit — a Lua application that turns the open portable console "Lilka" into a full-fledged infrared remote control.
Development opportunities
The created program allows the device to read signals from any original remotes and save them for later use.
Reading per minute: the application works in "conveyor" mode - just open the study menu, press the buttons on the original remote control and sign them via the on-screen keyboard.
Support for multiple devices: profiles for TV, audio amplifier, lights, etc. can be stored in memory.
Auto-repeat signal: when you hold down the button, the program repeats the signal, which is convenient for adjusting the volume or brightness.
Convenient data format: all settings are stored in plain .txt text files on the SD card. Codes can be edited manually or loaded from open databases (e.g. irdb).
Currently, the program supports the popular NEC protocol, which is used by about 80% of household appliances. More complex protocols (in particular, for air conditioners) are not yet supported.
Hardware and connectivity
To operate the application, you need a simple infrared module that connects to the "Lilki" expansion slot.
Receiver: Connects directly to the board.
Transmitter (IR LED): Cannot be connected directly to the pin to avoid burning it out - a transistor and a limiting resistor are required.
Operating range: Depends on the selected resistor: with a nominal value of 22 Ohms, the remote control works at a distance of 7–8 meters, and with 100 Ohms - at a distance of 1–1.5 meters.
To check the operation of the transmitter, the program provides a special testing mode (the LED flashes once per second; you can see this through the front camera of the smartphone, since it does not have an IR filter).
Technical features
Since the Lua language does not have a built-in ability to delay code execution for microseconds (the standard timer works with an accuracy of only up to a millisecond), the author used an original approach: at startup, the program calibrates an empty loop and calculates the number of revolutions per microsecond. The 38 kHz carrier frequency is generated by a hardware PWM, and the program only controls its switching on and off.