Engineering Clinics, VIT-AP
Smart Vision Screening Device
Edge-AI eye screening
A low-cost, portable eye-screening device. It photographs a patient's eye, runs a machine-learning model on the device itself, and sends the result to a web dashboard where a doctor reviews it and issues a prescription.
The code is in a private repo. Happy to walk you through it: ask me.
- Context
- Engineering Clinics, VIT-AP
- Guide
- Dr. Vasavi Sanikommu
- Role
- Web dashboard developer, ESP32 firmware developer, and ML model integration
- Team
- 6 people
- When
- July 2026 – September 2026
The problem
Many eye conditions are treatable if caught early, but screening needs a specialist and equipment that rural and camp settings don't have. This device is meant to be carried to the patient, used by a health worker, and to flag who needs to see an ophthalmologist.
How it works
- 01XIAO ESP32S3 SensePhotographs the eye and runs YOLOv8-Nano on the device
- 02Cloud FirestoreScores plus the image, uploaded after analysis
- 03Web dashboardA doctor reviews the result and issues a prescription
Key decision
Run the disease-detection model on the device itself (YOLOv8-Nano, INT8-quantised to ~1.8 MB, in TensorFlow Lite on the XIAO ESP32S3 Sense) instead of streaming images to a server or cloud API. The device uploads only the result, scores plus the image, to Firestore afterwards.
Why
The device is meant for rural screening camps, where a reliable connection can't be assumed. If analysis depended on the network, a weak signal would mean no result at all; doing it on-board means screening still works, and the upload can catch up later. It also keeps the patient's eye image away from third-party processing, which matters for medical data, and removes the per-call cost and latency of a cloud vision API. That drove the hardware change from the ESP32-CAM to the XIAO ESP32S3 Sense, whose vector AI instructions and 8 MB of PSRAM can hold the model and frame buffer.
Models
- YOLOv8-NanoINT8-quantised to ~1.8 MB, TensorFlow Lite for Microcontrollers on the XIAO ESP32S3 Sense
Stack
- C++
- Arduino
- TensorFlow Lite for Microcontrollers
- YOLOv8-Nano
- XIAO ESP32S3 Sense
- HTML
- CSS
- JavaScript
- Firebase
- Node.js
- Inline SVG charts
The dashboard
- HTML5, CSS3 and vanilla JavaScript (ES2020): no framework and no build step.
- Firebase JS SDK 10.14.1 (compat) with Cloud Firestore, Firebase Authentication, Firestore Security Rules and Firebase Hosting.
- Charts drawn with inline SVG, and prescriptions printed with the browser’s own printing.
- A custom JavaScript dictionary for English, Hindi and Telugu.
- Node.js with firebase-admin for setup.
The firmware
C++ on the Arduino framework for the ESP32, with TensorFlow Lite for Microcontrollers running the model on the board.