Introduction: Portable WiFi Analyzer

Picture of Portable WiFi Analyzer

This instructables shows how to use a Tic Tac sweet box make a portable WiFi Analyzer.

You may find more background in my previous instructables:

https://www.instructables.com/id/ESP8266-WiFi-Anal...

https://www.instructables.com/id/IoT-Power-Consump...

Step 1: Why?

Picture of Why?

WiFi Analyzer is very useful in some situations:

  1. WiFi everywhere now and 2.4 GHz is still most compatible frequency. At my home and office, I can found over 20 AP SSID but 2.4 GHz only have 11 channels. That means the signal substantially overlapped and interference degrade the network performance. Choose a right channel for your AP is very important. For example, in the above photo snap situation, channel 8 and 9 is much better than others.
  2. If you need to use free WiFi in the street, you may choose one with strongest signal strength, but it is not always the fastest network. if you can find a channel with lesser overlapping you should have better experience. For example, in the above photo snap situation, channel 4 and 6 is much better than channel 11.
  3. Portable device share file wirelessly by building temporary AP with a random channel. Sometime it may hit a channel that already very busy and transfer file very slow. WiFi Analyzer can help you detect this situation, normally restart the device wireless sharing function can switch to another random channel.
  4. If you found other useful situation, leave me a comment. ;>

Step 2: Preparation

Picture of Preparation

Transparent Case

Tic Tac is one of easy accessible transparent sweet box. But beware it have many size, especially you bought it in different seasons and countries. Some can fit a 2.2 inch LCD and some bigger one can fit a 2.4 inch LCD with break out board.

LCD Display

Any ili9341 LCD that can fit in the sweet box should be ok, I am using TM022HDH26 this time.

Battery

Any LiPo battery a little bit smaller that the LCD should be ok. In my measure, this circuit sometime may draw over 200 mA. In order to keep the circuit not draw over 1C current from the battery, it is recommended to choose a battery over 200 mAh.

Charge Board

Any micro USB LiPo charge board that can compatible with your battery.

ESP Board

Any ESP8266 board with SPI pin out should be ok, I am using ESP-12 this time.

3V3 regulator

I am using HT7333-A. (AMS1117 is not recommended, it draws too much power while standby)

PNP transistor

Any normal PNP transistor, I have some SS8550 in hand.

Others

3 x 10k resistors, a 470 uf capacitor, a 100 nf capacitor, a button for reset the ESP board, some wire for connection and a key ring for hanging this on your bag.

Step 3: Program ESP8266 Board

Picture of Program ESP8266 Board

It is recommended program ESP8266 before soldering it with other components.

Download the source code here:

https://github.com/moononournation/ESP8266WiFiAnal...

Compile and program the ESP8266 with Arduino software.

You may find more details in my previous instructables:

https://www.instructables.com/id/ESP8266-Bread-Boa...

Step 4: Sweet Box Patch

Picture of Sweet Box Patch
  • Patch the box to fit in the LCD
  • drill pair of holes for hanging key ring

Step 5: Battery Concern

Picture of Battery Concern

In my previous instructables, I have measured the power consumption in different boards and battery connection. The ESP-12 with HT7333-A can make a good power saving circuit. I can skip a power switch for simpler design, the analyzer scan five times and fall into deep sleep mode. Simply press the reset can turn it on again. Assume scan 1 time consume 1.1 mAh, every day scan 5 times and deep sleep 1 hour consume 0.31 mAh, a 400 mAh can last a month:

400 mAh / (5 x 1.1 mAh + 24 x 0.31 mAh) ~= 31 days

Step 6: Soldering Work

Picture of Soldering Work

Double check your LCD data for the pin definitions.

Here are the connection summary:

charge board B+            -> LiPo +ve
charge board B-            -> LiPo -ve
charge board out+          -> 3V3 regulator power input
charge board out-          -> 3V3 regulator GND, ESP GND, LCD GND, capacitors
3V3 regulator power output -> ESP Vcc, PNP transistor Emitter, capacitors
PNP transistor Base        -> 10 k resistor -> ESP GPIO 4
PNP transistor Collector   -> LCD Vcc, LCD LED

LCD SCK  -> ESP GPIO 14
LCD MISO -> ESP GPIO 12
LCD MOSI -> ESP GPIO 13
LCD D/C  -> ESP GPIO 5
LCD CS   -> ESP GPIO 15

