You are browsing as a guest. Sign up (or log in) to start making projects!

KozbenSal

Hardware
  • 1 Devlogs
  • 1 Total hours

I'm building KozbenSal — smart glasses that let paralyzed people control computers and draw using only eye movements. The Problem: People with motor disabilities (ALS, cerebral palsy, spinal injuries) can't use keyboards or mice. Existing eye-tracking solutions cost $10,000+. The Solution: KozbenSal uses a Raspberry Pi + camera to track eye movements in real-time. Users can: - Control mouse cursor by looking - Draw digital art with eyes - Click by blinking - Navigate applications hands-free Tech Stack: - Hardware: Raspberry Pi 4, Pi Camera v2, 3D-printed frame (~$150 total) - Software: OpenCV + MediaPipe for eye tracking - Latency: <100ms response time - Calibration: 9-point personalized setup

Ship #1 Pending review

KozbenSal — eye-tracking system that lets people draw and control computers using only their eyes and blinks. Built for people with motor disabilities who can't use keyboards or mice.

The system uses a modified PS3 Eye camera with custom lens + IR LEDs for binary imaging, paired with hybrid computer vision (CV + MediaPipe) to track eye movements in real-time. You blink to place points, and the system draws lines between them. No hands needed.

Tech stack: Python + OpenCV + MediaPipe for hybrid pupil detection, custom IR illumination setup, Eye Aspect Ratio-based blink detection, 9-point calibration system.

---
What was challenging?

1. PS3 Eye camera modification for binary imaging — Had to physically replace the lens to get clear binary (black/white) images of the pupil. This required precise alignment and multiple attempts to get the focal length right without distortion.

2. IR LED circuit issues — Used infrared LEDs to illuminate the eye for better pupil contrast in binary mode. The LEDs kept shutting off due to power supply instability and overheating. Had to debug the circuit, add proper current limiting resistors, and ensure consistent illumination without flickering.

3. Head movement = lost tracking — The system requires the user's head to stay fixed in position. Any movement breaks calibration. Had to add clear instructions and eventually realized this needs a physical head stabilizer/chin rest for real-world use.

4. Hybrid pupil detection — MediaPipe alone wasn't accurate enough. Built a fallback system: extract eye region → Gaussian blur → threshold for binary imaging → find darkest contour (pupil) → combine with MediaPipe iris. Took days to tune thresholds that work across different lighting conditions.

---
What are you proud of?

Hardware hacking works: Successfully modified consumer hardware (PS3 Eye) with custom optics and IR illumination to create a specialized eye-tracker. Proof that you don't need $15,000 commercial solutions.

Open source: Full code, BOM, and hardware mod instructions on GitHub so others can replicate and improve it.

---
What should people know to test your project?

IMPORTANT: Head must be fixed during use
The system loses calibration if you move your head. You need to stay still or use a chin rest/head stabilizer.

Hardware Requirements:
- Modified PS3 Eye camera (lens replaced for binary imaging)
- IR LEDs for eye illumination
- Python 3.8+
- Head stabilizer or chin rest (recommended)

Setup:
git clone https://github.com/ulacoder/KozbenSal.git
cd KozbenSal
pip install -r requirements.txt
python test_cameras.py # find your camera index
# edit eye_tracker.py line 19 if needed
python main.py

How to test:
1. Fix your head position — use chin rest or stay very still
2. Ensure IR LEDs are on and illuminating your eyes
3. Look at the 9 calibration points — wait for auto-calibration
4. Press TAB → drawing mode
5. Blink once → green point appears
6. Move only your eyes (not head) to another spot
7. Blink again → line draws between points

Tips for best results:
- IR illumination must be consistent (check LED power)
- Sit 40-60cm from camera, head fixed
- Good ambient lighting helps (not just IR)
- If cursor jumps, press R to recalibrate
- Watch top-right preview — should see purple rings on detected pupils

Known limitations:
- Head movement breaks tracking (needs physical stabilizer)
- IR LEDs can overheat if run too long (monitor temperature)
- Binary imaging works best in controlled lighting
- Blink sensitivity varies per person

  • 1 devlog
  • 1h build
Video of Project → See source code →
Open comments for this post

36m 13s logged

DEVLOG #1

Working on KozbenSal - eye-tracking assistive glasses for people with motor disabilities. Today I:

  1. Fixed camera integration - PS3 Eye now captures reliably with DirectShow backend
  2. Redesigned interaction - replaced slow dwell-time with fast blink-based point-to-point drawing
  3. Improved accuracy - added hybrid pupil detection (MediaPipe + CV contour analysis)
9
0
88

Followers

Loading…