Go to file
Carl Laufer 0ce484bb0b all param lists to dicts like in doa sw 2022-04-10 11:20:05 +01:00
_UI/_web_interface all param lists to dicts like in doa sw 2022-04-10 11:20:05 +01:00
_receiver add individual gain settings for 2ch PR 2022-01-03 04:39:37 +00:00
_signal_processing fixes 2022-04-10 07:28:07 +01:00
util add startup delay 2022-01-04 10:51:35 +00:00
.gitignore Initial commit 2021-12-23 14:48:59 +13:00
LICENSE Initial commit 2021-12-23 14:48:59 +13:00
README.md update readme 2022-01-05 12:08:34 +00:00
gui_run.sh update echo in gui_run.sh 2022-01-05 12:10:35 +00:00
kill.sh Update kill.sh 2021-12-29 22:34:05 +13:00
settings.json all param lists to dicts like in doa sw 2022-04-10 11:20:05 +01:00


Kraken SDR Passive Radar

NOTE still under development.


  1. Install the prerequisites
sudo apt update
sudo apt install libfftw3-3
sudo apt install libfftw3-dev
  1. Install Heimdall DAQ

If not done already, first, follow the instructions at https://github.com/krakenrf/heimdall_daq_fw/tree/development to install the Heimdall DAQ Firmware.

  1. Set up Miniconda environment

You will have created a Miniconda environment during the Heimdall DAQ install phase.

Please run the installs in this order as we need to ensure a specific version of dash is installed.

conda activate kraken

conda install pip
conda install quart
conda install pandas
conda install orjson
conda install matplotlib

pip3 install dash_bootstrap_components
pip3 install quart_compress
pip3 install dash_devices
pip3 install pyapril
pip3 install cython
pip3 install pyfftw

conda install dash==1.20.0
  1. Install the krakensdr_pr software
cd ~/krakensdr
git clone https://github.com/krakenrf/krakensdr_pr
cd krakensdr_pr
git checkout development

Copy the the krakensdr_doa/util/kraken_doa_start.sh and the krakensdr_doa/util/kraken_doa_stop.sh scripts into the krakensdr root folder of the project.

cd ~/krakensdr
cp krakensdr_pr/util/kraken_pr_start.sh .
cp krakensdr_pr/util/kraken_pr_stop.sh .



Please be patient on the first run, at it can take 1-2 minutes for the JIT numba compiler to compile the numba optimized functions, and during this compilation time it may appear that the software has gotten stuck. On subsqeuent runs this loading time will be much faster as it will read from cache.

Make sure to set an appropriate passive radar config ini for the Heimdall DAQ. (MORE INFO TO BE ADDED SOON, but basically, set decimation and FIR filtering to 1, set the sample rate to the max of 2.56 MHz, set the nubmer of RX channels to 2, DAQ buffer size 262144, CPI size to 524288 or larger (must be a power of 2). Then use channel 1 to connect your reference antenna, and channel 2 for your surveillance antenna.)

Remote operation


  1. Start the DAQ Subsystem either remotely. (Make sure that the daq_chain_config.ini contains the proper configuration) (See:https://github.com/krakenrf/heimdall_daq_fw/Documentation)
  2. Set the IP address of the DAQ Subsystem in the settings.json, default_ip field.
  3. Start the DoA DSP software by typing: ./gui_run.sh
  4. To stop the server and the DSP processing chain run the following script: ./kill.sh

After starting the script a web based server opens at port number 8088, which then can be accessed by typing "KRAKEN_IP:8080/" in the address bar of any web browser. You can find the IP address of the KrakenSDR Pi4 wither via your routers WiFi management page, or by typing "ip addr" into the terminal. You can also use the hostname of the Pi4 in place of the IP address, but this only works on local networks, and not the internet, or mobile hotspot networks.