On 11/23/2019 03:49 PM, Austin Adam via USRP-users wrote:
I am trying to run a Gnu Radio python file via the terminal and only want to run in for a few seconds and then kill it. Then, wait a little bit, and rerun the script again. My problem is that sometimes, when I rerun it, I get an issue with my USRP N310 in that it decides to just disconnect with either a "No devices found for" or "Someone tried to claim this device again" message. I have posted the error messages below from two different instances.

When this happens, running uhd_find_devices does not find the N310, neither does uhd_find_devices --args=addr=192.168.10.2.

Upon restarting the N310 by manually pressing the power button, it is able to be found by uhd_find_devices, and I can continue running the script until the error happens, and I have to go manually restart the USRP.

I am trying to make an entire automated system and this is the one thing that requires manual effort, which is to get up and restart the USRP.

I am looking for a way to either, reboot the USRP via commands for when the error occurs, or a solution/workaround to the problem if it exists.

Is there any way to keep the USRP claimed and just tell the GNU part of the script to run each time I want to rerun it? Because each time I have to run the script, the USRP has to again be claimed and initiated. How can I keep it on at all times, or just skip the claiming step each time?

Thank you in advance for any help you can provide!

Here are the error messages:
/[INFO] [UHD] linux; GNU C++ version 8.3.0; Boost_106700; UHD_3.14.0.HEAD-0-g6875d061/
/Traceback (most recent call last):
File "/home/ugikie/Desktop/PositionControl/ArrayTest2.py", line 296, in <module>
    main()
File "/home/ugikie/Desktop/PositionControl/ArrayTest2.py", line 284, in main
    tb = top_block_cls()
File "/home/ugikie/Desktop/PositionControl/ArrayTest2.py", line 79, in __init__
    channels=range(4),
File "/usr/local/lib/python2.7/dist-packages/gnuradio/uhd/__init__.py", line 122, in constructor_interceptor
    return old_constructor(*args)
File "/usr/local/lib/python2.7/dist-packages/gnuradio/uhd/uhd_swig.py", line 2782, in make
    return _uhd_swig.usrp_source_make(*args)
RuntimeError: LookupError: KeyError: No devices found for ----->
Device Address:
    addr: 192.168.10.2
    rx_lo_source: external
init_cals: BASIC|TX_ATTENUATION_DELAY|RX_GAIN_DELAY|PATH_DELAY|TX_LO_LEAKAGE_INTERNAL|LOOPBACK_RX_LO_DELAY/
/
/
*Here is the second time it happened:*
/[INFO] [UHD] linux; GNU C++ version 8.3.0; Boost_106700; UHD_3.14.0.HEAD-0-g6875d061 [INFO] [MPMD] Initializing 1 device(s) in parallel with args: mgmt_addr=192.168.10.2,type=n3xx,product=n310,serial=3177E63,claimed=True,addr=192.168.10.2,rx_lo_source=external,init_cals=BASIC|TX_ATTENUATION_DELAY|RX_GAIN_DELAY|PATH_DELAY|TX_LO_LEAKAGE_INTERNAL|LOOPBACK_RX_LO_DELAY [ERROR] [RPC] Someone tried to claim this device again (From: 192.168.10.1)
Traceback (most recent call last):
File "/home/ugikie/Desktop/PositionControl/ArrayTest2.py", line 296, in <module>
    main()
File "/home/ugikie/Desktop/PositionControl/ArrayTest2.py", line 284, in main
    tb = top_block_cls()
File "/home/ugikie/Desktop/PositionControl/ArrayTest2.py", line 79, in __init__
    channels=range(4),
File "/usr/local/lib/python2.7/dist-packages/gnuradio/uhd/__init__.py", line 122, in constructor_interceptor
    return old_constructor(*args)
File "/usr/local/lib/python2.7/dist-packages/gnuradio/uhd/uhd_swig.py", line 2782, in make
    return _uhd_swig.usrp_source_make(*args)
RuntimeError: RuntimeError: Error during RPC call to `claim'. Error message: Someone tried to claim this device again (From: 192.168.10.1)/*
*

i\
Instead of interrupting the GR script, you could use the "Head" block to have it run for a finite number of samples, then exit gracefully. When you interrupt it, some things are clearly not getting cleaned up gracefully.



_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to