Lab Software and Datasets

Software

The following is a list of applications developed through DWSL projects that are available for use. More information can be found about DWSL software through the official GitHub account.

Dragon Radio is a full-featured software-defined radio of our own design. This radio utilizes a TUN/TAP interface to allow for seamless integration with standard Linux network traffic test applications and routing protocols. The PHY layer of Dragon Radio is based on the open-source liquid-dsp communications signal processing framework, which provides well-tested modem functions for Fourier-based multi-carrier modulations, Orthogonal Frequency Division Multiplexing (OFDM), as well as single-carrier Quadrature Amplitude Modulation (QAM) and Gaussian Minimum Shift Keying (GMSK). It also includes an interface to an open-source Forward Error Correction (FEC) library. We selected liquid-dsp over GNU Radio as the basis of Dragon Radio because we required full control over scheduling, data flow, and transmission timing. The PHY, Media Access Control (MAC), and datalink layers of the radio are written in C++. This functionality is exposed to Python via pybind11, allowing control and spectrum sharing policies to be implemented in a high-level language. The combination of high-performance lower layers with high-level control allows testbed users with diverse research interests and backgrounds to immediately get up-and-running with the Radio on our testbed.

The radio makes extensive use of both parallelism and concurrency. For example, a bank of demodulator threads acts in parallel to demodulate multiple radio channels simultaneously, and C++ atomics are used to coordinate concurrent radio signal reception and demodulation. In the hybrid FDMA/Time Division Multiple Access (TDMA) MAC we have developed, parallelism enables frequency diversity, and concurrency decreases latency because demodulators do not need to wait for an entire TDMA slot’s worth of data to have been received before demodulation can begin.

We are successfully leveraging Dragon Radio for research and education at Drexel. The radio is being used in SDR-based research, and is also being used for both formal and informal coursework at Drexel. In addition, we are advising several undergraduate students participating in Drexel’s Vertically Integrated Projects (VIP) Program. Depending on their interests, small teams of VIP students are given research tasks that build upon Dragon Radio’s software as a platform for further discovery.

DragonRadio originated as Drexel’s entry into DARPA’s SC2 competition. It is a software-defined radio built from scratch—it is not based on GNURadio—and has the following notable features:

  • Runs on the Northeastern Colosseum. DragonRadio provides an easy path to getting started with the Colosseum, a large-scale wireless emulator.
  • Uses USRP hardware. DragonRadio has been tested on both the N210 and X310 platforms.
  • Pure software. All functionality is implemented in software and can run on stock USRP firmware.
  • Low-level functionality implemented in Modern C++. All low-level functionality is implemented in C++17 and makes extensive use of modern C++ features like std::shared_ptr.
  • Fast signal processing primitives. DragonRadio includes fast time- and frequency-domain filters, implemented with the help of xsimd.
  • OFDM PHY layer. Included PHY layers are based on liquid-dsp. However, the PHY interface is modular and not tied to liquid-dsp, so other PHY layers could easily be integrated.
  • FDMA, FDMA/TDMA, and ALOHA MACs. A sophisticated FDMA/TDMA MAC layer is provided that allows scheduling in both time and frequency. FDMA and ALOHA MACs are also included.
  • Embedded Python interpreter. DragonRadio embeds a Python interpreter, and all low-level functionality is exposed to Python via pybind11. The radio is configured from Python.

Please submit any issues on GitHub. This project is supported by NSF awards 1717088 and 1730140.

Team Dragon Radio

This software suite contains scripts to collect and store IoT sensor data, such as RFID tag information using an Impinj Speedway RFID reader. The collection framework interfaces with a heterogeneous suite of devices in real-time, and stores the data in a database or streaming service as defined by the driver configuration. A corresponding processing suite visualizes the real-time or archived data collected by the collection framework, enabling rapid experimentation and testing of machine learning algorithms on existing and new datasets. Sensor fusion, ground truth, and data perturbation modules allow for automated and controlled manipulation of the data sets and comparison to ground truth. It is modular and generalizable to a variety of sensor systems and processing needs.

