SenseORAN: O-RAN based Radar Detection in the CBRS Band

Open RAN (O-RAN) has the potential for revolutionizing not only cellular communication but also spectrum sensing by carefully controlling uplink/downlink traffic in shared spectrum bands. In this paper, we present the design of SenseORAN, which detects the presence of radar pulses within the Citizens Broadband Radio Service (CBRS) band. SenseORAN is especially useful for scenarios where these pulses (highest priority) are fully overlapping with interfering LTE signals (secondary priority licensee), requiring immediate detection of such an occurrence. This design paradigm of re-using existing cellular infrastructure with ORAN-compliant sensing and communication slices can potentially eliminate the need for dedicated spectrum sensors along the coastline as well as severe restrictions on the transmit power for the LTE operators that are enforced today. Our approach involves a machine learning module deployed as a Radar Detection xApp at the near-Real-Time (near-RT) Radio Access Network (RAN) Intelligent Controller, i.e., near-RT RIC. The base station or gNB (i) uses the you-only-look-once (YOLO)-based machine learning framework that is modified to detect radar signals present within spectrograms generated from I/Q samples collected during the regular uplink cellular operation, and (ii) maintains a list of 'occupied' channels in the 3.5 GHz CBRS band that indicate radar presence. Our design is validated with (i) an over the air collected dataset composed of Type 1 radar and standard-compliant LTE waveforms, and (ii) an experimental testbed of SDRs running a complete Open RAN stack with a near-RT RIC implementation integrated with our YOLO-based xApp. We show radar detection accuracy of 100 under SINR conditions 12dB after combining 7 spectrograms into a single decision. Furthermore, using testbed results, we demonstrate that the gNB can be reconfigured to avoid radar interference within 866 ms, which represents a reduction of 85.5% over the 60 s response time mandated for pausing cellular operation in detecting radar presence in the CBRS band today.
SenseORAN description

Fig. 1: Today (left figure), ESC sensors s1 , s2 , s3 detect radar in the CBRS band, which may be subject to interference from cellular BSs b1 , b2 , b3 shown by red arrows. The data from ESC sensors is reported to the SAS. In the proposed architecture (right figure), the b1 , b2 , b3 are O-RAN compliant BSs, which use machine learning based xApps in the near-RT RICs to accurately detect radar and for optimal BS reconfiguration upon detected radars. This increases the sensing region and reduces deployment overhead by re-using existing cellular infrastructure.

SenseORAN framework

Fig. 2: The BS collects I/Q samples and generates a spectrogram image. Then, the spectrogram is sent to the near-RT RIC over the E2 interface and is used as an input to the radar detection xApp. Finally, the BS configuration is updated if an operating radar is detected.


Links to project files:
Please use the following link to download our YOLO-based machine learning framework that we modified to detect radar signals:


SenseORAN radar detection model


You can download the accepted paper in this link . Any use of material and model which result in an academic publication or other publication which includes a bibliography should include a citation to our article. Here is the reference for the work:

Accepted Article:
G. Reus-Muns, P. S. Upadhyaya , U. Demir, N. Stephenson, N. Soltani, V. K. Shah, and K. R. Chowdhury, "SenseORAN: O-RAN based Radar Detection in the CBRS Band,” IEEE Journal on Selected Areas in Communications (JSAC), August 2023.



RIS-STAR: RIS-based Spatio-Temporal Channel Hardening for Single-Antenna Receivers

