Hey there!
I tried setting up a ground station and everything worked great so far except that my SatNOGS client can’t seem to access my Airspy Mini through soapy. The error I get is:
May 16 13:33:21 monero2 satnogs-client[8452]: satnogsclient.observer.worker - DEBUG - Initial frequency: 136410000
May 16 13:33:21 monero2 satnogs-client[8452]: satnogsclient.observer.worker - DEBUG - Rigctld msg: 136410513
May 16 13:33:21 monero2 satnogs-client[8520]: Traceback (most recent call last):
May 16 13:33:21 monero2 satnogs-client[8520]: File "/usr/bin/satnogs_fm.py", line 466, in <module>
May 16 13:33:21 monero2 satnogs-client[8520]: main()
May 16 13:33:21 monero2 satnogs-client[8520]: File "/usr/bin/satnogs_fm.py", line 449, in main
May 16 13:33:21 monero2 satnogs-client[8520]: tb = top_block_cls(antenna=options.antenna, bb_freq=options.bb_freq, bw=options.bw, dc_removal=options.dc_removal, decoded_data_file_path=options.decoded_data_file_path, dev_args=options.dev_args, deviation=options.deviation, doppler_correction_per_sec=options.doppler_correction_per_sec, enable_iq_dump=options.enable_iq_dump, file_path=options.file_path, gain=options.gain, gain_mode=options.gain_mode, iq_file_path=options.iq_file_path, lo_offset=options.lo_offset, max_modulation_freq=options.max_modulation_freq, other_settings=options.other_settings, ppm=options.ppm, rigctl_port=options.rigctl_port, rx_freq=options.rx_freq, samp_rate_rx=options.samp_rate_rx, soapy_rx_device=options.soapy_rx_device, stream_args=options.stream_args, tune_args=options.tune_args, udp_IP=options.udp_IP, udp_dump_host=options.udp_dump_host, udp_dump_port=options.udp_dump_port, udp_port=options.udp_port, waterfall_file_path=options.waterfall_file_path)
May 16 13:33:21 monero2 satnogs-client[8520]: File "/usr/bin/satnogs_fm.py", line 91, in __init__
May 16 13:33:21 monero2 satnogs-client[8520]: self.soapy_source_0_0 = soapy.source(1, dev, dev_args, stream_args,
May 16 13:33:21 monero2 satnogs-client[8520]: File "/usr/lib/python3/dist-packages/soapy/soapy_swig.py", line 131, in make
May 16 13:33:21 monero2 satnogs-client[8520]: return _soapy_swig.source_make(nchan, device, dev_args, stream_args, tune_args, other_settings, sampling_rate, type)
May 16 13:33:21 monero2 satnogs-client[8520]: RuntimeError: device_id missing.
May 16 13:33:21 monero2 satnogs-client[8452]: satnogsclient.observer.orbital - DEBUG - Observer data: {'lon': 8.998, 'lat': 50.793, 'elev': 230}
May 16 13:33:21 monero2 satnogs-client[8452]: satnogsclient.observer.orbital - DEBUG - Satellite data: {'tle0': '0 ISIS 1', 'tle1': '1 03669U 69009A 23135.57269655 .00000079 00000-0 49940-4 0 9993', 'tle2': '2 03669 88.4156 268.4899 1710857 5.6718 356.1222 11.29686589232294'}
May 16 13:33:21 monero2 satnogs-client[8452]: satnogsclient.observer.orbital - DEBUG - Calculated data: {'alt': 0.5245378017425537, 'az': 0.6198420524597168, 'rng': 3522460.75, 'rng_vlct': -1126.8868408203125, 'ok': True}
May 16 13:33:21 monero2 satnogs-client[8452]: satnogsclient.observer.worker - DEBUG - Initial frequency: 136410000
May 16 13:33:21 monero2 satnogs-client[8452]: satnogsclient.observer.worker - DEBUG - Rigctld msg: 136410512
May 16 13:33:22 monero2 satnogs-client[8452]: satnogsclient.observer.observer - INFO - Tracking stopped.
May 16 13:33:22 monero2 satnogs-client[8452]: netrigctl_close: done status=Command completed successfully
May 16 13:33:22 monero2 satnogs-client[8452]: satnogsclient.observer.worker - INFO - Tracking stopped.
May 16 13:33:23 monero2 satnogs-client[8452]: satnogsclient.observer.worker - INFO - Tracking stopped.
May 16 13:33:23 monero2 satnogs-client[8452]: satnogsclient.observer.observer - INFO - Observation Finished
May 16 13:33:23 monero2 satnogs-client[8452]: satnogsclient.observer.observer - INFO - Executing post-observation script.
May 16 13:33:23 monero2 satnogs-client[8452]: satnogsclient.observer.observer - INFO - Creating waterfall plot.
May 16 13:33:23 monero2 satnogs-client[8452]: satnogsclient.waterfall - INFO - Reading waterfall file
May 16 13:33:23 monero2 satnogs-client[8452]: satnogsclient.observer.observer - ERROR - No waterfall data file found
Here’s the support file generated by the SatNOGS-setup:
{
"versions": {
"satnogs-client": "1.8.1",
"satnogs-client-ansible": "202209101521",
"satnogs-flowgraphs": "1.4-1",
"gr-satnogs": "2.3.4.0-1",
"gr-soapy": "2.1.3.1-1",
"gnuradio": "3.8.2.0-14",
"satnogs-config": "0.13.2"
},
"state": {
"is-applied": true,
"pending-tags": null
},
"system": {
"date": "2023-05-16T11:43:10.850794+00:00",
"distribution": {
"DESCRIPTION": "Debian GNU/Linux 11 (bullseye)",
"RELEASE": "11",
"CODENAME": "bullseye",
"ID": "Debian"
},
"pending-updates": false,
"platform": {
"system": "Linux",
"node": "monero2",
"release": "5.10.0-23-amd64",
"version": "#1 SMP Debian 5.10.179-1 (2023-05-12)",
"machine": "x86_64"
},
"memory": {
"total": 1798766592,
"available": 1026539520,
"percent": 42.9,
"used": 610091008,
"free": 285728768,
"active": 517390336,
"inactive": 817258496,
"buffers": 65454080,
"cached": 837492736,
"shared": 1789952,
"slab": 88711168
},
"disk": {
"total": 312897159168,
"used": 9181802496,
"free": 287746228224,
"percent": 3.1
}
},
"configuration": {
"satnogs_antenna": "RX",
"satnogs_api_token": "[redacted]",
"satnogs_gain_mode": "Settings Field",
"satnogs_log_level": "DEBUG",
"satnogs_other_settings": "LNA=9,MIX=6,VGA=11",
"satnogs_rf_gain": "40",
"satnogs_rx_samp_rate": "3e6",
"satnogs_soapy_rx_device": "driver=airspy,serial=260868c8264eaf9b,biastee=true,gainmode=2",
"satnogs_station_elev": "230",
"satnogs_station_id": "3141",
"satnogs_station_lat": "50.793",
"satnogs_station_lon": "8.998"
}
}
Aaaand last but not least, here’s what “SoapySDRUtil --probe” returns:
######################################################
## Soapy SDR -- the SDR abstraction library ##
######################################################
Probe device
----------------------------------------------------
-- Device identification
----------------------------------------------------
driver=Airspy
hardware=Airspy
serial=260868c8264eaf9b
----------------------------------------------------
-- Peripheral summary
----------------------------------------------------
Channels: 1 Rx, 0 Tx
Timestamps: NO
Other Settings:
* Bias tee - Enable the 4.5v DC Bias tee to power SpyVerter / LNA / etc. via antenna connection.
[key=biastee, default=false, type=bool]
* Bit pack - Enable packing 4 12-bit samples into 3 16-bit words for 25% less USB trafic.
[key=bitpack, default=false, type=bool]
* Gain Mode - 0 = linearity, 1 = sensitivity, 2 = manual
[key=gainmode, default=0, type=int]
----------------------------------------------------
-- RX Channel 0
----------------------------------------------------
Full-duplex: NO
Supports AGC: YES
Stream formats: CS16, CF32
Native format: CS16 [full-scale=32767]
Antennas: RX
Full gain range: [0, 21] dB
LIN gain range: [0, 21] dB
Full freq range: [24, 1800] MHz
RF freq range: [24, 1800] MHz
Sample rates: 3, 6 MSps
Filter bandwidths: 2.7, 5.4 MHz
Any help would be appreciated, as I have no idea how to go from here… Attached to the Airspy Mini is a LNA which is why i have Bias tee enabled. If you need any other information, feel free to ask:)
Edit: Everything else works fine, the Client is connected and online!