Signal Locator

I made a Perl script to basically export a little more informative version of the graphs displayed in Netstumbler. You need the GD::Graph perl modules (which I’ll get to in a second).  This is advantageous if you have more time-variant input information.  For instance, if the antenna is located on a mobile module (motor, etc), where there is a known rate of movement, position information associated with signal spikes can be extrapolated from timing values.

Sample:
Sample Output 

Statistics for all MACs

Statistics for all MACs



Description:
There each graph shows bars, which are the strength of the signal at that point, and the line, which is a calculated 5 point averager. Basically, if the signal drops in and out, you can see the average signal strength across short periods of time. After the maximum size of defined data is filled, the script rotates to the next set of data and new graphs are created. The output from the second set of data would be wireless.2.html, then wireless.3.html, and so on. I taught myself Perl in my spare time, and I’ve had no formal teachings in the language, so I appologize for sloppy coding. If there’s something obviously nasty, let me know.

Example graph output for one MAC address

Example graph output for one MAC address



Setup:
Setup is fairly simple. First, you have to have Perl and the GD::Graph perl modules.  To install these via ActiveState ActivePerl, simply open up the Perl Package Manager, and try typing ‘install GDGraph’. If it fails, you’re probably missing a repository that carries the GD::Graph module.  To add the Apache repository (which, as of this writing, does have it), type ‘rep add apache http://www.apache.org/dist/perl/win32-bin/ppms/’ and then try ‘install GDGraph’. You can then close out the PPM by typing ‘exit’.  Open up graphs.txt and edit the width, height, and directory (where the files will be saved) variables.  Then you’re done.  Run the script in Netstumbler as you would any other Perl script.

 

To download the script, click here.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

*