Proj-2015-2016-IndoorGeoloc/Fiche

Project page

= Progress of the project =

Week 1 (January 11th - January 17th)

 * Choice of the project

Week 2 (January 18th - January 24th)

 * Discovery of the project
 * Discovery of the already existing technologies
 * Test of the given instruments (iTag, STM32...)
 * Writing the requirements specifications

Week 3 (January 25th - January 31st)

 * Writing of the UML diagrams
 * Definition of the structure of the project

Week 4 (February 1st - February 7th)

 * Receipt of the TI Simplelink SensorTag
 * Trying to make the sensor work

Week 5 (February 8th - February 14th)
We will keep an eye on the evolution of the Genuino emission problem, our project will be designed to allow the treatment of Genuino beacon data. But since time is running out, we will concentrate on the other beacons.
 * Elaboration of the design patterns to use in the project
 * Tests writting designed to understand the Genuino board functionning
 * Making the Genuino beacon emit signals is not possible for the moment according to the following website : arduino.emitting-problems

Week 6 (February 15th - February 21st)
Before splitting the work into parts for each member of the group, we agreed on the common format of data to use and which attribute is useful between one another. There are four main parts :
 * Transmission of data from the beacons to the server
 * Extraction and treatment of the received data
 * Emission of the triangulated coordinates to an android client
 * Treatment of the coordinates and display of the result on the client' screen.

/* Ajouter des contraintes-spécificités de chaque partie (ex : protocole MQTT...)*/

Week 7 (February 22nd - February 28th)
Each one of us work on a defined task.


 * Beacon emission : board receives BLE packets (sorting them between different MAC addresses) and then computes the ratio of signal strengh over signal average strengh.
 * Server (beacon side) : allow the transmission of data (in a raw state) to the server which will compute the distance according to the RSSI formula
 * Server (android side) : Development of the MQTT server sending position to the Android clients
 * Android : evaluation of the functionnalities proposed by the application.

Week 8 (February 29th - March 6th)

 * Beacon emission : board receives BLE packets (sorting them between different MAC addresses) and then computes the ratio of signal strengh over signal average strengh.
 * Server (beacon side) : allow the transmission of data (in a raw state) to the server which will compute the distance according to the RSSI formula
 * Server (android side) : Development of the MQTT server sending position to the Android clients MQTT server
 * Android : we found that the Android library OSMDroid might help us doing the rendering of a map on smartphones. Using leaflet could also help us empiling multiple objects

Week 9 (March 7th - March 13th)
Presentation support :

Preparation of the presentation.

Week 10 (March 14th - March 20th)

 * Beacon emission : Research on compilation STM32.
 * Android : Looking for similar projects such as OpenLevelUp. We were thinking of using the same structure of file to describe a building. Some projects are likely to help us develop our app : [|GeoDrawerAndroid]. The following libraries are used : [|OSMDroid], [|OSMBonusPack]
 * server (beacon side) : Working on how to transform the data and how to store them on a distant server, we have been advised to lend one from an amazon-server : [|amazon-server]. This way we could try executing more realistic tests.
 * server (android side) : Studying the libraries proposed by Mosquitto and Paho (for the clients). Mosquitto seems to be designed only for server use. Trying to get some tests to work.

Week 11 (March 21th - March 27th)

 * Beacon emission : We work on the correction of the detection and the weight of the signals. Trying to add a function resetting the list of detected beacons in order to reduce the quotity of message to one per beacon (T_Time_Out). Check if after second scan with TimeOut we get data in less time if there is only one device.
 * Android : Research on how to parse the location file received from the server.
 * Server (beacon side) : Creating the database storing the positions. Having some tests positions, trying to figure out how to restrain the number of position in the database. Creating another one to store the most recent ones ?
 * Server (android side) : Encountering some problems with the libraries. Some are really incomplete, we gave up the idea of using the mosquitto library. Paho seems to be functionning on our small tests. Still needs to be incorporated in the project.

Week 12 (March 28th - April 3th)

 * Android : At this state everything seems to be working, we try to have a better layout of the application and to work on the features. Looking for how to incorporate indoors map generated manually (thinking of getting official plan of buildings digitalized with MapTiler)
 * Beacon emission : We found out that the currently used STM32f446 bluetooth shield isn't working because it isn't correctly connected. The pins aren't identical, that's why the program won't run. We have to change the boards, so we must get : STM32f401
 * Server (beacon side) : Need to have the androids clients to know which devices can be located, so we need to send them the list of the beacon. This list is generated from the history database. and send to the client via HTTP request. A table of the location of the board is created.
 * Server (android side) : Facing material difficulties, the eclipse project won't recognize some packages of the project. This delayed the completion of the mqtt part. Thinking of using another method of send data since the deadline is approaching.

Week 13 (April 4th - April 10th)
We start to prepare the final presentation, some parts of the project are still unfinished but we try to get it done before the due date. We try to have tests to show and the report written by the dealine. Everything is quite rushed so we can't really focus on a single problem all at once. The test of the presentation consists of showing the detection of a beacon in the room containing three detecting boards. The database where the computed location of the beacon is displayed on the screen. And showing the rendering of beacons locations on the android app. We will also show the indoors map realised thanks to the evacuation plan given by the admninstration of Polytech.