18 | | 1. USRP N210 with node11-10 in the ORBIT main grid |
19 | | 2. [http://www.xdimax.com/sub20/sub20.html SUB-20] is a multi-interface USB adapter for providing popular interfaces between PC (USB host) and different hardware devices. Specifically, we use the SUB-20 SPI module to control and configure the Gen-1 RF canceller (see Fig. 1(a)). The user manual can be found [http://www.xdimax.com/sub20/doc/sub20-man.pdf here]. |
20 | | 3. [https://github.com/EttusResearch/uhd, UHD] is already installed with the imaged SDR node. |
21 | | 4. The {{{Eigen C++}}} Library is used for basic algebra used in channel estimation and digital self-interference cancellation. The Eigen releases can be found on the [http://eigen.tuxfamily.org/index.php?title=Main_Page this website]. We used the latest stable release Eigen 3.3.4 through our testings and experiments. |
| 18 | 1. The Columbia FlexICoN Gen-1 RF Canceller, which is a frequency-flat amplitude- and phase-based RF canceller implemented using discrete components on a PCB. The Gen-1 RF canceller is optimized to have a center operating frequency at 900MHz. |
| 19 | 2. USRP N210 with node11-10 in the ORBIT main grid. |
| 20 | 3. [http://www.xdimax.com/sub20/sub20.html SUB-20] is a multi-interface USB adapter for providing popular interfaces between PC (USB host) and different hardware devices. Specifically, we use the SUB-20 SPI module to control and configure the Gen-1 RF canceller (see Fig. 1(a)). The user manual can be found [http://www.xdimax.com/sub20/doc/sub20-man.pdf here]. |
| 21 | 4. [https://github.com/EttusResearch/uhd, UHD] is already installed with the imaged SDR node. |
| 22 | 5. The {{{Eigen C++}}} Library is used for basic algebra used in channel estimation and digital self-interference cancellation. The Eigen releases can be found on the [http://eigen.tuxfamily.org/index.php?title=Main_Page this website]. We used the latest stable release Eigen 3.3.4 through our testings and experiments. |
| 69 | ==== A Secondary Transmitter Using Node13-8 ==== |
| 70 | Once the full-duplex node11-10 is up and running, you can turn on another SDR to transmit to the full-duplex node. Below, we use {{{node13-8}}} as an example in the 3rd terminal window (Terminal 3). |
| 71 | * Load image, power on, and login into node13-8: |
| 72 | {{{ |
| 73 | omf tell -a offh -t node13-8 |
| 74 | omf load -i baseline-sdr.ndz -t node13-8 |
| 75 | omf tell -a on -t node13-8 |
| 76 | ssh root@node13-8 |
| 77 | }}} |
| 78 | * Configure the USRP Ethernet interface: {{{ifconfig eth2 192.168.10.1 netmask 255.255.255.0 up}}} |
| 79 | * Set up a secondary transmitter sending a sine wave at a different frequency (e.g., 200kHz) than that of the full-duplex node: |
| 80 | {{{ |
| 81 | ./tx_waveforms --args="serial=F331D4" --rate 1e6 --freq 900e6 gain 10 --wave-type SINE --wave-freq 200e3 |
| 82 | }}} |
| 83 | Now |