Skip to content
Roberto Calvo edited this page May 30, 2019 · 24 revisions

Introduction

Find the image in the following link (latest version is 1.3.3-1):

https://box.networks.imdea.org/index.php/s/VKMAiB2XuyUfvRr

  1. Decompress the image:
$ bzip2 -d /tmp/electrosense_balloon_1.3.3-1.img.bz2
  1. Copy the image into the SDcard
sudo dd if=electrosense_balloon_1.3.3-1.img of=/dev/mmcblk0 bs=4M status=progress

Credentials and static IP address already set:

  • user: pi
  • password: raspberry
  • IP: 192.168.28.99
  • ssh server enabled

Sensing Software

The sensing software software is located in /home/pi/es-sensor/es_sensor

IMPORTANT1: Use a power supply that provides minimum 2.0 amps. RPi could behave undesirably with less than that every time that the RTL-SDR is in operation.

IMPORTANT2: RPi/Raspbian initially needs internet connection or signal clock in order to set the internal time. In otherwise, all the traces will be saved with a wrong timestamp.

PSD Pipeline

This is an example for retrieving PSD data.

timeout 10s /home/pi/es-sensor/es_sensor 24000000 1766000000 -z PSD -s 2400000 -g 40 -u /tmp/psd.csv
  • In this mode we use 'timeout' tool to limit the scanning time of the process.
  • The first two parameters are the init_frequency and end_frequency.
  • -z: "PSD" pipeline enable
  • -s: sampling rate
  • -g: Gain
  • -u: filename where the PSD data is saved. The CSV format is as following:
seconds.microseconds, center_freq, [power values]

This mode generates roughly 2MBytes of data in the sdcard per second.

You can find a script example in /home/pi/scripts/PSD.sh that automatizes everything and save data in a file with a name depending on the date,time,frequency, etc (example: 23-08-18_06-42-42_24000000_1766000000_2400000.csv).

IQ Pipeline

This is an example for retrieving IQ data. IMPORTANT! retrieve 15 seconds of data at most. After that time, we start to lose samples due to SD card issues.

# LTE
/home/pi/es-sensor/es_sensor 806000000 806000000 -z IQ -s 1920000 -g 40 -t 10 -u /tmp/lte.raw

# Mode S downlink
/home/pi/es-sensor/es_sensor 1090000000 1090000000 -z IQ -s 2400000 -g 49 -t 10 -u /tmp/modes.raw
  • The first two parameters are the init_frequency and end_frequency. In the IQ mode only one channel is scanned per execution. Run the process as many times as channels you want to scan.
  • -z: "IQ" pipeline enable
  • -s: sampling rate
  • -g: Gain
  • -t: scanning time. After that time the process ends properly.
  • -u: filename where the IQ data is saved. Every sample is 32bit float size.

This mode generates roughly 7MBytes of data in the sdcard per second.

You can find a script example in /home/pi/scripts/IQ.sh that automatizes everything and save data in a file with a name depending on the date,time,frequency, etc (example: 23-08-18_06-42-42_806000000_806000000_1920000.csv).

Scripts

The following scripts are already included in the image. I also put them here for documentation purposes.

IQ.sh

#!/bin/bash

TIME_SCANNING=3	# seconds, maximum 15!!!
INIT_FREQ=806000000	# Hz
END_FREQ=806000000	# Hz
SAMPLING_RATE=1920000	
GAIN=40

PATH_DATA="/tmp/"
FILENAME=${PATH_DATA}`date +%d-%m-%y_%H-%M-%S`_${INIT_FREQ}_${END_FREQ}_${SAMPLING_RATE}.raw

/home/pi/es-sensor/es_sensor ${INIT_FREQ} ${END_FREQ} -z IQ -s ${SAMPLING_RATE} -g ${GAIN} -t ${TIME_SCANNING} -u ${FILENAME}

PSD.sh

#!/bin/bash

TIME_SCANNING=10	# seconds
INIT_FREQ=24000000	# Hz
END_FREQ=1766000000	# Hz
SAMPLING_RATE=2400000	
GAIN=40

PATH_DATA="/tmp/"
FILENAME=${PATH_DATA}`date +%d-%m-%y_%H-%M-%S`_${INIT_FREQ}_${END_FREQ}_${SAMPLING_RATE}.csv

timeout ${TIME_SCANNING}s /home/pi/es-sensor/es_sensor ${INIT_FREQ} ${END_FREQ} -z PSD -s ${SAMPLING_RATE} -g ${GAIN} -u ${FILENAME}
Clone this wiki locally