User guide

git clone https://jenda.hrach.eu/p/kukuruku

We test the client on Debian 9 and the server on Debian 8, Debian 9 and Ubuntu 14.04. Howeverer, it should run on any distribution and probably on other UNIX systems too.

Server

Requirements:

cd server
make
./init.sh rtl=0 2048000 10 127.0.0.1 # osmosdr args, samplerate, ppm, listen address

There is no security in the protocol. Use ipsec, ssh tunneling, openvpn, etc.

Client

Requirements:

  • python-gtk2
  • GnuRadio
  • protobuf-compiler
  • python-protobuf
  • python-pygame

grcc was broken in 3.7.10, and was fixed recently.

Build it and install it:

cp -a .kukuruku ~
# edit path to modes directory in ~/.kukuruku/modes
cd client
make
./kukuruku-gui.py your-server:4444

FM demodulator is builtin, for other modes, you will need to install additional packages:

Tetra

You need “tetra-rx” in your $PATH. Install tetra-listener.

It dumps traffic data to /tmp/tetra-dumpdir. You can decode the channel with

codec/c-code/cdecoder traffic_666_1.out cdata

and then create a .cdata.bz2 with

cat cdata | gr-pack | bzip2 > cdata.bz2

You can play the resulting file with cdp.

Tetrapol

You need “tetrapol_dump” in your $PATH. Install TETRAPOL-KIT.

RS92-SGPL Weather sonde

You need “rs92ecc” in your $PATH. Install https://github.com/rs1729/RS.

Additionally, you need a fresh GPS almanac in /tmp/alma.bin to decode satellite data. You can download it here. The site denies usage of wget; use empty or Firefox user-agent to get around it.

Usage

  • Right click on frequency to pick a demodulator.
    • Ctrl+right click to demodulate from history buffer
  • Left click on a running demodulator to fine-tune, drag and drop to retune.
  • Scroll on a running demodulator to change filter to narrower/wider.
  • Press the “Scale waterfall” button to adjust the dynamic range.

libclient

You can easily roll out your own client!

import libclient
 
cl = libclient.client()
cl.connect("machine.example.com", 4444)
cl.set_auto_enable_xlater(True)
cl.create_xlater(frequency, decimation, my_filter, my_demodulator, -1)

See the example in cli.py.

 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 4.0 International
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki