Back to list

Datasets of Captured Raw UAV Transmissions Containing Custom RF Fingerprints for Enhanced UAV Identification Using Deep Learning


Download Datasets:
Please use below links to download the datasets:
Captured IQ symbols of over-the-air UAV transmissions with 4 unique configurations of IQ imbalances, in varied channel conditions
These datasets were used for the paper "AirID: Injecting a Custom RF Fingerprint for enhanced UAV Identification using Deep Learning", IEEE GLOBECOM 2020. Any use of this dataset which results in an academic publication or other publication which includes a bibliography should include a citation to our paper. Here is the reference for the work:

Conference version: PDF
S. Mohanti, N. Soltani, K. Sankhe, D. Jaisinghani, M. D. Felice, and K. R. Chowdhury, "AirID: Injecting a Custom RF Fingerprint for enhanced UAV Identification using Deep Learning,” IEEE GLOBECOM 2020, Taipei, Taiwan, Dec. 2020.


Description:
AirID is implemented using Ettus B200 mini software-defined radios (SDRs) as receivers that serve as both static ground UAV identifiers and as mounted mobile on DJI Matrice M100 UAVs to perform the identification collaboratively as an aerial swarm.AirID tackles the well-known problem of low RF fingerprinting accuracy in ‘train on one day test on another day’ conditions as the aerial environment is continuously changing. Results reveal 98% identification accuracy for authorized UAVs, while maintaining a stable communication BER of 10^(-4) for the evaluated cases. To assess the performance of AirID's deep-learning model, we have created a standard dataset containing the captured raw IQ samples from the UAV transmissions, with each UAV using a unique IQ imbalance for identification purposes. This dataset can be used by fellow researchers to reproduce the original work or further explore other machine learning problems in wireless communication.

Snow

Fig. 1: System architecture for AirID: UAVs transmitting data with impaired I/Q signatures facilitate identification by ground and UAV units, assisted by a neural network enabled centralized controller.

Forest

Fig. 2: DJI Matrice M100 drone,with B200mini SDR and NVIDIA Jetson TX2 module installed.

Forest

Fig. 3: Default QPSK constellation with no added impairment (grey). The impaired QPSK constellation (black) after injecting a unique 4dB amplitude impairment to the original I/Q symbols.


Experimental Setup
We use 2 UAV transmitters (Tx) and 5 UAV receivers (Rx) in an outdoor netted area, shown in Fig. 5. Each receiver UAV is placed randomly in one of the virtual grid squares around the transmitter UAVs, as shown in Fig. 4. UAV Tx1 and Tx2 are selected to transmit data with predefined amplitude impairments of 4 dB and 2 dB, respectively, thus emulating two unique injected fingerprints for IDs. The receiver UAVs, Rx 1, 2 and 5 are close to Tx1 (distance of 7ft, 8ft and 6ft respectively), Rx 3 and 4 are located close to Tx2 (distance of 5ft and 6ft) and Rx5 is subjected to external interference of -10dB from a directional ground transmission. Rx3 is forced to perform unstable hovering by switching off the GPS functionality when gathering data from Tx1. The GPS is turned back on when Rx3 is receiving data from Tx2, ensuring stable hovering.
Exp-Setup

Fig. 4: Bird's eye view of receiver UAV (Rx) swarm and transmitter UAV (Tx) locations, with link weight and distance metrics.

Environment

Fig. 5: Experimental environment: open area with much less reflections

Dataset Description:
This dataset contains recordings of raw IQ samples collected from over-the-air transmissions of 4 USRP B200mini radios, each installed as a transmitter on a DJI M100 UAV, with each radio transmitting with a unique IQ imbalance . In this dataset, each recording consists of two files: a metadata file and a dataset file. The dataset file is a binary file of digital samples, and the metadata file contains information that describes the dataset. Our metadata and data format is an extension of, and compatible with SigMF specifications.
    For example, the dataset file "WiFi_air_B200_3123BA0_5ft_radio0_stable" represents
    • WiFi : --> IEEE802.11a standard-compliant WLAN frame
    • air :--> medium of transmission
    • B200mini :--> the type of USRP radio
    • 3123BA0 : --> device serial ID
    • 5ft: --> the transmitter-receiver separation distance in feet
    • radio0 : --> the applied amplitude imbalance in the IQ symbols transmitted from this radio, with the ending number (0) implying the amplitude imbalance in dB. Here it is 0dB
    • stable/unstable/intfrnc : --> the UAV hovering characteristic -- stable hovering, unstable hovering and with interference (intfrnc)
    • .bin/.json : --> the extension of dataset file(.bin)/metadata file(.json)

    SigMF Description:

    Global Object

    The global object consists of name/value pairs that provide information applicable to the entire dataset. It contains the information that is minimally necessary to open and parse the dataset file, as well as general information about the recording itself. The following names are specified in the core namespace:

    name required type description
    datatype true string The format of the stored samples in the dataset file.
    sample_rate true double The sample rate of the signal in samples per second.
    version true string The version of the SigMF specification used to create the metadata file.
    record_date false string The date this experiment was performed and the dataset created .
    description false string A text description of the SigMF recording.

    Captures

    As per the SigMF specifications, the captures value is an array of capture segment objects that describe the parameters of the signal capture. It MUST be sorted by the value of each capture segment's core:sample_start key, ascending. The following names are specified in the core namespace:

    name required type description
    sample_start true uint The sample index in the dataset file at which this segment takes effect.
    center_frequency false double The center frequency of the signal in Hz.

    Annotations

    According to the SigMF specifications, the Annotations value is an array of annotation segment objects that describe anything regarding the signal data not part of the global and captures objects. Each SigMF annotation segment object must contain a core:sample_start name/value pair, which indicates the first index at which the rest of the segment's name/value pairs apply. We have extended the Annotations with genesys namespace

    name required type unit description
    sample_start false object N/A The sample index in the dataset file at which this segment takes effect.
    sample_count false object N/A Total number of received samples
    environment true double N/A A description of the environment where the experiment was carried out.
    distance false string feet Distance in feet, between transmitter and receiver
    protocol false string feet the wireless protocol used for this transmission. Here, we used IEEE802.11a standard-compliant WLAN frame

    Transmitter Object

    The Transmitter object contains the following name/value pairs:

    name required type unit description
    make_and_model true string N/A Make and model of the UAV. E.g., "DJI M100 UAV".
    radio false string N/A The type of software defined radio used as a transmitter module on the UAV. E.g., "Ettus B200mini"
    device_id_genesys_lab false float Hz The unique amplitude imbalance applied on the IQ symbol for this radio/UAV.It is given here as radio0/radio1/radio2/radio3/radio4/radio5. With the number representing the amplitude imbalances in dB for this radio. E.g., radio4 means this transmission was with an amplitude imbalance of 4dB to the IQ symbols.
    antenna_make false float Hz The manufacturer of the transmitter antenna
    antenna_model false float dB The model of the antenna used for transmission

    Receiver Object

    The Receiver object contains the following name/value pairs:

    name required type unit description
    radio true string N/A Make and model of the receiver radio. E.g., "Ettus B200mini".
    antenna_make false float Hz The manufacturer of the transmitter antenna
    antenna_model false float Hz The model of the antenna used for transmission.