Hi,

I’m about to port an application that was working with a setup of two X300 
devices to a new N310 device.

For a first step the N310 should simply be used to stream four RF channels to a 
host. However before using it for streaming I wanted to perform some simple 
operations like getting the device tree through the uhd_usrp_probe command, 
which fails at the moment. I installed a current version of the SD card image a 
few days ago and my host is running an UHD version compiled from the tip of the 
UHD repo a few days ago. I suspect this is a network config error, however I’m 
not sure and sadly I’m no networking expert.

A brief overview of my setup:
A host PC, running Ubuntu equipped with a 2x10Gbit Ethernet card and two usual 
Gbit Ethernernet cards. One 1Gbit ethernet port is used for internet 
connection, the other one is connected to a Wifi Router, running a DHCP server 
in the address space 192.167.1.x. The N310 is connected to this router, the 
DHCP server assigns the address 192.167.1.100 to the N310. Pinging the device 
works as well as establishing an SSH connection to it. The two SFP ports are 
connected to the 10Gbit card of the host, on the host side those ports have the 
IP address 192.168.10.1 and 192.168.20.1. I loaded an XG FPGA image to use both 
SFP ports at 10Gbit speed and they respond to pings. To summarize, this is the 
current network config as reported by the system:

sdr@NTLabDSP:~$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group 
default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group 
default qlen 1000
    link/ether 00:0a:f7:81:d5:26 brd ff:ff:ff:ff:ff:ff
    inet 192.167.1.102/24 brd 192.167.1.255 scope global dynamic enp4s0
       valid_lft 4745sec preferred_lft 4745sec
    inet6 fe80::2ddf:29cd:ab15:aa68/64 scope link 
       valid_lft forever preferred_lft forever
3: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP 
group default qlen 1000
    link/ether 98:90:96:c6:92:3c brd ff:ff:ff:ff:ff:ff
    inet 10.211.21.102/23 brd 10.211.21.255 scope global dynamic eno1
       valid_lft 3812sec preferred_lft 3812sec
    inet6 2a02:c6a0:3071:53fc:f1:1e14:9cf0:3521/128 scope global dynamic 
       valid_lft 904sec preferred_lft 604sec
    inet6 fe80::58d:8415:1a20:604e/64 scope link 
       valid_lft forever preferred_lft forever
4: enp5s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 8000 qdisc mq state UP group 
default qlen 1000
    link/ether 00:1b:21:bc:19:96 brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.1/24 scope global enp5s0f0
       valid_lft forever preferred_lft forever
    inet6 fe80::21b:21ff:febc:1996/64 scope link 
       valid_lft forever preferred_lft forever
5: enp5s0f1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 8000 qdisc mq state UP group 
default qlen 1000
    link/ether 00:1b:21:bc:19:97 brd ff:ff:ff:ff:ff:ff
    inet 192.168.20.1/24 scope global enp5s0f1
       valid_lft forever preferred_lft forever
    inet6 fe80::21b:21ff:febc:1997/64 scope link 
       valid_lft forever preferred_lft forever

This host setup used to work flawlessly with the two X300 units.

Now when trying to run uhd_usrp_probe I think I got that I need to specify all 
three addresses, the primary and secondary address of the SFP ports that handle 
streaming as well as the management port address. So I pass those three 
parameters as args to uhd_usrp_probe. However when doing so, I get the error 
"Could not find MAC address for IP address 192.168.20.1“ which seems a bit 
weird to me, as to my knowledge a MAC address is a hardware property of the 
network interface and therefore cannot be misconfigured. So is this a network 
configuration error or am I doing something different wrong? For the sake of 
completeness, here is the complete output of uhd_usrp_probe:

sdr@NTLabDSP:~$ uhd_usrp_probe 
--args="addr=192.168.10.2,second_addr=192.168.20.2,mgmt_addr=192.167.1.100"
[INFO] [UHD] linux; GNU C++ version 5.4.0 20160609; Boost_105800; 
UHD_3.15.0.git-13-g52138314
[INFO] [MPMD] Initializing 1 device(s) in parallel with args: 
mgmt_addr=192.167.1.100,type=n3xx,product=n310,serial=316CD18,claimed=False,addr=192.168.10.2,second_addr=192.168.20.2
[INFO] [MPM.PeriphManager] init() called with device args 
`product=n310,mgmt_addr=192.167.1.100,second_addr=192.168.20.2,clock_source=internal,time_source=internal'.
[ERROR] [RPC] Could not find MAC address for IP address 192.168.20.1
[ERROR] [MPMD] Failure during block enumeration: RuntimeError: Error during RPC 
call to `commit_xport'. Error message: Could not find MAC address for IP 
address 192.168.20.1
[ERROR] [MPM.RPCServer] Uncaught exception in method commit_xport :Could not 
find MAC address for IP address 192.168.20.1 
 Traceback (most recent call last):
  File "/usr/lib/python3.5/site-packages/usrp_mpm/rpc_server.py", line 182, in 
new_claimed_function
    return function(*args)
  File "/usr/lib/python3.5/site-packages/usrp_mpm/periph_manager/n3xx.py", line 
546, in commit_xport
    return self._xport_mgrs['udp'].commit_xport(sid, xport_info)
  File "/usr/lib/python3.5/site-packages/usrp_mpm/xports/xportmgr_udp.py", line 
321, in commit_xport
    sender_addr))
RuntimeError: Could not find MAC address for IP address 192.168.20.1
 
Error: RuntimeError: Failed to run enumerate_rfnoc_blocks()

Thank you in advance for your help!
Janos
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to