xmikos / qspectrumanalyzer

Spectrum analyzer for multiple SDR platforms (PyQtGraph based GUI for soapy_power, hackrf_sweep, rtl_power, rx_power and other backends)
GNU General Public License v3.0
1.17k stars 237 forks source link

No devices found! in Arch Linux / soapy_power failure #59

Open erlisdhima opened 6 years ago

erlisdhima commented 6 years ago

Hello,

I'm trying to run qspectrumanalyzer but after some debugging, I found that the issue is with soapy_power not being able to detect my device.

Here's what I've tried...

$ soapy_power --debug --detect        
DEBUG: scipy.fftpack module found
Detected SoapySDR devices:
  No devices found!
$ soapy_power --debug --info   
DEBUG: scipy.fftpack module found
WARNING: Incorrect RX channel number, using channel 0 instead!
Traceback (most recent call last):
  File "/usr/bin/soapy_power", line 11, in <module>
    load_entry_point('soapy-power==1.6.1', 'console_scripts', 'soapy_power')()
  File "/usr/lib/python3.6/site-packages/soapypower/__main__.py", line 307, in main
    device, device_text = device_info(args.device)
  File "/usr/lib/python3.6/site-packages/soapypower/__main__.py", line 106, in device_info
    text.append('    {:.2f} - {:.2f}'.format(*[x / 1e6 for x in device.get_frequency_range()]))
  File "/usr/lib/python3.6/site-packages/simplesoapy.py", line 402, in get_frequency_range
    freq = self.device.getFrequencyRange(SoapySDR.SOAPY_SDR_RX, self._channel)[0]
IndexError: tuple index out of range
$ qspectrumanalyzer --debug
Starting backend:
soapy_power -f 87.0M:108.0M -B 10.0k -T 10.0 -d  -r 2560000.0 -p 0 -F soapy_power_bin --output-fd 15 -g 0.0 -c

WARNING: Incorrect RX channel number, using channel 0 instead!
Traceback (most recent call last):
  File "/usr/bin/soapy_power", line 11, in <module>
    load_entry_point('soapy-power==1.6.1', 'console_scripts', 'soapy_power')()
  File "/usr/lib/python3.6/site-packages/soapypower/__main__.py", line 323, in main
    output_format=args.format
  File "/usr/lib/python3.6/site-packages/soapypower/power.py", line 38, in __init__
    force_sample_rate=force_sample_rate, force_bandwidth=force_bandwidth
  File "/usr/lib/python3.6/site-packages/simplesoapy.py", line 103, in __init__
    self.sample_rate = sample_rate
  File "/usr/lib/python3.6/site-packages/simplesoapy.py", line 187, in sample_rate
    real_sample_rate = rate_ranges.closest(sample_rate)
  File "/usr/lib/python3.6/site-packages/simplesoapy.py", line 54, in closest
    return closest(edges, num)
  File "/usr/lib/python3.6/site-packages/simplesoapy.py", line 14, in closest
    return min(num_list, key=lambda x: abs(x - num))
ValueError: min() arg is an empty sequence

I checked for my device info with lshw and found the following:

*-usb
     description: Generic USB device
     product: A310
     vendor: AVerMedia
     physical id: 3
     bus info: usb@1:3
     version: 1.01
     serial: 000000000000
     capabilities: usb-2.00
     configuration: driver=dvb_usb_ce6230 maxpower=500mA speed=480Mbit/s

Is my device not supported, or is there some other issue? Can anyone help with this?

wb8vsu commented 5 years ago

Try Installing an old version of PothosSDR instead of a new one to see if that resolves the issue. It needs to be a version that installs the 0.5 Simple Soapy library. See my post in the Windows 7 can't find devices for the correct version of PothosSDR.