The Vision Project

A project to provide a form of "vision" to the blind and partially sighted.

Similar projects worth following
I am developing a head mounted open source device that translates the world in to tactile feedback in a way that feels natural and intuitive for use by the blind or partially sighted.

For my prototype I am using an array of hc-sr04's coupled with a pressure feedback array. Having researched the easier option of vibration feedback the risk of a forehead equivalent of 'vibration white finger' would damage the heads sensitivity and render any such device useless. Vibrations would interfere with the users hearing and any bulk or weight would be uncomfortable for long periods. The reason for the sr04s rather than a kinect type sensor is range, cost and openness. I want this to be a $20 device although I am not opposed to the possibility of a more advanced model later. Drawings and updates to come. Also worth mentioning, I need people in south Wales to try out prototypes as I build them.

  • 9 × hc-sr04
  • 9 × Mini SG90 9g Micro Servo Motor
  • 1 × Arduino mega
  • 1 × teensy lc

  • Still Going.....

    haydn jones05/27/2015 at 20:59 0 comments

    After drilling and cutting my teensy-lc arrived from HAD, and the servo arms were literally a headache. I found a nice design for a glue stick linear actuator, and I am incorporating the teensy as the (or an alternative) controller. I need to find out if I can use a common send pulse for multiple range finders to reduce pin count.Will update as i learn more :)

  • Project Enclosure and PSU :)

    haydn jones05/16/2015 at 13:01 0 comments

    Just got these and I now have a Mega, so full steam a head.

    I think it's dremel time.....

  • Progress, of sorts

    haydn jones04/28/2015 at 13:14 0 comments

    I have pushed my Uno as far at it can go, and am now waiting for a mega from china, so I can connect my whole array. Looking for a good supply of tension springs as an alternative to extra gears. I wont post any images today, but my design is (will be) based on a hat. I will need a cheap 3d print service for my levers and frame at some point if anyone has any recommendations.

  • Testing parts

    haydn jones04/17/2015 at 16:28 0 comments

    trig pin 8
    echo pin 9
    servo pin 2
    #include <Servo.h> 
    Servo myservo;  // create servo object to control a servo 
    int ang;    // angleofservo
    const int TriggerPin = 8; //Trig pin
    const int EchoPin = 9; //Echo pin
    long Duration = 0;
    void setup(){
    myservo.attach(2);  // attaches the servo on pin 2 to the servo object 
    pinMode(TriggerPin,OUTPUT); // Trigger is an output pin
    pinMode(EchoPin,INPUT); // Echo is an input pin
    Serial.begin(9600); // Serial Output
    void loop(){
    digitalWrite(TriggerPin, LOW);
    digitalWrite(TriggerPin, HIGH); // Trigger pin to HIGH
    delayMicroseconds(10); // 10us high
    digitalWrite(TriggerPin, LOW); // Trigger pin to HIGH
    Duration = pulseIn(EchoPin,HIGH); // Waits for the echo pin to get high
    // returns the Duration in microseconds
    long Distance_cm = Distance(Duration); // Use function to calculate the distance
    Serial.print("Distance = "); // Output to serial
    Serial.println(" cm");
    ang = map(Distance_cm, 0, 1023, 0, 179);
    delay(100); // 10 readings per second
    long Distance(long time)
    // Calculates the Distance in cm
    // ((time)*(Speed of sound))/ toward and backward of object)
    long DistanceCalc; // Calculation variable
    DistanceCalc = ((time /29) / 2); // Actual calculation in cm
    //DistanceCalc = time / 74 / 2; // Actual calculation in inches
    return DistanceCalc; // return calculated value
    Just tested the servos with sensors as a proof of concept. Will need to work on smoothing and fine tuning the angles,possibly with gearing/levers.

  • Extra sketches

    haydn jones03/31/2015 at 22:19 0 comments

    A few sketches while I'm waiting for parts. Any thoughts on the array layout?

  • parts ordered

    haydn jones03/29/2015 at 15:52 0 comments

    Have ordered sensors and servos, will try to add some sketches that make sense to people other than me.

View all 6 project logs

Enjoy this project?



phoenix perry wrote 01/09/2016 at 10:35 point

You might be interested to know Eagleman is building off the research of Paul Bach-y-Rita who worked on the Brain Port.

Also, Eagleman just put out his findings on optimal spacing of the actuators to individuate them on the back. My guess is that will be of relevance to your research too.  Here's a bit from a paper I wrote with citations.  

"One area where this is happening is in research into sensory substitution and multi-modal experiences which replace and expand our current sensory systems. Research in the field Neuroscience by Eagelman and Novich couples sensory substitution with sound and haptics to convey visual information. Their research reveals how to convey precise visual information through the positioning of vibrotactile feedback for optimum results on the lower back [4]. Research from the University of Pennsylvania points to the benefits of using spatially distributed tactiles for the rehabilitation of Apraxic stroke patients who struggle to process visual information.Using a wearable tactile sleeve they combine virtual reality with spatially positioned tactile feedback to reinforce the visual feedback of motion. [5]"

Eaglemanm, D. M. and Novich, S. D. Using space and time to
encode vibrotactile information: toward an estimate of the skin’s achievable
throughput. Experimental Brain Research,
vol. 233, no. 10, pp. 2777-2788, Oct, 2015.

Kapur, P., Jensen, M., Buxbaum, L. J. et al. Spatially distributed tactile feedback for kinesthetic motion guidance. In Haptics Symposium, 2010 IEEE, vol., no., pp.519-526, 25-26 March, 2010. 

  Are you sure? yes | no

davedarko wrote 04/19/2015 at 11:44 point

9 Sensors AND Servos on your forehead seem to be a bit heavy. May be you can take a hat and use bowden cables to reroute the servos that could be arranged around the hat. Won't the sensors distract each other or will you do a send-wait-next thing?

I was thinking of this TED video: 

  Are you sure? yes | no

haydn jones wrote 04/19/2015 at 12:21 point

My thought was to put the servos on top of the head, or in a pack and use pneumatics to create the pressure. The servos are good to test the concept and keep the price down for the early stages of development.

The video was great. a head band visual system was shown, will have to look it up :)

  Are you sure? yes | no

K.C. Lee wrote 06/05/2015 at 14:43 point

BTW I am also working on an ultrasonic sensor based design.  One of the things I am attempting to do is to redesign ultrasonic range finder for size/weight/power reduction/integration.  For your array, you might only need 10 transducer for the transmitter and 9 receivers.  Even the receiver circuits can even be time shared and reduced by using an analog mux if you don't mind taking turns and longer sampling time.

  Are you sure? yes | no

haydn jones wrote 06/05/2015 at 16:57 point

Hi, I have been following you project. I was particularly interested in your hc-sr04 tear-down which was my biggest hurdle in making this a manufacturable design (clearly you arr far more capable than me, but i try my best). I am redesigning the mechanics having just found better smaller servos available. If you go to the bottom of my profile i have a page of links I am using for reference which has links to other projects similar to ours.

  Are you sure? yes | no

K.C. Lee wrote 06/05/2015 at 18:03 point

I am always happy to share what technical info I came across and document them in the project logs.  I'll do some actual testing, measurements and hacking my hc-sr04 shows up.

  Are you sure? yes | no

Blecky wrote 04/01/2015 at 06:44 point

Daniel Kish: How I use sonar to navigate the world -

  Are you sure? yes | no

haydn jones wrote 04/01/2015 at 07:55 point

Thanks :) That has answered one of my questions about if the brain could use visual processing without actual sight.

  Are you sure? yes | no

Blecky wrote 03/29/2015 at 12:16 point

You can use my project to provide positioning information :D

  Are you sure? yes | no

haydn jones wrote 03/30/2015 at 11:20 point

Thanks for the link, may be useful for object tracking on a later iteration (finding house keys, recognising buildings etc). My main focus for the first model is spacial awareness.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates