from_gnuradio_to_cortxlab
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
from_gnuradio_to_cortxlab [2016/12/12 17:20] – [Submit the task] onicolas | from_gnuradio_to_cortxlab [2017/11/15 16:19] – [Create the scenario] onicolas | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | # From GNU Radio to CorteXlab | + | # From A to Z: GNU Radio with CorteXlab |
- | In the [[GNU Radio Benchmark example|first tutorial]] we introduced the way to construct a CorteXlab " | + | In the [[GNU Radio Benchmark example|first tutorial]] we introduced the way to construct a CorteXlab " |
- | This tutorial goes one step deeper, | + | This tutorial goes one step deeper, through the process of running |
- | For practical purposes, we will use one GNU Radio example instead of starting from a clean sheet, but the procedure is exactly | + | For practical purposes, we will use a readily available |
##Setup | ##Setup | ||
Line 11: | Line 11: | ||
The purpose of this tutorial is to execute an OFDM transmission between two USRP nodes. One node will be the transmitter and the other one will be the receiver. Instead of starting from an empty project, we are going to use the GNU Radio examples for an OFDM transmitter and receiver. | The purpose of this tutorial is to execute an OFDM transmission between two USRP nodes. One node will be the transmitter and the other one will be the receiver. Instead of starting from an empty project, we are going to use the GNU Radio examples for an OFDM transmitter and receiver. | ||
- | Le us start by copying the files '' | + | Let us start by copying the files '' |
- | As you can guess '' | + | As you can guess '' |
The file tree should look like that: | The file tree should look like that: | ||
Line 38: | Line 38: | ||
The next thing to do is to replace the transmission and decoding parts to put an '' | The next thing to do is to replace the transmission and decoding parts to put an '' | ||
- | The last thing to do is to configure USRP parameters. Open the '' | + | The last thing to do is to configure USRP parameters. Open the '' |
In the end your graph should look like this : | In the end your graph should look like this : | ||
Line 54: | Line 54: | ||
The next thing to do is to replace encoding and transmission parts to put an '' | The next thing to do is to replace encoding and transmission parts to put an '' | ||
- | The last thing to do is to configure USRP parameters. Open the '' | + | The last thing to do is to configure USRP parameters. Open the '' |
In the end your graph should look like this : | In the end your graph should look like this : | ||
Line 68: | Line 68: | ||
## Create the scenario | ## Create the scenario | ||
- | The experiment description file called `scenario.desc` will be looked for and read by the experiment scheduler to get which nodes and what software will be used during the experiment. It also gives the necessary startup scripts and parameters that the user provides for his experiment. | + | The experiment description file called `scenario.yaml` will be looked for and read by the experiment scheduler to get which nodes and what software will be used during the experiment. It also gives the necessary startup scripts and parameters that the user provides for his experiment. |
- | Here is a simple example of a `scenario.desc` file: | + | Here is a simple example of a `scenario.yaml` file: |
< | < | ||
# Example scenario description file | # Example scenario description file | ||
Line 79: | Line 79: | ||
# Scenario textual description | # Scenario textual description | ||
# | # | ||
- | desc OFDM tx-rx example scenario for CorteXlab | + | description: |
# Experiment maximum duration | # Experiment maximum duration | ||
# Time after which the experiment is forced to stop | # Time after which the experiment is forced to stop | ||
- | # | + | # |
- | durat 2 | + | duration: 60 |
# Node list | # Node list | ||
Line 90: | Line 90: | ||
# | # | ||
# | # | ||
- | # | + | # nodes: |
- | # entry (entry point script relative to the task root) | + | # (machine): |
- | # exit (exit point script relative to the task root. Use " | + | # command: |
- | node4: | + | nodes: |
- | entry rx_ofdm.py | + | |
- | params dummy-but-needed | + | |
- | + | | |
- | node6: | + | node6: |
- | entry tx_ofdm.py | + | |
- | | + | |
</ | </ | ||
- | This file uses its own syntax and is self-documented. Here the params line is mandatory even if it is not used (This will be changed in a future version). Adapt this example to suit your needs. | + | This file uses the yaml syntax and is self-documented. Adapt this example to suit your needs. |
Line 114: | Line 113: | ||
│ ├── tx_ofdm.py | │ ├── tx_ofdm.py | ||
│ ├── rx_ofdm.py | │ ├── rx_ofdm.py | ||
- | │ ├── scenario.desc | + | │ ├── scenario.yaml |
│ ├── tx_ofdm.grc | │ ├── tx_ofdm.grc | ||
│ └── rx_ofdm.grc | │ └── rx_ofdm.grc | ||
Line 177: | Line 176: | ||
< | < | ||
you@srvairlock: | you@srvairlock: | ||
- | Testbed status: | + | num total tasks: 2540 |
- | ID count so far: 6 | + | num tasks waiting: 0 |
- | Number of awaiting jobs: 0 | + | num tasks running: 0 |
- | ID of the running | + | tasks currently |
+ | | ||
</ | </ | ||
Line 186: | Line 186: | ||
- | Once it's finished (we have set the duration to 2 minutes), Minus will take care of copying the results and output messages back to your home folder in srvairlock, | + | Once it's finished (we have set the duration to 2 minutes), Minus will take care of copying the results and output messages back to your home folder in srvairlock, |
All results are stored by task number in the results folder, inside your home folder. | All results are stored by task number in the results folder, inside your home folder. | ||
Line 208: | Line 208: | ||
you@srvairlock: | you@srvairlock: | ||
you@srvairlock: | you@srvairlock: | ||
- | rx_ofdm.grc | + | rx_ofdm.grc |
rx_ofdm.py | rx_ofdm.py | ||
</ | </ | ||
Line 214: | Line 214: | ||
We see that all of the files we used to create the task are inside. The other two are: | We see that all of the files we used to create the task are inside. The other two are: | ||
- | * '' | + | * '' |
* '' | * '' | ||
from_gnuradio_to_cortxlab.txt · Last modified: 2018/01/29 14:31 by mimbert