pothosware / SoapyUHD

Soapy SDR plugins for UHD supported SDR devices
https://github.com/pothosware/SoapyUHD/wiki
GNU General Public License v3.0
55 stars 29 forks source link

Having trouble connecting to USRP N210 with SoapyUHD #31

Closed EricGaulke closed 4 years ago

EricGaulke commented 4 years ago

Hello, I am trying to use SoapyUHD to connect to a USRP N210. I am able to connect to the N210 using uhd_find_devices, but I am not able to connect using SoapySDRUtil --probe="driver=uhd,type=usrp2". I believe I have installed SoapyUHD correctly since I can see it in the available factories section when using SoapySDRUtil --info. Attached is a screeshot of the output of SoapySDRUtil --probe="driver=uhd,type=usrp2". Any help would be appreciated. log

guruofquality commented 4 years ago

Sounds like everything is correct.

So what is the output of SoapySDRUtil --info

And more importantly, what about SoapySDRUtil --find ?

EricGaulke commented 4 years ago

info find

guruofquality commented 4 years ago

I cant think of why uhd_find_devices linked to the same libuhd as SoapyUHD would not see the devices. Unless maybe theres more than one libuhd (one working and one not)

Do you see that UHD version string printed at the end? Does uhd_find_devices report that same version string?

EricGaulke commented 4 years ago

Yes it does uhd

guruofquality commented 4 years ago

So I dont really know what the issue could be but if you are interested in debugging it. This is what I would try to do:

1) remove just the soapy uhd package from the apt package repository 2) since you are using debs, install libuhd-dev and libsoapysdr-dev 3) build SoapyUHD from souce 4) Just add prints: https://github.com/pothosware/SoapyUHD/blob/master/SoapyUHDDevice.cpp#L1042 4a) find_uhd should be called 4b) and uhd::device::find should be returning something

Just another idea, sometimes issues like this boil down to just package weirdness. and sometimes in this ecosystem, its easier to install from source. You might try installing SoapySDR from source as well, just remove the package from apt before doing it.

hope that helps

EricGaulke commented 4 years ago

I added a print statement inside find_uhd in SoapyUHDDevice.cpp, but it seems find_uhd isn't being called at all. Any idea why this would happen?

EricGaulke commented 4 years ago

Fixed it. I uninstalled and reinstalled UHD and SoapyUHD from source and it fixed it somehow. Thanks for the help.