---
# System prepended metadata

title: Mobile network signal coverage along highways and railways

---

# Mobile network signal coverage along highways and railways
- Hai Duong Tran, učo 445437
- Martin Bažík, učo 445446

:::spoiler Visualization requirements draft
## What can we visualize?
- Show the level of coverage of mobile network of three main Czech telecommunication companies (providers)
- Blind spots or areas wih bad signal
- Statistics/summarized data from selected regions

## Visualization requirements
- Main component of visualization is a map
- Signal coverage visualized using heatmap
- Filtering/Selection of:
    - corridors, providers, type of signal (3G, 4G, ...), regions, ...
- Summary of selected/highlighted area/corridor
    - after selecting a corridor
        - additional **visualization/view** for relief/line chart of signal strength (signal strength wrt distance from start of the corridor)
        - interaction with map (mouse position on line corresponds to location on highway/railway)

## Additional features
- Statistics of selected area/corridor
    - blind spots, weak signal (thresholding)
- Selection of different map types
    - satellite
    - contour? lines (vrstevnice) for diagnostics of weak signal (mountains, less inhabited area => lower priority)

## Analysis of requirements:
- How big the regions are we going to use? District/County?
    - The user can select between the two.
    - User should be able to select certain highway or railway.
- Blind spots for all the operators/types of signal or only selected ones?
    - The user should be able to select what is being displayed.
- What information needs to be displayed simultaneously? Operators/type of signal?
    - Should be able to display all in separated layers
- What is meant by data summarization? What data is important for the end user?
    - Percentage of coverage
    - Number of blind spots
    - Length of the largest blind spot
    - Relief of the signal progression along the path

## Technologies:
- Leaflet - https://leafletjs.com/
    - Open source JavaScript library for mobile friendly interactive maps.
:::
## Main use cases
- To compare signal coverage of mobile network providers (O2, Vodafone and T-Mobile)
    - "User travels a lot. He needs to decide which provider is the best for him with respect to signal coverage."
        - i.e. statistics about whole/user defined area coverage
# Visualization requirements (Task 1)
- Visualization consists of two main components:
1. Map of the Czech Republic
    - Types: classic, satellite, relief with contour lines
    - Source: https://docs.mapbox.com/api/maps/#static-tiles (based on OpenStreet) 
2. Side panel with:
    - List of highways and railways (corridors)
    - List of mobile network providers.
    - We can select corridors of interest:
        - **to highlight in map**
            - Multiple providers visualized as paths next to each other. Use some kind of overlay for each provider (Vodafone should be red-ish, O2 should be blue-ish, T-mobile should be pink (not a good idea) maybe green for RGB?)
                        - Strenght defined by intensity
            - Colour mapping similar to Google maps traffic visualization
        - **to show summary statistics**
            - Signal strength 
                - ==Find a suitable metric== (e.g. mean signal strength)
            - Corridor length
            - Average length of blind spots or average time spend without signal
            - ...
        - **to show signal strength profile**
            - similarly to www.mapy.cz profile of a cycling route
            - interactive with map
            - ==Does it make sense to show this? We have to explore the values of the data first.==

- Provide **"global" statistics** of all corridors e.g. for comparison
    - insight into signal strength of each corridor by:
        - profiles or stacked bar chart

## Data

### Example of highway data for T-Mobile operator (there are also O2 and Vodafone): 
time|LAT|LON|T-Mobile LTE - RSRP|T-Mobile LTE - SINR|T-Mobile GSM - PSCH|
| ------------- |:-------------:| -----:|-----:|-----:|-----:|-----:|
11:21:18|49,405985|14,718907|-62,08|7,08|-41,56|
11:21:19|49,405981|14,718723|-62,08|7,08|-41,56|
11:21:20|49,405976|14,718526|-58,67|9,42|-41,56|
11:21:21|49,405979|14,718343|-58,67|9,42|-35,64|

Legend:
- time of the captue
- LAT and LON are geographical coordinates
- LTE (4G) metrics:
    - [RSRP](https://www.cablefree.net/wirelesstechnology/4glte/rsrp-rsrq-measurement-lte/) -  (Reference Signal Receive Power) is the average power of Resource Elements (RE) that carry cell specific Reference Signals (RS) over the entire bandwidth. The smaller RSRP the stronger signal..
    - [SINR](https://wiki.teltonika-networks.com/view/SINR) - Signal-to-interference-plus-noise ratio, the power of a certain signal of interest divided by the sum of the interference power. 
- GSM (2G) metric: PSCH - Primary Synchronization Channel - Signal power, similar to RSRP.

For railways, there is one extra type of signal and that is UMTS (3G) measured in RSCP (Received signal code power), similar to RSRP, and Ec/Io (the ratio of the received/good energy to the interference/bad energy), measures quality/cleanliness of the signal from the tower, similar to SINR.

## Design ideas
- Inspiration by [UlovDomov]
:::spoiler Design ideas
- (https://www.ulovdomov.cz/vyhledavani/pronajem/Brno/v-49.30274;16.76067;49.10152;16.39538)
![](https://i.imgur.com/kDW9hVa.jpg)
- We can choose multiple providers and network type, or
![](https://i.imgur.com/9bMRAvt.png)
- we can choose only single provider and network type
![](https://i.imgur.com/SD9UVfh.png)
- multiple corridors
![](https://i.imgur.com/EVjKFzv.png)
:::
# Final design (Task 2)
### Default view
- Overall statistics of all corridors + each corridor
- We can select corridor in map
:::info
1a Default view - Hidden details
:::
![](https://i.imgur.com/akx8kSO.png)

:::info
1b Default view - Shown details
:::
![](https://i.imgur.com/dRmZsHG.png)

:::info
1c Default view - Shown details - More details (profile)
:::
![](https://i.imgur.com/vGEbRio.png)

### Filtering
:::info
2 Filtering in side panel (other tab)
:::
![](https://i.imgur.com/fHJ7WrJ.png)
:::info
2 (alt.) Filtering as a popup window
:::
![](https://i.imgur.com/xwT3Xev.png)

### Other details
- Change map type with buttons on map

# Implementation (Task 3)
- Čan: frontend
- Martin: preprocessing of the data (precompute various stats, export to sturctured json), map visualization
- Both: charts, interaction, fine-tuning
## Tech
- Frontend: [Vue.js](vuejs.org)
- Design (stylesheet): [Materialize CSS](https://materializecss.com/)
- Map: [Leaflet.js](leafletjs.com)
- ~~Charts (line chart for profile, stacked bar charts, ...): [Chart.js](chartjs.org) ???~~
- Charts: [D3.js](https://d3js.org/) due to easier customization


