Blind and low-vision people have two mainstream mobility aids: a white cane and a guide dog. A cane only covers the ground at your feet, so a branch at head height or an open cabinet door goes unnoticed. I wanted to fill that gap.
How it works- Sense. Two wide LiDAR sensors on the glasses (120°, up to 15 ft) look ahead. A third, angled 40° down, watches for curbs and drop-offs. An IMU tracks head tilt, so looking at the floor doesn't count as an obstacle.
- Decide. A Raspberry Pi 4 in a pocket merges the three sensors into one depth map and checks each point against its neighbours to reject false positives.
- Feel. 16 vibration motors sewn into a shirt. Columns show direction and rows show height (trip, torso, overhead). The closer something is, the faster it pulses.
Glasses. Modelled in Onshape and printed in PETG. The sensor pods carry the mounting angles, so changing an angle means reprinting one small part. The two forward sensors are tilted slightly up and down so their views overlap at eye level with no blind band.
Shirt. ERM coin motors driven by a PCA9685 PWM board through two ULN2803A driver chips. Only the one or two most important obstacles buzz at a time. A live depth map on every motor turns into background noise within a minute.
Software. Python on the Pi. Every walk is logged and can be replayed on a laptop with no hardware. A 3D browser visualizer shows exactly what the sensors saw and which motors fired, which is how most of the tuning got done. Code, CAD and the wiring map are attached below.
Walks around the house, through a public garden and under a bridge, plus scooter rides and even a game of catch. Each one was recorded and replayed in the visualizer to find false alarms and missed obstacles.
- Use the sensor's own calibrated 3D points. A simple angle-per-pixel model was off by up to 12°.
- The SEN0682 vendor library misreads the frame header and shifts every point. Sync on the header first.
- Charge-only USB-C cables power the sensor but never connect it.
- Read the sensors one at a time. They all fire infrared into the same space.
- Cables everywhere: the next step is a battery and a Bluetooth link to the shirt. Today it runs about 8 hours on a 20, 000 mAh power bank.
- Strong sunlight corrupts the sensor data.
- Motor fidelity is limited. Smoother LRA motors are planned.
If you're blind or have low vision, or work with people who are, I'd love your input: [email protected].
Experimental prototype, not a medical or mobility device. Always use it alongside a cane.
















Comments