IoT Sensor Framework
IoT Sensor Framework

Information about the architecture of this system can be found in Dr. Bill Mongan’s Ph.D. Dissertation and on this paper detailing the use of the framework on RFID-based sensor systems.

This effort was supported in part by the National Science Foundation, the National Institutes of Health, and the Commonwealth of Pennsylvania.

The packages for data collection and data processing, respectively, are hosted on GitHub at the following locations:

IoT Data Collection Framework IoT Data Processing Framework

We have made datasets public from simulated mannequins and emulated environments on GitHub.

Installation Videos

  • iot-software-framework

iot-software-framework

  • iot-processing-framework

iot-processing-framework

  • Running the Software

Running the Software

  • IoT Data Collection Framework bibtex
@misc{githubiotsensorframework,
    author       = {William M. Mongan and Ilhaan Rasheed and Enioluwa Segun and Henry Dang and Victor S. Cushman and Charlie R. Chiccarine and Kapil R. Dandekar and Adam K. Fontecchio},
    title        = {drexelwireless/iot-sensor-framework: Public Release 1.0},
    month        = may,
    year         = 2020,
    doi          = {10.5281/zenodo.3786932},
    version      = {v1.0},
    publisher    = {Zenodo},
    url          = {https://doi.org/10.5281/zenodo.3786932}
}
  • IoT Data Processing Framework bibtex
@misc{githubiotprocessingframework,
    author       = {William M. Mongan and Kapil R. Dandekar and Adam K. Fontecchio},
    title        = {drexelwireless/iot-processing-framework: Public Release 1.1},
    month        = may,
    year         = 2020,
    doi          = {10.5281/zenodo.3786930},
    version      = {v1.1},
    publisher    = {Zenodo},
    url          = {https://doi.org/10.5281/zenodo.3786930}
}

This code can be used to extract the sheet resistance of conductive films (e.g., conductive fabric, MXene, etc.).

The packages for data collection and data processing, respectively, are hosted on GitHub at the following location:

RF Sheet Resistance Tool

This code needs two-port microstrip transmission line S-parameters in the form of .s2p files (dB/angle degrees).

  1. filename: Name of the .s2p file from the network analyzer,
  2. CL: connector loss in dB (optional, default 0),
  3. dl: connector length (meters), from the point of calibration to the device under test (DUT)/transmission line top,
  4. ub, lb: upper and lower bound of optimization, doesn’t need to change,
  5. m: number of the frequency of interest in the freq vector. The sheet resistance value is calculated at this frequency,
  6. len: length of the transmission line / DUT in meters,
  7. w: width of top layer in meters,
  8. rad_eff: radiation efficiency (%) of the transmission line, typically less than 5% for electrically small transmission lines. Can be derived from simulation.

If you find this code useful and use it in your research, please cite the following paper:

@INPROCEEDINGS{9329989,
  author={Md Abu Saleh Tajin and Ariana S. Levitt and Yuqiao Liu and Chelsea E. Amanatides and Caroline L. Schauer and Genevieve Dion and Kapil R. Dandekar}, 
  booktitle={2020 IEEE International Symposium on Antennas and Propagation and North American Radio Science Meeting}, 
  title={Extraction of Knitted RFID Antenna Design Parameter from Transmission Line Measurements}, 
  year={2020},
  volume={},
  number={},
  pages={1551-1552},
  doi={10.1109/IEEECONF35879.2020.9329989}}

This effort was supported in part by the National Science Foundation and the National Institutes of Health.

Datasets

The following is a list of datasets and design files collected throughout DWSL projects that are available for use.

Dataset Link

Data files were used in support of the research paper titled ““Experimentation Framework for Wireless Communication Systems under Jamming Scenarios” which appeared in the IET Cyber-Physical Systems: Theory & Applications journal.

Paper Link

Cyber-physical systems (CPS) integrate control, sensing, and processing into interconnected physical components to support applications within transportation, energy, healthcare, environment, and various other areas. Secure and reliable wireless communication between devices is necessary to enable the widespread adoption of these emerging technologies. Cyber-physical systems devices must be protected against active threats, such as Radio Frequency (RF) Jammers, which intentionally disrupt communication links. Jamming detection and mitigation techniques must be evaluated extensively to validate algorithms prior to full implementation. Challenges related to obtaining zoning permits, Federal Aviation Administration (FAA) pilot certification for Unmanned Aerial Vehicles (UAVs), and Federal Communications Commission (FCC) licencing lead to evaluation limited to simulation-based or simplistic, non-representative hardware experimentation. A site-specific ray-tracing emulation framework is presented to provide a realistic evaluation of communication devices under RF jamming attacks in complex scenarios involving mobility, vehicular, and UAV systems. System architecture and capabilities are provided for the devices under test, real-world jamming adversaries, channel modelling, and channel emulation. Case studies are provided to demonstrate the use of the framework for different applications and jamming threats. The experimental results illustrate the benefit of the ray-tracing emulation system for conducting complex wireless communication studies under the presence of RF jamming.

Dataset Link

Data files were used in support of the research paper titled ““Mitigating RF Jamming Attacks at the Physical Layer with Machine Learning Dataset” which appeared in the IET Comunications journal.

Wireless communication devices must be protected from malicious threats, including active jamming attacks, due to the widespread use of wireless systems throughout our every-day lives. Jamming mitigation techniques are predominately evaluated through simulation or with hardware for very specific jamming conditions. In this paper, we introduce an experimental software defined radio (SDR)-based RF jamming mitigation platform which performs online jammer classification and leverages reconfigurable beam-steering antennas at the physical (PHY) layer. We present and validate a ray-tracing emulation system to enable hardware-in-the-loop jamming experiments of complex outdoor and mobile site-specific scenarios. Random Forests classifiers are trained based on over-the-air (OTA) collected data and integrated into the platform. The mitigation system is evaluated for both OTA and ray-tracing emulated environments. The experimental results highlight the benefit of using the jamming mitigation system in the presence of active jamming attacks.

Dataset Link

This radar RF waveform dataset was collected for a tutorial paper that was originally completed in January 2021. The data contained herein was used to demonstrate that the detection accuracy of a spectrogram-based Convolutional Neural Network (CNN) radar detector model is not negatively impacted by the RF hardware impairments experienced due to sending and receiving the data with USRP N210 software defined radios.

The dataset contains 900 examples of CBRS band radar activity and 900 examples of simulated random noise. The IQ data samples were sent/received at 10MSps and are each 80ms in duration. The 900 examples containing radar activity have a random SNR that varies between 10 and 20 dB in 2dB steps.

All 9 of the original (simulated) MATLAB workspaces were generated using the NIST Simulated Radar Waveform Generator that is available here.

A MATLAB script (included in a separate tar archive file in this dataset) is used to send, or transmit, each of the 9 original simulated waveform batches stored in each MATLAB workspace using a USRP radio at 1.5 MHz over a 2 meter long RF coaxial cable and a 30 dB RF attenuator. A separate receiving MATLAB script (included) is used to receive the entire sent dataset and store it in an “experimental” dataset on the receiving computer.

With these two versions of the radar waveform samples, it is possible to compare the accuracy of a radar detector for both the source and experimental datasets and determine whether the RF hardware impairments imparted by the USRP radio hardware degrades the detector’s binary classification accuracy. The following code repository repo contains a set of baseline deep learning radar waveform detection models that were evaluated and documented in our tutorial paper.

Dataset Link

Radio frequency (RF) HFSS design files for DWSL projects

This directory contains RF design files for the following projects:

  • MXene antennas and transmission lines
  • 5G antennas in the 28 and 60 GHz bands
  • Bellyband
  • Reconfigurable Alford loop antenna (RALA)
  • Leaky wave
  • 3.5GHz RALA

Dataset Link

  • Synthetic Datasets used for simulation, training, and testing
  • Uses SimBaby, MultiTag, and DYSE
  • These datasets are not subject to HIPAA, as they are not real (safe to disclose)