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.
Add a Teacher Note to share how you incorporated it into your lesson.
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
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
4) Download the Script provided as above (Blynk_Test.js) and put in your root directory of the Edison Board.
1) Connect the I/O Shield over the Intel Edison.
2) I2C - Accelerometer
D2 - Switch
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).
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 ''firstname.lastname@example.org'' --mail-rcpt ''email@example.com'' --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)
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.