@Ulagat on Veya - Smart Glasses
I built Veya — smart glasses that detect eye diseases using AI and a Raspberry Pi 4. The system captures close-up eye images through an Arducam Hawkeye camera, processes them locally with a trained neural network, and identifies conditions like cataract, conjunctivitis, and pterygium in 2-3 seconds. Results are transmitted via WiFi to a companion mobile app that displays the diagnosis, confidence score, and health recommendations. The project includes three main components: (1) the ML pipeline with a MobileNetV2 model optimized for edge deployment, (2) a Flask API running on the Pi for communication, and (3) the Veya mobile app for viewing scan history and results. I also built a web interface (veya-web repo: github.com/ulacoder/veya-web) for educational cuctions. Total hardware cost is under $280,through an Arducam Hawkeye camera, processes them locally with a trained neural network, and identifies conditions like cataract, conjunctivitis, and pterygium in 2-3 seconds. Results are transmitted via WiFi to a companion mobile app that displays the diagnosis, confidence score, and hoject includes three main components: (1) the MLgithub.com/ulacoder/veya-web) for educational content and device setup instructions. Total hardware cost is under $280, making professional-grade eye screening accessible to communities without ophthalmologists.
The biggest challenge was optimizing the CNN to run on the Raspberry Pi 4 without killing accuracy or battery life. MobileNetV2 is designed for mobile, but gettingquired converting to TensorFlow Lite, applyingint8 quantization, and stripping the model down to ~4MB. Balancing three disease classes plus "healthy" was tricky — medicadatasets are heavily imbalanced, so I had to aud use weighted loss functions. On the hardwareside, camera positioning is critical — the Arducam Hawkeye needs to be mounted at exactly the right distance and angle to capture enough retinal detail for accurate detection. I'm also about to start the hardware assembly phase now that all the software is ready — connecting the camera, Pi, and power bank into a wearable form factor that's actually comfortable is the next major hurdle.
I'm proud that this works end-to-end and is genuinely affordable. Commercial eye screening devices cost $10,000+, but Veya does it for under $280 in parts. The model hitsl datasets, which means it can actually catchdiseases early enough to matter. I'm also proud of the UX — the Veya app has a clean onboarding flow that explains eye health
in simple terms, step-by-step connection instruwith actionable recommendations. It's not just a tech demo — it's designed for real people in rural clinics, schools, or disaster relief situations where bringing a $10k machine isn't an option. The fact that all processing happens locally (no cloud, no privacy concerns) makes it usable even in areas with zero internet.
To test Veya, you'll need:
Hardware:
- Raspberry Pi 4 (4GB RAM recommended)
- Arducam Hawkeye camera module
- 10,000mAh power bank
- 32GB microSD card
- USB-C cable
Software repos:
- ML pipeline: github.com/ulacoder/veya-ml
- Web interface: github.com/ulacoder/veya-web
- Mobile app: (coming soon — still in development)
Testing steps:
1. Clone the ML repo:
git clone https://github.com/ulacoder/veya-ml
cd veya-ml
pip install -r ml/requirements.txt
2. Run inference on test images:
python ml/inference.py --image sample_eye.jpg --model veya_model_lite.tflite
2. The model outputs: disease class (Healthy / Cataract / Conjunctivitis / Pterygium) + confidence score.
3. For full hardware testing (once I finish assembly):
- Flash Raspberry Pi OS to the SD card
- Install the Flask API: python api/server.py
- Connect your phone to the Pi's WiFi hotspot
- Open the Veya ap
- 2 devlogs
- 1h build