From echo to distance
Distance = speed of sound × round-trip time ÷ 2
The sound travels to the obstacle and back.

Reimagining how people who are blind or have low vision interact with the world
IThe problem
01Limited technologyTechnology has advanced rapidly, while the basic design of the traditional white cane has changed little.
02Limited sensory informationA traditional white cane helps detect obstacles at ground level and provides limited information about the wider surroundings.
03No warnings about overhead hazardsOverhead hazards such as low branches and open cabinet doors can sit beyond the reach of a traditional white cane.

IIOur solution
Visual information, on your terms.

What VIDI does
We bench-tested the sensors and confirmed that the Pi detects the camera.
Features
Object Detection & Recognition | Conversational AI | Scene Description | Text Recognition
IIIEngineering and design
A modular frame built to be rebuilt.
Mechanical design
VIDI uses a modular, 3D-printed glasses frame that integrates multiple sensing and processing components. Reinforced, ergonomic temple arms carry curved over-ear supports, removable electronics mounts, and adjustable ultrasonic sensor holders — so any component can be replaced or modified without redesigning the entire frame.
Annotated frame schematic · CAD renderings and prototype photography slot in here
Hardware architecture
ESP32 → Raspberry Pi 5 · USB serial · 115,200 baud
Design evolution
Innovation & limitations
VIDI combines camera-based visual interpretation with independently acquired ultrasonic proximity measurements. The modular design emphasizes accessibility, adaptability, and iterative prototyping — and is intended to complement traditional mobility aids, not replace them.
Bench-tested functions are labeled as such; proposed capabilities stay marked as unverified.
IVHow it works
Distance = speed of sound × round-trip time ÷ 2
The sound travels to the obstacle and back.
Play runs at 12.5 fused packets per second. Step advances 40 ms. Pulse widths are illustrative.
One sensor fires every 40 ms · Each sensor updates every 80 ms · 12.5 Hz per sensor.
A median filter rejects brief spikes. A tracker uses the filtered readings to estimate distance and closing speed.
The ESP32 aligns both readings in time and uses the sensor spacing to estimate direction. If the readings differ too much, it reports the nearer side.
A distance of 1 m and a closing speed of 0.5 m/s give about 2 seconds to contact. Distance and time to contact together determine the hazard level.
JSON over USB serial · 115,200 baud.
The ESP32 processes ultrasonic readings and sends usable obstacle estimates to the Pi.
Example obstacle estimate · abbreviated ESP32 packet
{
"l": 120,
"r": 122,
"brg": -8.2,
"haz": "caution"
}VIMeet the team
The five people behind VIDI.
Headshots, majors, and LinkedIn links in place