Inspiration
We often take our physical abilities for granted. We can switch on a light, adjust a fan, open a door, or simply reach out and interact with the world around us without even thinking about it.
But for a person with severe paralysis, these simple actions can become impossible. Many individuals with conditions such as ALS can gradually lose control over most of their voluntary muscles, leaving them dependent on others for even the smallest everyday tasks. What struck me most was that, in some cases, their ability to move may be severely limited while their eyes can still remain a way to communicate and interact with the world.
That made me think about a simple question:
“If the eyes are still under their control, can we use that remaining ability to give them back some control over their surroundings?”
Instead of expecting them to reach for switches, use a phone, or depend on someone else every time they wanted to perform a basic action, I wanted to explore whether something as simple as an intentional eye blink could become a command.
That thought became the starting point of iBlink — a project built around turning a small remaining physical ability into a means of interaction, with the goal of helping people with severe physical disabilities gain greater independence in their everyday environment.
What does it do
iBLINK is an AI-powered assistive control system that allows users to operate electronic devices using intentional eye-blink patterns. An IR eye-blink sensor detects each blink and sends the signal to an Arduino UNO, which captures the blink timing and communicates the data to a Python-based AI system.
The system analyzes features such as blink count, blink duration, and the time between blinks to identify the user's intended command. A machine-learning model then classifies the pattern and sends the corresponding command back to the Arduino. In our prototype, these commands control an LED and a DC motor, representing a household light and fan.
How I built it
iBLINK was built by combining embedded hardware, sensor-based input, serial communication, and machine learning into a single pipeline.
The IR sensor is connected to an Arduino UNO and continuously monitors for eye-blink activity. When a blink is detected, the Arduino measures its duration and transmits the data to a Python application running on a computer.
The Python application processes multiple blink events and extracts features such as blink frequency, duration, and inter-blink intervals. These features are passed to a Random Forest classifier trained on collected blink-pattern data, allowing the system to recognize commands such as LIGHT, FAN, or UNKNOWN.
Challenges I ran into
One of the biggest challenges I faced while developing iBlink was distinguishing between intentional and involuntary blinks. A normal blink happens frequently and automatically, so simply detecting a blink was not enough. The system needed to understand when a blink was intentional and when it was just a natural response. I experimented with different timing conditions, blink durations, and patterns to make the detection more reliable.
Another challenge was choosing the right sensing method. I initially worked with an IR eye-blink sensor, but during testing I found that its performance was affected by the surrounding lighting conditions. It worked differently depending on the environment, which made it difficult to build a reliable system.
This pushed me to explore other approaches to eye and blink detection, including EOG-based sensing, which detects the electrical changes associated with eye movement. I compared different approaches and experimented with what would be practical for a low-cost prototype.
A major part of the development process was also trial and error. There were several points where the first approach simply did not work as expected. I used AI as a learning and debugging aid, but I did not rely on it alone. I tested the suggestions on the actual hardware, changed the code, experimented with different thresholds and timings, and observed the results myself.
Accomplishments that I'm proud of
The accomplishment I’m most proud of is iBlink. I built the project independently while still in high school, teaching myself the concepts I needed along the way. I didn’t have a large team or a lot of resources behind me—I had an idea, experimented with different approaches, learned from what didn’t work, and built the prototype myself.
The actual prototype took me only about one to two days to put together, but getting to a working solution involved a lot of experimenting, debugging, and figuring things out on my own. In many ways, the process taught me more than the final prototype itself.
I built a working prototype to demonstrate this idea. What makes me proud of iBlink is not how complicated the technology is, but the purpose behind it. I wanted to build something that could potentially make everyday life a little easier and give people more independence.
What I learned
The project also taught me that a prototype is only the beginning. There is a big difference between proving that an idea can work and making something reliable enough to be genuinely useful.
What's next for Iblink
The next step for iBlink is to move beyond a prototype and make it something that can actually be integrated into a person's home.
Right now, the prototype demonstrates the basic idea by using eye blinks to control a light and a fan. My goal is to take that same concept and connect it to the existing electrical infrastructure of a house. Instead of controlling LEDs and motors on a small prototype board, iBlink could eventually communicate with smart relay modules installed behind regular switches, allowing a user to control actual lights, fans, and other appliances using intentional blink commands.
I also want to improve the detection system so that it can more reliably distinguish between natural and intentional blinks and work consistently under different lighting conditions.
Built With
- arduino
- c/c++
- elctronic
- iot
- irsensor
- relay
- robotics
Log in or sign up for Devpost to join the conversation.