Generate random transmissions emulating Primary Transmitters
This example shows the use of the transmitter bot/bots that can act as primary user/users transmitting in periodic or random fashion. This tutorial has been specifically tested with X310 nodes on the ORBIT grid. However, with some minor changes this can also be used with any other node on the grid or sandbox. Information on SDR availability on particular nodes can be found on Orbit by clicking on Status Page, then on grid, and then filtering the displayed nodes by SDR devices equipped.
- Make a reservation on Orbit to use the Grid.
- Make sure the node of interest is turned off:
email@example.com:~$ omf tell -a offh -t node21-1,node23-1,node23-2
- Load the SC2-OrbitBot.ndz image onto the node. Note that this process might take several minutes.
firstname.lastname@example.org:~$ omf load -i SC2-OrbitBot.ndz -t node21-1
- Turn on the node. After issuing the "on" command, wait a couple of minutes for the node to boot up.
email@example.com:~$ omf tell -a on -t node21-1
- Connect to the node using SSH (only to check the connectivity of host with USRPs)
firstname.lastname@example.org:~$ ssh -Y root@node21-1
make sure that the node can communicate with the USRP use the command uhd_find_devices and probe it for specs by uhd_usrp_probe similar to the example here. Use the appropriate input for the –-args argument. Once the connectivity to the USRPs is confirmed, log out from the node21-1.
Running the Experiment
Download the attached OEDL script in your console. Default setting in this script will turn on two periodic OFDM transmissions of 5MHz bandwidth with different period and duty cycle. The center frequency for these two transmissions are 5.04GHz and 5.05GHz. To start the experiment, run the following command.
email@example.com:~$ omf exec bot_ofdm.rb
You should see output like this
INFO NodeHandler: OMF Experiment Controller 5.4 (git 861d645) INFO NodeHandler: Slice ID: default_slice (default) INFO NodeHandler: Experiment ID: default_slice-2017-05-08t220.127.116.11-04.00 INFO NodeHandler: Message authentication is disabled INFO property.resetDelay: resetDelay = 200 (Fixnum) INFO property.resetTries: resetTries = 1 (Fixnum) INFO property.txnode: txnode = "node21-1.grid.orbit-lab.org" (String) INFO property.rate: rate = "5e6" (String) INFO property.t_on: t_on = "5" (String) INFO property.t_off: t_off = "7" (String) INFO property.runtime: runtime = 50 (Fixnum) INFO ALL_UP_AND_INSTALLED: Event triggered. Starting the associated tasks. INFO exp: Give machines some time to warm up :-) INFO exp: Request from Experiment Script: Wait for 2s.... INFO BRING_UP: Event triggered. Starting the associated tasks. INFO Experiment: Bringing up resources INFO exp: Starting the transmitter INFO exp: Runing for 50 seconds... INFO exp: Request from Experiment Script: Wait for 50s....