ESP EN      -> 10 k resistor -> ESP Vcc
ESP GPIO 15 -> 10 k resistor -> ESP GND
ESP RST     -> reset button  -> ESP GND

Step 7: Squeeze All in Sweet Box

Picture of Squeeze All in Sweet Box

Step 8: Attach the Key Ring

Picture of Attach the Key Ring

Step 9: Happy Scanning!

Picture of Happy Scanning!

It's time to show off your work with friends!

Step 10: Stress Test

Picture of Stress Test

A baby very interesting in this object, so I have invited her help to make a stress test.

She will randomly perform:

  1. squeeze the box and turn on the scanning routine
  2. shake test
  3. drop test
  4. step test
  5. water resistant test

After few weeks test, I have summary the test result:

  1. A 500 mAh battery can operate over 3 weeks
  2. My soldering work can resist baby shaking and dropping shock
  3. The Tic Tac box can resist 70 cm height drop and 10 kg step on load
  4. The box also can resist a small amount of water

I will update the actual battery life later on ;>

Comments

nickemery (author)2017-08-13

great project, however, what did you compile the code with. I am using Arduino IDE and I get an error stray '#'

陳亮 (author)nickemery2017-10-07

I have just checked and complied with the latest Arduino 1.8.5 with Generic ESP8266 module config. No error, all goes well.

nickemery (author)陳亮2017-10-07

thanks, I did get it working. Really useful recently during an overseas trip to find hotel wifi signal

punkinlauncher (author)2017-08-03

could this project be adapted to work on 5.8 Ghz, for use with drone's fpv camera?

陳亮 (author)punkinlauncher2017-10-07

Sorry, I think ESP8266 only can work within 2.4 GHz signal range.

陳亮 (author)2017-09-13

Some updates about the batteries: I have fully charged the Lipo at 26 Jul and use it few times a day. At 8 Sept night, the LCD cannot display normally.

synapslap (author)2017-09-01

Extremely impressive my friend

nancyjohns (author)2017-08-15

