---
title: 'Indoor tracking'
disqus: hackmd
---
Indoor tracking
===
## Table of Contents
[TOC]
## Requirements
Make a solution for high resolution indoor tracking based on Tracki platform.
1. Wifi/Bluetooth devices
2. Apply triangulation algorithm for detect location of the device inside small place, building, etc.
3. Realtime data will be processed at AWS API and save/publish location of devices after calculated
4. Able to show device location on 2D and 3D Tracki Web
Use cases
---
```gherkin=
Feature: Manage mobile device location inside the building.
# The first: device enabled bluetooth
Scenario: Using bluetooth signal
When the user moving inside building
Then 3 nearest gateway will tracking the signal strength
And gateway will send the signal strength information to AWS via API/MQTT
And AWS will calculate location of the device
# The second: device enabled wifi
Scenario: Using wifi signal
When the user moving inside building with wifi turn on
Then device scan wifi access points near by
And device will send the signal strength to AWS via API/MQTT
And AWS will calculate location of the device
```
```gherkin=
Feature: Manage Bluetooth Beacon device inside the building.
Bluetooth beacon will be attached to other devices, such as: monitor, projector, etc.
We want to manage location of these devices.
Scenario:
Given Attach bluetooth beacon onto the device you want to manage
When the device moving inside the building
Then 3 nearest gateway will tracking the signal strength
And gateway will send the signal strength information to AWS via API/MQTT
And AWS will calculate location of the device
```
```gherkin=
Feature: Manage Tracki devices.
Tracki device have both of Bluetooth and Wifi signal.
We want to manage location of Tracki devices or other devices attach Tracki
# The first: tracki with bluetooth
Scenario: Using bluetooth signal
When the Tracki device moving inside building
Then 3 nearest gateway will tracking the signal strength
And gateway will send the signal strength information to AWS via API/MQTT
And AWS will calculate location of the device
# The second: tracki with wifi signal
Scenario: Using wifi signal
When the the Tracki device moving inside building with wifi turn on
Then device scan wifi access points near by
And device will send the signal strength to AWS via API/MQTT
And AWS will calculate location of the device
```
Triangulations
---
Workflows
---
```sequence
title: Use Bluetooth signal
Bluetooth\nBeacon->Projector: Attach to
Note left of Bluetooth\nBeacon: Move projector\ninside building
Bluetooth Gateway-->Bluetooth\nBeacon: Scanning and get signal strength
Bluetooth Gateway->Server: API/MQTT send signal data
Server->Server: Get 3 nearest gateways
Server->Server: Apply triangulation\ncalculate location
Web/Mobile->Server: API/MQTT get devices location
```
```sequence
title: Use Wifi signal
Note left of Mobile or\nTracki with wifi: Move device\ninside building
Mobile or\nTracki with wifi-->Wifi\naccess point: Scanning and get signal strength
Mobile or\nTracki with wifi->Server: API/MQTT send signal data
Server->Server: Get 3 nearest access points
Server->Server: Apply triangulation\ncalculate location
Web/Mobile->Server: API/MQTT get devices location
```
Project Timeline
---
```mermaid
gantt
title A Gantt Diagram
section Section
A task :a1, 2020-01-01, 30d
Another task :after a1 , 20d
section Another
Task in sec :2020-01-12 , 12d
anther task : 24d
```
## Basic mockups
:::info
**Find this document incomplete?** Leave a comment!
:::
###### tags: `Indoor Tracking` `Bluetooth` `Wifi`