Skip to content

pluto-adsb-sim generates ADSB signal IQ data stream, which is then transmitted by the software-defined radio (SDR) platform ADALM-Pluto.

License

Notifications You must be signed in to change notification settings

oscimp/pluto-adsb-sim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pluto-absb-sim

pluto-adsb-sim generates ADSB signal IQ data stream, which is then transmitted by the software-defined radio (SDR) platform ADALM-Pluto.

Project based on ADSB-Out

Three mode are available:

  • Tx stream from an ASCII file;
  • Tx stream from fake frame;
  • fake frame or ASCII file to binary file

Warning

Don't transmit over the air. Always use cable between emitter and receiver to avoid disturbing real airplanes communications!

compile

### dependencies This application require libiio, libad9361-iio and pkg-config

$ sudo apt install libiio-dev libad9361-dev libad9361-0 libiio0 pkg-config

### compile

$ make

usage

Usage: pluto-adsb-sim [options]
  -h                 This help
  -t <filename>      Transmit data from file
  -o <outfile>       Write to file instead of using PlutoSDR
  -a <attenuation>   Set TX attenuation [dB] (default -20.0)
  -b <bw>            Set RF bandwidth [MHz] (default 5.0)
  -f <freq>          Set RF center frequency [MHz] (default 868.0)
  -u <uri>           ADALM-Pluto URI
  -n <network>       ADALM-Pluto network IP or hostname (default pluto.local)
  -i <ICAO>
  -l <Latitude>
  -L <Longitude>
  -A <Altitude>
  -I <Aicraft identification>

To use -n or nothing, you need to have in /etc/hosts a line like:

192.168.2.1 pluto pluto.local

Transmit data from file

To use this mode a file must be provided with -t option

The file used is an ascii, hex format, one frame by line:

@XXXXXXXXXXXXYYYYYYYYYYYYYYYYYYYYYYYYYYYY;

Each line start with a @ and finish with a ; Where:

  • X is a 12 char hex date in ns
  • Y is the 14 char hex full frame (DF, ICAO, DATA, CRC)

example

./pluto-adsb-sim -f 868 -t maFile.dat

Fake signal generation

To use this mode, don't provide a data file (no -t option)

example

./pluto-adsb-sim -f 868 -i 0xABCDEF -I GGM_1980 -l 48.36 -L -4.77 -A 9999.0

binary file generation

If -o is used the PlutoSDR is not used. Instead the data stream is written in a binary, signed short IQ interleaved format

Verify with dump1090

$ dump1090 --freq 868000000

--freq parameter must be the same as -f

About

pluto-adsb-sim generates ADSB signal IQ data stream, which is then transmitted by the software-defined radio (SDR) platform ADALM-Pluto.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published