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".