Small form-factor single antenna devices, typically deployed within wireless sensor networks, lack many benefits of multi-antenna receivers like leveraging spatial diversity to enhance signal reception reliability. In this paper, we introduce the theory of achieving spatial diversity in such single-antenna systems by using reconfigurable intelligent surfaces (RIS). Our approach, called ‘RIS-STAR’, proposes a method of proactively perturbing the wireless propagation environment multiple times within the symbol time (that is less than the channel coherence time) through reconfiguring an RIS. By leveraging the stationarity of the channel, RIS-STAR ensures that the only source of perturbation is due to the chosen and controllable RIS configuration. We first formulate the problem to find the set of RIS configurations that maximizes channel hardening, which is a measure of link reliability. Our solution is independent of the transceiver’s relative location with respect to the RIS and does not require channel estimation, alleviating two key implementation concerns. We then evaluate the performance of RIS-STAR using a custom-simulator and an experimental testbed composed of PCB-fabricated RIS. Specifically, we demonstrate how a SISO link can be enhanced to perform similar to a SIMO link attaining an 84.6% channel hardening improvement in presence of strong multipath and non-line-of-sight conditions.
Snow

Fig. 1: Illustration of how RIS-STAR achieves channel hardening comparable to SIMO with a single-antenna receiver: (a) signal loss caused by destructive interference in a SISO link resulting from multipath, (b) signal recovery using spatial diversity from the multi-antenna receiver in SIMO, and (c) RIS-STAR enables the same diversity gain in SISO via perturbing the channel by changing RIS configurations at an intra-symbol level.

Forest

Fig. 2: Custom-built Reconfigurable Intelligent Surface. .


Links to project files:
Please use following links to access RIS fabrication design files, testbed schematics with Gnu-Radio code, and configuration-orchestrating software, and RIS-STAR Python simulator:


RIS-STAR Simulator
RIS-STAR implementation


These hardwares and programs were used for the paper "RIS-STAR: RIS-based Spatio-Temporal Channel Hardening for Single-Antenna Receivers". Please use this link to download the paper.
Any use of these hardwares and programs 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:
S. G. Sanchez, K. Alemdar, V. Chaudhary, K. Chowdhury, "RIS-STAR: RIS-based Spatio-Temporal Channel Hardening for Single-Antenna Receivers,” IEEE InfoCom 2023, New York, USA, 2023.



Noisy Quantum Communication Networks for Learning-based Route Selection

This simulator allows the simulation of a quantum network with a user-defined number of nodes placed randomly in a desired area. It establishes a link between any two nodes whose distance is smaller than a configurable value and ensures that the resultant network is a connected graph. Further, it assumes presence of an entangled pair generator (EPG) located midway on each link for the generation of entangled pair and distribution of one of its entangled qubit to the downstream and upstream nodes each. To share an entangled qubits pair between Tx and Rx end nodes on a path in the network (called end-to-end entanglement distribution), it simulates entanglement swapping at the intermediate node. Further, it simulates the decoherence of qubits due to noises in quantum memories, fibers, imperfect measurement and gate operations at all the nodes at any time during the end-to-end entanglement distribution between a Tx-Rx. It has supporting callable functions for connecting the network environment required for interaction with the learning agent. It implements the effect of these noises on qubits’ states at every instance, rather than giving their average behavior, which is a major requirement for an algorithm that intends to learn the network behavior on trial and error basis.

It provides code for Upper Confidence Bound-Multi Armed Bandit (UCB-MAB) algorithm, wherein the agent interacts with the quantum network to find the least noisy path from a transmitter to a receiver in the network. For details, please refer the publication.

This simulator is designed in MATLAB using QLib, which is a MATLAB package for quantum information theory calculations.

Please feel free to use this codebase in your research and development works.

Publication for citation: PDF
V. Chaudhary, K. Li, and K. Chowdhury, "Learning-based Route Selection in Noisy Quantum Communication Networks", IEEE International Conference on Communications, 28 May-01 June 2023, Rome, Italy.

Source code:
The simulator source code is available at this link and documentation can be found in readme.md file.


Inertial Navigation for Multi-Drone formation using DJI M100/M600 and Object Tracker for Drone Localization

The Inertial Navigation for Multi-Drone formation using DJI M100/M600 repo contains a ROS package that connects multiple DJI drones via a shared network to move them in the desired formation. The formation waypoints are hardcoded in terms of distance but are independent of geolocation. The ROS nodes can be used to launch DJI drones anywhere using the DJI ROS SDK to communicate with the onboard sensors.

