# Constructing a graph of WiFi strength

• RubinLicht
In summary, the project goal is to collect data on WiFi signal strength at a school location over time, and to plot the data in a graph. The project requires learning about "multipath interference", "RSSI", "dBm", and "units of power".
RubinLicht
I have way too much time to spare, so I came up with this fun little project.

What i want to do is use my phone or laptop to incrementally collect data on WiFi strength at my location at that time, using GPS (longitude and latitude), and once I have enough data, (I'm fine if it takes like several months, I'm still in high school, and I'll be walking around in classrooms anyways.) I'll plot all the data in Mathematica so that there's a somewhat continuous graph of WiFi strength throughout the entire school.

My question is this: what sorts of things should I learn in order to make this process more automated/simple. I'm open learning new languages or learning how to make Android apps. Currently, I only know how to program in Mathematica.

Perhaps I could make an android app that runs in the background and have as many friends download it as possible?

RubinLicht said:
I have way too much time to spare, so I came up with this fun little project.

What i want to do is use my phone or laptop to incrementally collect data on WiFi strength at my location at that time, using GPS (longitude and latitude), and once I have enough data, (I'm fine if it takes like several months, I'm still in high school, and I'll be walking around in classrooms anyways.) I'll plot all the data in Mathematica so that there's a somewhat continuous graph of WiFi strength throughout the entire school.

My question is this: what sorts of things should I learn in order to make this process more automated/simple. I'm open learning new languages or learning how to make Android apps. Currently, I only know how to program in Mathematica.

Perhaps I could make an android app that runs in the background and have as many friends download it as possible?
Sounds like a fun project, but be sure to learn about "multipath interference", which affects signal strength for WiFi significantly. Multipath affects the RSSI value a lot over movements of the receiver on the order of a wavelength. You can get very deep nulls if there is a strong reflection nearby that cancels the main signal at your receiver's location.

Also, your body absorbs WiFi signals a bit, so that will affect the receive signal strength depending on which side of your body the WiFi transmitter is located. And this also interacts with the multipath issue...

So think some about what kind of smoothing and averaging functions you might want to use with your data, to give more of an overall RSSI value. And think about how you want to handle the body shading issue -- you can hold the phone up over your head (and vertical) for example, but that's kind of awkward. You should see some of the fixtures we've used in EE/RF level RSSI testing of WiFi and other RF comm bands...

RubinLicht
For example, here is a plot of the RSSI in a room in the 900MHz band as you move the (non-body-shielded) receiver around the room)... See the issue?

http://cdn2.hubspot.net/hub/316692/file-1500795371-png/figure17.png

RubinLicht
As well as the problems of changing environment, some Wifi access points make your task more difficult by changing their transmit power as needed to support each conversation. Some have beam steering antenna arrays. They may even jump channel from time to time. (eg. Ruckus )
I don't know how (intermittent) interference from neighbours on the same or adjacent channel will affect your readings. It can certainly drop the snr & throughput, and provoke intelligent access points into changing power or channel.

I'm not sure how much these will affect you, but any variations might make your measurements more difficult and inconsistent.
I suppose, looking over a long period at the maximum strength available at each point will eliminate a lot of variation.

I never had much success with this sort of mapping, though I probably wasn't as persistent and dedicated as you. I always felt a bit bemused (and very sceptical) when salesmen wandered round for half an hour telling me they were mapping my coverage. But maybe they really did know a lot more than I? (Shame I never believed them.)

RubinLicht
Wireshark may be of use for this project.

Sounds like a potentially fun project. But if you haven't done so already, I suggest first making a program that allows you to monitor the WiFi signal "manually," before automating the process. A few steps you'll want to do along the way,
$P_{dBm} = 10 \log_{10} \frac{P}{1 \ [\mathrm{mW}]}$

Beyond that there are some hurdles to overcome to automate the process (other PF members have already mentioned some of those). One of which might be the GPS reliability indoors. Depending on your high school's building and your particular location within the building, you might not be able to get a reliable GPS signal. There's also the issue of your phone's power consumption. Even if your app only checks for signal strength periodically, it could negatively impact battery charge (which might be fine -- just be aware of it).

Last edited:
RubinLicht and berkeman
Wow thanks for all the input, once my college applications are done I'll probably dabble a bit in Java and Android app developer and get started on the project.

## 1. How do I measure the WiFi strength?

To measure the WiFi strength, you can use a WiFi signal strength meter or a WiFi analyzer app on your device. These tools will display the signal strength in decibels (dBm) or percentage (%).

## 2. What are the factors that affect WiFi strength?

The main factors that affect WiFi strength are distance from the router, physical barriers, interference from other electronic devices, and the type of router and network equipment being used.

## 3. What should be the range of dBm for a good WiFi signal?

A good WiFi signal typically ranges from -50 dBm to -70 dBm. This indicates a strong signal and good connection. Any signal below -80 dBm is considered poor and may result in slow internet speeds.

## 4. How can I improve my WiFi strength?

To improve WiFi strength, you can try moving closer to the router, minimizing physical barriers between your device and the router, using a WiFi range extender, or upgrading to a newer and more powerful router.

## 5. How do I construct a graph of WiFi strength?

To construct a graph of WiFi strength, you can plot the dBm or percentage values on the y-axis and the distance from the router on the x-axis. You can also include labels and a legend to make the graph more informative.

• Computing and Technology
Replies
1
Views
2K
• Computing and Technology
Replies
46
Views
4K
• Computing and Technology
Replies
10
Views
8K
• Computing and Technology
Replies
9
Views
2K
• DIY Projects
Replies
5
Views
3K
• Computing and Technology
Replies
5
Views
4K
• Computing and Technology
Replies
7
Views
6K
Replies
3
Views
1K
• General Engineering
Replies
1
Views
2K
• Computing and Technology
Replies
4
Views
4K