The last time Hackerfall tried to access this page, it returned a not found error. A cached version of the page is below, or clickhereto continue anyway

Freqwatch

Update v0.2

Introduction

Freqwatch

consists of two parts:

freqwatch.py

, which scans the RF spectrum with rtl_power and records what it finds in a database table

freqs

, and a modified rtl_fm that outputs to database table

intercepts

. The modified rtl_fm, like the regular rtl_fm, supports scanning multiple frequencies with squelch.

Combined, these two tools let you keep tabs on

and document

the airwaves. Here's the freqwatch.py configuration file. Notice it's configured to use three rtl-sdr sticks as scanners:

You can look at the output by connecting to the sql server:

Or by using something like Splunk. Splunk can be used to find trends in the data and let you know when something changes, for example. You could get a baseline for a general area, then move on to a target of interest's location and see what pops up that wasn't there before...

Freqwatch.py will run until you interrupt it, your database fills up, or something bad happens.

The modified rtl_fm works like the regular rtl_fm, except that it outputs to the database you specified in freqwatch.conf. All the cool features of rtl_fm are available to help you sort out the data you want.

Misc.

Extract data from the intercept database to a file, so you can process (e.g. listen to) it: select data from intercepts where freq=95955000 order by date, time into outfile "dbout" fields escaped by ''; This method has problems.

Instead, use the

intercept.py

program that comes with freqwatch to get data from the monitor table.

Here's how you might play it if it's WBFM audio:

cat file | play -t raw -r 32k -e signed-integer -b 16 -c 1 -V1 -

Bugs

Continue reading on covert.codes