Very nice device; I like the concept and design. I would like to try making one someday for myself. I have a suggestion: you could try using hot glue(or epoxy if you don't mind it being difficult to remove the electronics) to seal the case more thoroughly. This would make it a little more sturdy and water resistant.

cliffyd (author)2017-08-15

Very cool. One thing i would recommend is covering the electronic components at the back. Just clean it up a bit, otherwise very cool!

JoseC134 (author)2017-08-13

Great.

BillyGal (author)2017-08-04

Great post. I will try it some day.

I had always problems with my modem connection. But now I can connect to other networks. As it turned out, there are many free connections in my area. I usually use wifi scanner Netpot, found on https://www.netspotapp.com/wireless-network-wifi-scanner.html and connect to the most reliable. PS really powerful and completely free tool

MatthewP77 (author)2017-08-01

Very neat.... Authough, most people already carry a smartphone that (given the right app) can do the same thing with improved functinaltiy. Dont get me wrong! This is a fantastic little device. Great work!

warhawk8080 (author)2017-07-31

Schematic of the power supply?
Also would a board like this work?

https://oshpark.com/shared_projects/pn7Gehzs

陳亮 (author)warhawk80802017-08-01

Added schematic made by Fritzing, hope it can help you.

kirkamr (author)陳亮2017-08-01

Thanks! This is great!

cshedd (author)2017-08-01

just to let everyone know on the 2.4ghz there are only 4 channels(1,6,11,14) that will not overlap and are the ones that we use when deploying wireless in our business if everyone followed this rule wifi would work a lot better for them. this is a great project for the do it yourself people. thank you for this

chingada (author)2017-07-30

like a lot your project, if possible more details at LCD part thnks in advance

陳亮 (author)chingada2017-08-01

you may find more details for this LCD in my previous instructables:

https://www.instructables.com/id/Connect-LCD-to-Raspberry-Pi-Without-Breakout-Board/

JosephR107 (author)2017-07-30

I would also very much appreciate if you could add a schematic of the design as I am used to soldering and building from the schematic, great project thought.

陳亮 (author)JosephR1072017-08-01

added schematic, hope it can help you.

陳亮 (author)JosephR1072017-07-30

I am drawing it...

kirkamr (author)2017-07-30

This is an interesting project and I would very much like to build one. I'm used to seeing circuit schematics, and I'm trying to picture the overall schematic from your connection summary. There are some things that are not clear, such as how circuit board with the transistors comes into play. From your description I think you are using them to control power to the LCD. Could you add additional fritz diagrams to cover the whole thing? Again, this looks like a great project! Great work!

陳亮 (author)kirkamr2017-08-01

Added fritz diagrams, hope it can help you.

陳亮 (author)kirkamr2017-07-30

I will try to make it...

DanielC795 (author)2017-07-31

I feel dumb asking but I'm not crazy good with tech like this. what is the point of making this. I know it's useful for a bunch of stuff but I don't understand the stuff people said it can do. I'm, not a person who knows a lot about anything relating it so if you guys could put it in "simple" terms.

陳亮 (author)DanielC7952017-08-01

It can help you locate the problems if you get stuck when using WiFi.

dsegel (author)2017-07-30

Excellent project. I'd suggest trying a
Wemos D1 Mini instead of the ESP12 - it has the Lipo charging circuit
built in, can provide 3.3V output, can be programmed directly through
USB, and costs less than $3 from aliexpress (or about $10 from amazon).

I'll be trying this later today.

ulrikk (author)dsegel2017-07-30

Interesting with Wemos D1 mini, how is the lipo charging circuit built in, I haven't found that?

dsegel (author)ulrikk2017-07-31

Ummm...yeah, I forgot that I have a lipo battery shield I usually use. Maybe an Adafruit Feather Huzzah? They definitely have the charging circuit built-in.

陳亮 (author)dsegel2017-07-30

I have tried WeMos LiPo setting in my previous project, it draws too much current and make deep sleep not working.

would it be code compatible?

KarenW50 (author)2017-07-31

very cool. I wish I could solder well enough to make one.

mosvath (author)2017-07-30

it's a nice works and probably cheaper than dstike boards on AliExpress

https://www.aliexpress.com/wholesale?catId=0&initi...

Pixelpusher220 (author)2017-07-30

For 2.4 band use ONLY channels 1, 6, 11. The width of the frequency covers 2 on each side. 6 actually covers 4-8. Using channel 9 is interfered with by both 6 and 11.

sue.donim.144 (author)2017-07-30

how much would it cost to have one made to buy ?

Jonathanrjpereira (author)2017-07-30

Cool project. Although you could download a Wifi Analyzer App

陳亮 (author)Jonathanrjpereira2017-07-30

only Android have one and it have no update long times ago.

gadgeteer123 (author)2017-07-30

Since I usually have my cell phone with me, I have a free app called WiFi Analyzer installed. It has so much more information on its multiple screens.

But I did enjoy this instructable for its sourcing of materials and cleverness. I have to carry so many "tools" everday, I really don't need one more thing to recharge. Thanks

MikeM144 (author)2017-07-30

This looks awesome, I install CCTV and alarms some of which use wifi most of which use Ethernet so I have been toying with the idea of having a go at something like this myself but which would also identify the current subnet, gateway and items on the network, test internet connectivity and speed and which could also act as a wifi hotspot for setting up wifi cameras without needing cables

So this could be a solid basis for me to work from if I ever manage to learn enough about these microcontroller doodads to have a go at it.

Cheers for posting it :)

jbrown2 (author)2017-07-30

Cool me LIKES nice work

Jacinto52 (author)2017-07-30

good work !

redrooster (author)2017-07-30

That's $15.80 Australian, not bad when you get it postage free as well.

cela1972 (author)2017-07-30

I like it, good job!!!!

dintid (author)2017-07-30

Very nice!

QuickFix (author)2017-07-30

Wow, what a great wanna have gadget!

JohnN3 (author)2017-07-30

Very clever. The 8266 is one of my favorite modules! Your's is another great use!

duetter_haniel (author)2017-07-30

this is so fkn nerdy, i need this in my life.

RobW136 (author)2017-07-30

OMG so cool

Eric Brouwer (author)2017-07-29

Great miniature tool. Thanks for sharing this. This might be one of my next weekend projects.

Arandall86 (author)2017-07-27

Very cool instructable. How much did it cost for your complete build?