After we attended Don Coleman's BLE workshop, Karthik and I wanted to utilize the knowledge to explore indoor navigation. After brainstorming on the idea, we wanted to make an indoor navigation/information system for the visually impaired to guide them through a predefined indoor space.
We imagined the solution to be more of 'providing important information at the right time' than an actual navigation system that puts the user on a map. We imagined a smartphone app that listens to BLE beacons placed in strategic positions to navigate a space. To elucidate, if the a user is to be guided in a subway station, the app could inform the user (through voice) if he/she is approaching a flight of stairs or a turnstile, based on multiple beacons placed strategically.
To test our concept, we made a basic app that listens to the beacons kept on a linear passage (shown in the image below). We placed three TI SensorTags separated by about 10 feet in linear fashion. We worked out the logic to figure out roughly where the phone is. It is based on listening to the signal strength from the three beacons and approximating where the user is by tracking the changing signal strengths and values. The signal strength logic is also shown in the image below (36,40 and 58 are the S/N of three beacons we used).
At first, we want to found the special UUID for each SensorTag. However, me meet big problem in this step, since iPhone won't show UUID .(ID keep changing every time on iPhone, but won't change in Android.) We need find the special ID for each Sensor Tag.
The video below shows the discovery of all devices within range. It uses Don Coleman's BLE plugin.
After finding the special ID for each SensorTag , We analyze the strength of the signal and calculate the direction and the location of the users. So far we just use three sensor Tag to test if the logic is correct.
The video on the top demonstrates the trial app that approximates where the user is heading. The voice is for demonstration only and is yet to be incorporated into the app. Going forward, we want to try the same with Estimote beacon to test out if the signal strength is more stable. We want to improve on the algorithm to make it more reliable. Also, we would be incorporating the voice into the app.
The bigger picture is to create a platform that could be used to deploy this navigation system to various indoor spaces to help the visually impaired.