Smart Walking Stick for Blind People

Introduction: Smart Walking Stick for Blind People

This project is an initial project prototype and can be a reference for someone who wants to use similar technology, techniques and methods.

However this software code is currently under progress and therefore is prone to contain errors/bugs.

Prior knowledge of C/C++ language along with operating Linux OS is required.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1:

List of Materials


1) Intel Edison

2) Arduino Breakout Board

3) Arduino I/O Shield

4) Adafruit Ultimate GPS module

5) Groove - Buzzer

6) Groove - Infrared reflective sensor

7) Groove - 3 axis digital accelerometer

8) Groove - Button

9) Groove - Light Sensor

10) IOS/Android SmartPhone

Step 2:

Software Setup

1) Refer to Intel Edison getting started guide to setup your Edison board (follow the link below).

2) Choose Intel Eclipse IDE .

3) Perform the following actions on the Edison Linux system to install the libraries for Blynk.

npm-install -g mraa blynk-library

export NODE_PATH=/usr/local/lib/node_modules

4) Download the Script provided as above (Blynk_Test.js) and put in your root directory of the Edison Board.

Step 3:

Hardware Setup.

1) Connect the I/O Shield over the Intel Edison.

2) I2C - Accelerometer

D2 - Switch

Step 4:

Software Applications

1) Create a new Eclipse worksheet using the C/C++ example with the Blink LED.

2) Replace the SCR files with files attached above (It is highly recommended that the scr code file names match the project name).

Step 5:

Sending Email from Linux

Intel Edison platform (Yokko) is running a distribution of Linux called OpenWRT. Therefore we can use functions included in order to send simple email alerts.

- We can use 'Curl' tool out of box.

- We don't have to (re)compile busybox package in order to support secure simple mail transfer protocol.

- Regarding SMTP protocol. We can send email in plain text or over an encrypted channel.

- It is recommended to use encrypted channels.

What you Need

- A proper functioning email with proper credentials.

- The message (Created at runtime by blindstick software application)

- External command used to send email is:

curl --url ''smtp://mymailserver:25'' --mail-from ''expeditor@domain.tld'' --mail-rcpt ''recipient@domain.tld'' --upload-file mail.txt --user ''user:password''

We managed to send the email notifications as we controlled a live email server with proper configuration. We white listed our IP address of mobile connection in order to allow email relaying.

Email content is build on runtime by C++ application and after file creation (called mail.txt) is issued the external command curl with previous paramters

File mail.txt will be created in /root folder (where our software application mail.txt)

Step 6:

GPS log

The application has a feature of reading coordinated from GPS. The log sends data using serial communication which can be received by utilizing USART. Refer to the main software function GPS_Get_Cords and GPS_Read_Logger.

The coordinated are combined with Google Maps Link and therefore we you can send email with a pin pointing to the position of the gps module on the google map.

Be the First to Share


    • LED Strip Speed Challenge

      LED Strip Speed Challenge
    • Sculpting Challenge

      Sculpting Challenge
    • Clocks Contest

      Clocks Contest