The Object Tracker for Drone Localization is a C++ code that takes a recorded video file of a drone flying in an outdoor environment. It then returns the same feed with a bounding box drawn around the drone, showing where it is located within every frame at all times.

Please feel free to use this codebase in your research and development works.

Publication for citation:
S.Garcia Sanchez, R. Shukla, K. R. Chowdhury, "Camera-enabled Joint Robotic-Communication Paradigm for UAVs mounted with mmWave Radios", ACM MOBICOM WKSHPS: 4th International Workshop on Drone Assisted Wireless Communications for 5G and Beyond (DroneCom'21), 31 Jan-04 Feb 2022, New Orleans, LA, USA.

Source code:
The ROS Multi-Drone formation code is located here.
The Object Tracker source code is located here.


ARM extension of Ziria (Domain-specific SDR language)

This codebase adds support for ARM processors to Ziria, which is a domain-specific language for software-defined radios developed at Microsoft Research. Additionally, it adds support for FMCOMMS radio series by analog devices to be used in conjunction with Ziria SDR applications. This work enables us to run existing IEEE 802.11a/g PHY and LTE implementations of Ziria on ARM processors such as Zynq boards with Analog Devices FMCOMMS series radios, and rapidly develop new PHY layer for ARM-based embedded platform that are available in the market.

Please feel free to use this codebase in your research and development works.

Source code:
ARM extension code: link
The source code for IEEE 802.11a/g and LTE are located here , and installation instructions can be found at INSTALL.md.


IEEE 802.11b Extension for MATLAB-SDR

This codebase is a IEEE 802.11b Standard Compliant Link Layer (PHY and MAC layer) for MATLAB-based SDR. It is written in MATLAB and implements a DBPSK PHY layer and CSMA/CA/ACK MAC layer so that all operations remain functionally compliant with the IEEE 802.11b standard (1 Mbps specification).

Please feel free to use this codebase in your research and development works.

Publication for citation:
R. Subramanian, B. Drozdenko, E. Doyle, R. Ahmed, M. Leeser and K. R. Chowdhury, "High-Level System Design of IEEE 802.11b Standard-Compliant Link Layer for MATLAB-Based SDR," in IEEE Access, vol. 4, no. , pp. 1494-1509, 2016.

R. Subramanian, E. Doyle, B. Drozdenko, M. Leeser and K. R. Chowdhury, "State-Action Based Link Layer Design for IEEE 802.11b Compliant MATLAB-Based SDR," 2016 International Conference on Distributed Computing in Sensor Systems (DCOSS), Washington, DC, USA, 2016, pp. 193-198.

Source code:

The details for implementing the simulator, examples, information about source file downloads is available at this link and documentation can be found in readme.md file.


NS-3 Simulator Extension for Cognitive Radio

This extension is written to add cognitive radio (CR) capabilities to the Network Simulator-3. It will cover the installation process, the documentation of such an extension and provide examples to get you started. We call this extension module CRE-NS3.

This extension provides the basic blocks that are necessary to provide such functionality in Network Simulator 3 (ns-3). CRE-NS3 adhers to the ns-3 standards when it comes to documentations by using Doxygen.

Please feel free to use this simulator in your research and development works. We would appreciate a citation to the paper below when this module is helpful in obtaining results in your future publications:

Publication for citation:
A. Al-Ali and K. R. Chowdhury, “Simulating Dynamic Spectrum Access using ns-3 for Wireless Networks in Smart Environments,” IEEE SECON Workshop on Self-Organizing Wireless Access Networks for Smart City, Singapore, June 2014. PDF

Source code:

The details for implementing the simulator, examples, information about source file downloads is available at this link and documentation can be found here.

NS-2 Simulator Extension for Cognitive Radio

Cognitive Radio Ad-Hoc Network is a Network Simulator 2 (ns2) module created by Marco Di Felice to simulate Cognitive Radio networks. CRAHN is an add-on module to NS2 that simulate a Cognitive Radio network. The module allows nodes to sense for Primary User (PU) activity and pause the transmission when the PU claims the spectrum. The nodes are also able to change the transmission and receiving channels as they continually seek free spectrum to communicate on. More details on the implementation and motivation can be found in the publication below.

Publication for citation:
M. D. Felice, K. R. Chowdhury, W. Kim, A. Kassler, , and L. Bononi, "End-to-end Protocols for Cognitive Radio Ad Hoc Networks: An Evaluation Study," Performance Evaluation (Elsevier) Journal, vol. 68, no. 9, September 2011. PDF

Source code:

The source code is located at https://github.com/abdulla-alali/TFRC-CR/tree/CRAHN

To compile, you'll have to check out the git repository by typing the following in a terminal window:

git clone git://github.com/abdulla-alali/TFRC-CR.git -b CRAHN

This resulting directory will be a patched ns2.31 directory. You can directly use this directory by replacing the subdirectory in your all-in-one ns2 installation with it and by re "configure && make".

Android-based Wifi EggHunt for Outreach Activity

Wifi Egghunt is an Android application that notifies users when they are in proximity to predefined Wifi Access Points (APs) that are scattered across the Northeastern University campus. The application has a static list of predefined Medium Access Point (MAC) addresses of certain APs on campus. Each MAC address has a predefined signal strength threshold as well.

When users come within range of one of these APs, the app displays the APs nickname in blue color and shows the current signal strength next to it. The users will then have to move closer to the AP until they reach the predefined threshold. Once they are within the signal strength threshold, the app turns the AP color to green and a message is displayed to let the user know that they found the AP or the "egg".

The aim of this software is to help pre-college school students understand how APs and their signal strength works. By searching campus for these APs or "eggs", they are in turn learning that each AP has a unique address. By trying to get closer to the AP, they understand the signal strength and fading power relation to distance.

Source code:

The source code is located at https://github.com/abdulla-alali/WifiEggHunt

To compile, you'll have to checkout the git repository by typing the following in a terminal window:

git clone git://github.com/abdulla-alali/WifiEggHunt.git

And then import the resulting directory in your Android SDK.

Cognitive Radio Transport Layer Simulation for TFRC-CR

TCP Friendly Rate Control for Cognitive Radio (TFRC-CR) is a transport protocol geared towards Cognitive Radio networks. The transport protocol uses an equation based sending rate and uses the a centralized database to infer Primary User (PU) activity.

TFRC-CR is a modification to the existing transport protocol called TFRC. It is geared for Cognitive Radios: (1) it allows the transmission to be paused and resumed when PU activity is encountered, or if the intermediate nodes are switching spectra. (2) It uses the FCC mandated database to infer PU activity. (3) It modifies the equation of TFRC to boost the sending rate. More details can be found in the first publication below.

The source code in this page is an implementation of TFRC-CR over the Network Simulator 2. The ns2 simulator already has a CRAHN module built-in so the work here makes use of that to simulate the cognitive abilities of the TFRC-CR.

Publication for citation:
A. Al-Ali and K. R. Chowdhury, "An Equation-based Transport Protocol for Cognitive Radio Networks," Ad Hoc Networks (Elsevier) Journal, vol. 11, no. 6, pp. 1836–1847, August 2013. PDF

Source code:

The source code is located at https://github.com/abdulla-alali/TFRC-CR/tree/TFRC-CR

To compile, you'll have to check out the git repository by typing the following in a terminal window:

git clone git://github.com/abdulla-alali/TFRC-CR.git -b TFRC-CR

This resulting directory will be a patched ns2.31 directory. You can directly use this directory by replacing the subdirectory in your all-in-one ns2 installation with it and by re "configure && make".