Introduction: Talking Smart Glass for the Blind
There are multiple smart accessories such as smart glasses, smart watches, etc. available in the market. But all of them are built for us. There is a significant lack of technology to aid the physically challenged.
I wanted to build something that is useful for the visually challenged people. So I designed a low-cost smart glass that can be used to help the visually impaired.
This project uses a few ultrasonic distance sensors, an Arduino Pro Mini, an MP3 player module, and some vibration motors. The circuit board used in this project in the form of a spectacle, which can be worn by a visually impaired person. An Arduino mounted on the spectacle will detect the obstacle with the help of the sensors and notify the user distance and direction of the obstacle through headphones and vibration motors.
Step 1: Gather the Components
Software:
- Arduino IDE
Hardware Components:
- HC-SR04 - Ultrasonic Sensor X 3
- DFRobot DF Player mini X 1
- Arduino Pro Mini X 1
- 3.5mm Audio jack X 1
Vibration motors X 3
USB to Serial Converter like FTDI
Slide Switch X 1
SD Card (Any size)
Custom PCB From JLCPCB.com (Optional)
Step 2: Coding Time - Program the Arduino Pro Mini
- Go to https://github.com/B45i/Talking-Smart-Glass-For-Blind and click on clone or download, and download and extract the files.
- Open Smart_glass_for_blind.ino File in Arduino IDE.
- Connect the Pro Mini to the computer using FTDI cable.
- Select proper COM port.
- Select 'Arduino Pro or Pro Mini.'
- Click upload
Make sure to flash Arduino before soldering it to PCB. Once all the components are soldered, it will be bit harder to connect the programming header.
Change the minLeftDistance, minCenterDistance, minRightDistance to adjust the minimum triggering distance.
Step 3: Fixing Errors !!!
You will probably see some errors like
fatal error: NewPing.h: No such file or directory<br>#include<NewPing.h>^ compilation terminated. exit status 1 Error compiling for board Arduino Pro or Pro Mini.
or some thing like:
fatal error: DFRobotDFPlayerMini.h: No such file or directory<br>#include<DFRobotDFPlayerMini.h>^ compilation terminated. exit status 1 Error compiling for board Arduino Pro or Pro Mini.
This is because the libraries like NewPing and DFRobotDFPlayerMini is not installed on your IDE.
To fix this, Go to
Sketch > Include Libraries > Manage Libraries
Enter the missing library name on the search bar and click install, this will install the missing library.
Do this for all the missing libraries.
The code will compile and upload now.
Step 4: Prepare the SD Card
Copy content of the Audio files folder to the root of the SD card.
Note: Copy folders (01, 02, 03) itself, not its content, not the Audio files folder.
SD card should look like in the image after copying.
Step 5: Ordering the PCB
Let's order the PCBs.
You can find the PCB files here : https://easyeda.com/B45i/Blind_glass-c2decaaea6f84508a28f646ed3dcc5dc
You can make this project without the PCBs as well. But having the PCB makes it more convenient.
For ordering PCB my favorite manufacturer is JLCPCB.com.
They make really really high-quality PCB for a very cheap price.
When I started designing PCBs, It costed way to much money to manufacture PCBs. So I had to etch them myself.
It was a messy and tedious process, and making two-sided PCBs was a very very hard task.
Now I don't do that anymore. JLCPCB is so cheap that I never consider etching one anymore.
You will get 5 or 10 pieces of PCB for about $2 (if its size less than 10cm * 10cm).
I used easyEDA for designing the PCB. Which is a cloud-based tool. Means I don't have to download anything and I can work from almost any computer with internet connection.
JLCPCB, EASYEDA, and LCSC (an electronics component provider) work together.
You can order PCBs from JLC within easyeda itself.
Ordering components used in your PCB from LCSC only takes a few clicks.
Since JLCPCB and LCSC ship good together you save cost on shipping as well
JLCPCB, EASYEDA, and LCSC together provide a great platform for electronics makes.
Step 6: Soldering Time..
Solder the components like Arduino, DF Player, Audio Jack, Slide Switches to the PCB first.
Don't directly solder the HC-SR04 module, We need to do some modifications
- Straighten the male header using a plier or de-solder the 90° headers and solder normal headers.
- Add electrical tape to the back of HC-SR04 to avoid short circuit.
- Insert HC-SR04 to designated solder pads. hold the left and right HC-SR04 at an angle so that it points to the left and direction and apply solder.
Solder rest of the components such as power supply cable, slide switches, vibration motors etc.
Vibration motors should be soldered to the back of the PCB so that person wearing the glass can feel the vibrations.
If you don't have the PCB, you can still make the project by connecting the components as shown in the circuit diagram.
If You are making the project without the PCB, then please refer to the attached circuit diagram.
In the schematics, I accidentally swapped Pin 8 and 9. Sorry for the mistake,
Correct connection is
- Rx of DF Player => PIN 9 of Arduino.
- Tx of DF Player => Pin 8 of Arduino.
Do correct it if you are not using the PCB, I don't have the fritzing file with me anymore.
You can insert the SD Card into the DFPlayer now.
After connecting power, motors should vibrate and audio will come from headphones when there is an obstacle.
Step 7: Done.
You are now done.
You can find all the resource here.
This is my entry to the PCB contest, Vote if you liked this instructable.
My entry to PCBWAY PCB desi gning contest . If you like this project consider voting for my entry: https://www.pcbway.com/project/shareproject/Talking_Smart_Glass_For_Blind.html
If you face any issues, comment them. I will try to help

Participated in the
PCB Contest
19 Comments
2 years ago
why i can not upload coding after install newping and dfrobotdfplayer???... can i know what next step
4 years ago
Nice work
Reply 3 years ago
Thanks
4 years ago
Can it be done with an arduino?
Reply 3 years ago
sure
3 years ago
what is the use of USB to Serial Converter like FTDI? and you really have done a good work?
Reply 3 years ago
Thanks brother, the USB to Serial Converter is used to upload code to arduino pro mini as it dont has a built in USB to Serial Converter. you can use an Arduino nano / Uno as well.
Question 3 years ago on Step 3
I am not getting the missing file of NewPing
Answer 3 years ago
You have to install that library
3 years ago
I want to buy....where I get it this project
Reply 3 years ago
hey i dont sell this, you have to make ur slef
3 years ago
Can I know why is the program not working
Reply 3 years ago
whats the error u getting ?
3 years ago
how much time it will take to happen?
Question 4 years ago
Is this code is same for arduino nano
Answer 4 years ago
Yes
Reply 3 years ago
Is this the same for arduino UNO
4 years ago on Introduction
ok i like ur project but how far it be
Reply 4 years ago
About 4 meters