Unable to initialize Ettus USRP X310 in MATLAB

Updated Jun 25, 2026

Reported In

Hardware

  • USRP X310

Issue Details

I am using an Ettus USRP X310 running on Widows 11 using MATLAB R2025b. I am having issues communicating with it. When I run "uhd_usrp_probe.exe" inside MATLAB's command window, I get the following runtime errors:

 

system('"C:\ProgramData\MATLAB\SupportPackages\R2025b\3P.instrset\uhdbinary.instrset\win64\bin\uhd_usrp_probe.exe"')
[INFO] [UHD] Win32; Microsoft Visual C++ version 1936; Boost_108100; UHD_4.6.0.0-vendor
[INFO] [X300] X300 initialization sequence...
[ERROR] [X300] RuntimeError: System send MTU size is less than the minimum required by the IP protocol.
[WARNING] [X300] For the 192.168.10.2 connection, UHD recommends a send frame size of at least 1472 for best
performance, but your configuration will only allow 0.This may negatively impact your maximum achievable sample rate.
Check the MTU on the interface and/or the send_frame_size argument.
[WARNING] [X300] For the 192.168.10.2 connection, UHD recommends a receive frame size of at least 1472 for best
performance, but your configuration will only allow 0.This may negatively impact your maximum achievable sample rate.
Check the MTU on the interface and/or the recv_frame_size argument.
[ERROR] [X300] 192.168.10.2: x300 fw communication failure #1
EnvironmentError: IOError: x300 fw poke32 - reply timed out
[ERROR] [X300] 192.168.10.2: x300 fw communication failure #2
EnvironmentError: IOError: x300 fw poke32 - reply timed out
[ERROR] [X300] 192.168.10.2: x300 fw communication failure #3
EnvironmentError: IOError: x300 fw poke32 - reply timed out
[ERROR] [X300] 192.168.10.2: x300 fw communication failure #1
EnvironmentError: IOError: x300 fw poke32 - reply timed out
[ERROR] [X300] 192.168.10.2: x300 fw communication failure #2
EnvironmentError: IOError: x300 fw poke32 - reply timed out
[ERROR] [X300] 192.168.10.2: x300 fw communication failure #3
EnvironmentError: IOError: x300 fw poke32 - reply timed out
[ERROR] [UHD] An unexpected exception was caught in a task loop.The task loop will now exit, things may not work.EnvironmentError: IOError: 192.168.10.2: x300 fw communication failure #3
EnvironmentError: IOError: x300 fw poke32 - reply timed out
Error: EnvironmentError: IOError: 192.168.10.2: x300 fw communication failure #3
EnvironmentError: IOError: x300 fw poke32 - reply timed out

ans =
-1

Solution

This occurs when the USRP driver queries Windows for the Maximum Transmission Unit (MTU) size of the network adapter but receives an invalid value. Because the available frame size is calculated as 0, the firmware communication times out. Perform the following steps to stabilize the network connection:

 Force a Persistent MTU Size in Windows To prevent Windows from dynamically reporting an invalid MTU size to MATLAB, you can force a standard value using the Command Prompt:

  1. Open Command Prompt as an Administrator.
  2. Run the following command to find the name of the network interface connected to your USRP: `netsh interface ipv4 show subinterfaces`
  3. Identify the interface connected to the X310 (for example, "Ethernet 2").
  4. Set the MTU to the standard value for a 1 Gigabit Ethernet connection by running: `netsh interface ipv4 set subinterface "Interface Name" mtu=1500 store=persistent` (Note: Replace "Interface Name" with the exact name from step 2, keeping the quotation marks). (If you are using a 10 Gigabit Ethernet connection with Jumbo frames, use `mtu=9000` instead).

 

Additional Information

(Optional Workaround)

Manually Specify Frame Size If the above steps do not immediately resolve the issue within the MATLAB RadioSetupWizard, you can try forcing the frame size manually. When prompted for the device address or IP, append the frame size arguments like so: `addr=192.168.10.2,send_frame_size=1472,recv_frame_size=1472`