Hi Zack, I cannot say from the top of my head what exactly the difference between addr and addr0 is internally. Usually, addr0, addr1 etc. are used for addressing multiple devices but /should/ be equivalent to just using addr. When looking at the output of uhd_find_devices we see that with the 400 MHz FPGA image, both QSFP ports seem to be present, that's already good. However, when looking at the error message this indicates that something might be wrong with some network connection. Can you verify that the QSFP ports on your computer are both configured properly? The last time I saw this error was when someone set up a new host computer, forgot to configure his 10 Gbps interface to match the physically connected X410 and wanted to run an application that relied on that connection.
/Martin From: zackk...@utexas.edu <zackk...@utexas.edu> Sent: Monday, November 13, 2023 7:54 PM To: usrp-users@lists.ettus.com Subject: [USRP-users] X410 recv error on socket: Connection refused You don't often get email from zackk...@utexas.edu<mailto:zackk...@utexas.edu>. Learn why this is important<https://aka.ms/LearnAboutSenderIdentification> Hello! We have an X410 connected to a host computer through two QSFP28-to-QSFP28 connections with IPs 192.168.10.2 and 192.168.20.2 for interfaces 0 and 1 respectively. The X410 also has an ethernet connection to a router with an IP 192.168.1.19, which the host computer is also connected to. When the X410 is loaded with the UC_200 image, everything seems to work as desired and running "uhd_find_devices" on its own produces: [INFO] [UHD] linux; GNU C++ version 9.4.0; Boost_107100; DPDK_19.11; UHD_4.5.0.0-0-g471af98f -------------------------------------------------- -- UHD Device 0 -------------------------------------------------- Device Address: serial: 326E872 addr: 192.168.20.2 claimed: False fpga: UC_200 mgmt_addr: 192.168.1.19 mgmt_addr: 192.168.20.2 name: ni-x4xx-326E872 product: x410 type: x4xx When I try to change images with "uhd_image_loader --args type=x4xx,mgmt_address=192.168.1.19,fpga=CG_400 ", it seems to work but then errors out: [INFO] [UHD] linux; GNU C++ version 9.4.0; Boost_107100; DPDK_19.11; UHD_4.5.0.0-0-g471af98f [INFO] [MPMD] Initializing 1 device(s) in parallel with args: mgm_addr=192.168.1.19,addr0=192.168.20.2,mgmt_addr=192.168.1.19,type=x4xx,product=x410,serial=326E872,name=ni-x4xx-326E872,fpga=UC_200,claimed=False,addr=192.168.1.19,skip_init=1 [INFO] [MPMD] Claimed device without full initialization. [INFO] [MPMD IMAGE LOADER] Starting update. This may take a while. [INFO] [MPM.PeriphManager] Installing component `fpga' [INFO] [MPM.PeriphManager] Installing component `dts' [INFO] [MPM.RPCServer] Resetting peripheral manager. [INFO] [MPM.PeriphManager] Device serial number: 3263584 [INFO] [MPM.PeriphManager.ClkMgr] Using Clock Configuration: DB0: Master Clock Rate: 491.52 MSps @Converter Rate 2.94912 GHz DB1: Master Clock Rate: 491.52 MSps @Converter Rate 2.94912 GHz [INFO] [MPM.PeriphManager] Initialized 2 daughterboard(s). [INFO] [MPM.PeriphManager] init() called with device args `boot_init=True,clock_source=internal,time_source=internal,initializing=True'. [ERROR] [RPC] Someone tried to claim this device again (From: 192.168.1.20) [INFO] [MPMD IMAGE LOADER] Update component function succeeded. [INFO] [MPMD] Initializing 1 device(s) in parallel with args: mgm_addr=192.168.1.19,addr0=192.168.20.2,mgmt_addr=192.168.20.2,type=x4xx,product=x410,serial=326E872,name=ni-x4xx-326E872,fpga=CG_400,claimed=False,addr=192.168.20.2,mgmt_address=192.168.1.19,find_all=1 [INFO] [MPM.PeriphManager] init() called with device args `addr0=192.168.20.2,find_all=1,fpga=CG_400,mgm_addr=192.168.1.19,mgmt_addr=192.168.20.2,mgmt_address=192.168.1.19,name=ni-x4xx-326E872,product=x410,clock_source=internal,time_source=internal,initializing=True'. [ERROR] [RFNOC::MGMT] EnvironmentError: IOError: recv error on socket: Connection refused [ERROR] [RFNOC::GRAPH] IO Error during GSM initialization. EnvironmentError: IOError: recv error on socket: Connection refused [ERROR] [RFNOC::GRAPH] Caught exception while initializing graph: EnvironmentError: IOError: recv error on socket: Connection refused Error: RuntimeError: Failure to create rfnoc_graph. But if I run uhd_find_devices again I get what I expect : -------------------------------------------------- -- UHD Device 0 -------------------------------------------------- Device Address: serial: 326E872 addr: 192.168.20.2 claimed: False fpga: CG_400 mgmt_addr: 192.168.1.19 mgmt_addr: 192.168.10.2 mgmt_addr: 192.168.20.2 name: ni-x4xx-326E872 product: x410 type: x4xx If I try and run any script though, even specifying the addresses, I get the same errors as when changing the image. An example is with 'uhd_usrp_probe --args "mgmt_addr=192.168.1.19,type=x4xx" ' even without any arguements: INFO] [UHD] linux; GNU C++ version 9.4.0; Boost_107100; DPDK_19.11; UHD_4.5.0.0-0-g471af98f [INFO] [MPMD] Initializing 1 device(s) in parallel with args: mgm_addr=192.168.1.19,addr0=192.168.20.2,mgmt_addr=192.168.1.19,type=x4xx,product=x410,serial=326E872,name=ni-x4xx-326E872,fpga=CG_400,claimed=False [INFO] [MPM.PeriphManager] init() called with device args `addr0=192.168.20.2,fpga=CG_400,mgm_addr=192.168.1.19,mgmt_addr=192.168.1.19,name=ni-x4xx-326E872,product=x410,clock_source=internal,time_source=internal,initializing=True'. [ERROR] [RFNOC::MGMT] EnvironmentError: IOError: recv error on socket: Connection refused [ERROR] [RFNOC::GRAPH] IO Error during GSM initialization. EnvironmentError: IOError: recv error on socket: Connection refused [ERROR] [RFNOC::GRAPH] Caught exception while initializing graph: EnvironmentError: IOError: recv error on socket: Connection refused Error: RuntimeError: Failure to create rfnoc_graph. The errors disappear when I use addr0 instead of mgmt_addr or addr. Since this option is not listed in the wiki (https://files.ettus.com/manual/page_usrp_x4xx.html#x4xx_usage_args) I am curious if I am using it correctly. At the end of the day, I want to make sure that when using the CG_400 image that both QSFP28 interfaces are operating, and that I can switch between the two images without errors. Previously we used to only have a single connection. Thanks! Zack National Instruments Dresden GmbH; Gesch?ftsf?hrer (Managing Directors): John Stanton McElroy, Albert Edward Percival III, Kathleen Spurck; Sitz (Registered Office): Dresden; HRB (Commercial Register No.): 22081; Registergericht (Registration Court): Dresden This email and any attachments are intended only for the person to whom this email is addressed and may contain confidential and/or privileged information. If you received this email in error, please do not disclose the contents to anyone, but notify the sender by return email and delete this email (and any attachments) from your system.
_______________________________________________ USRP-users mailing list -- usrp-users@lists.ettus.com To unsubscribe send an email to usrp-users-le...@lists.ettus.com