USRP N2x0 and X3x0 installation notes (Gigabit Ethernet) » History » Version 9

ROQUE, Damien, 04/07/2015 03:41 PM

1 7 ROQUE, Damien
h1. USRP N2x0 and X3x0 installation notes (Gigabit Ethernet)
2 1 ROQUE, Damien
3 7 ROQUE, Damien
This documentation explains how to install an USRP device operated through Gigabit Ethernet interface (e.g. N200, N210, X300 and X310). In the following, we assume that a Debian based operating system has been successfully installed along with UHD and GNURadio (see for example [[Debian Wheezy 7 installation guidelines]] and [[UHD and GNURadio installation]]).
4 1 ROQUE, Damien
5 4 ROQUE, Damien
h2. Network interface configuration
6 4 ROQUE, Damien
7 4 ROQUE, Damien
Let us assume that a Gigabit Ethernet interface (denoted @eth1@) will be dedicated for the link between the computer and the USRP device. They will be both addressed statically on a @/24@ subnet:
8 4 ROQUE, Damien
* computer host: 192.168.10.1 ;
9 4 ROQUE, Damien
* USRP device: 192.168.10.2.
10 4 ROQUE, Damien
11 4 ROQUE, Damien
In order to obtain set this configuration, is it recommended to override the Network Manager program. The configuration is directly performed in @/etc/network/interfaces@ using the following instructions.
12 4 ROQUE, Damien
13 4 ROQUE, Damien
<pre>
14 4 ROQUE, Damien
auto eth1
15 4 ROQUE, Damien
iface eth1 inet static
16 1 ROQUE, Damien
        address 192.168.10.1
17 1 ROQUE, Damien
        netmask 255.255.255.0
18 4 ROQUE, Damien
</pre>
19 1 ROQUE, Damien
20 1 ROQUE, Damien
In order to improve transfers efficiency, it is also recommended to increase the maximum socket buffer size in @/etc/sysctl.conf@.
21 4 ROQUE, Damien
22 7 ROQUE, Damien
For N2x0 series:
23 1 ROQUE, Damien
<pre>
24 7 ROQUE, Damien
net.core.rmem_max=50000000
25 7 ROQUE, Damien
net.core.wmem_max=50000000
26 7 ROQUE, Damien
</pre>
27 7 ROQUE, Damien
28 7 ROQUE, Damien
For X3x0 series:
29 7 ROQUE, Damien
<pre>
30 4 ROQUE, Damien
net.core.rmem_max=33554432
31 4 ROQUE, Damien
net.core.wmem_max=33554432
32 4 ROQUE, Damien
</pre>
33 1 ROQUE, Damien
34 6 ROQUE, Damien
At this step the following services should be rebooted in order to configure both the network interface and the maximum socket buffer size.
35 6 ROQUE, Damien
<pre>
36 6 ROQUE, Damien
/etc/init.d/networking stop
37 6 ROQUE, Damien
/etc/init.d/networking start
38 6 ROQUE, Damien
sysctl -p /etc/sysctl.conf
39 6 ROQUE, Damien
</pre>
40 4 ROQUE, Damien
41 4 ROQUE, Damien
h2. Hardware detection and firmware update
42 4 ROQUE, Damien
43 4 ROQUE, Damien
44 4 ROQUE, Damien
Power/connect the USRP device and try to detect it.
45 4 ROQUE, Damien
<pre>
46 4 ROQUE, Damien
uhd_find_devices
47 4 ROQUE, Damien
</pre>
48 4 ROQUE, Damien
Then, inspect the hardware configuration of the transceiver.
49 4 ROQUE, Damien
<pre>
50 1 ROQUE, Damien
uhd_usrp_probe
51 4 ROQUE, Damien
</pre>
52 1 ROQUE, Damien
53 1 ROQUE, Damien
Optionnally, update the firmware of the USRP device.
54 7 ROQUE, Damien
55 7 ROQUE, Damien
For X3x0 series:
56 4 ROQUE, Damien
<pre>
57 1 ROQUE, Damien
/usr/local/lib/uhd/utils/usrp_x3xx_fpga_burner --addr=192.168.10.2
58 1 ROQUE, Damien
</pre>
59 1 ROQUE, Damien
60 7 ROQUE, Damien
For N2x0 series:
61 7 ROQUE, Damien
<pre>
62 7 ROQUE, Damien
/usr/local/lib/uhd/utils/usrp_n2xx_net_burner.py --addr=192.168.10.2
63 7 ROQUE, Damien
</pre>
64 2 ROQUE, Damien
65 4 ROQUE, Damien
h2. Performances assessment
66 1 ROQUE, Damien
67 4 ROQUE, Damien
You can perform a rate benchmarking.
68 4 ROQUE, Damien
<pre>
69 4 ROQUE, Damien
/usr/local/lib/uhd/examples/benchmark_rate --duration 20 --rx_rate <wanted-rate>     # Reception test
70 9 ROQUE, Damien
/usr/local/lib/uhd/examples/benchmark_rate --duration 20 --tx_rate <wanted-rate>     # Transmission test
71 4 ROQUE, Damien
</pre>
72 4 ROQUE, Damien
where @<wanted-rate>@ should be less than 50 MS/s for Gigabit Ethernet.
73 1 ROQUE, Damien
74 4 ROQUE, Damien
If @OOOOOO...@ or @UUUUUUU...@ appears on the standard output, it means that incoming samples (from the computer to the USRP) are dropped or outgoing samples (from the USRP to the computer) are not provided at expected rate. This defect can result from various causes: lack of CPU-time of the computer, overloaded interface... See "this page": for detailed explanation.