Still unable to upload anything

Hey,

I am trying to install satnogs-client on Ubuntu (16.04 xor 14.04).

I have tried installation of satnogs-client from pip, virtualenv
but I keep running into trouble.

I also tried to recompile the last version of gnuradio instead of
installing it from apt, but did not find the waterfall_sink mentioned
in the error log. Google is of no help either on this issue.

All needed environment variables should be properly configured
(SATNOGS* and HAMLIB…) according to one of the documentation
I read.

The API is aknowledging my station with the “testing” flag in orange
on the station web page but I never succeeded to send any data
on your servers.

The reception stage (Turnstile+RTLSDR) is working as well as I am
receiving decodable APT images from NOAA satellites (with other tools).

Note that I also tried to run the simple test (according to some
trouble shooting guide):
satnogs_fm_demod.py --rx-sdr-device=rtlsdr --rx-freq=444000000 --file-path=./audio-out.ogg --waterfall-file-path=./waterfall.dat
but I also run into the same kind of error.

Here is the error log when I run the satnogs-client command
(along with an “rtl_tcp -a 0.0.0.0” command in another terminal)
when the time of the scheduled capture arrives

Exception in thread Thread-2:
Traceback (most recent call last):
File “/usr/lib/python2.7/threading.py”, line 801, in __bootstrap_inner
self.run()
File “/usr/lib/python2.7/threading.py”, line 754, in run
self.__target(*self.__args, **self.__kwargs)
File “/home/hugot/import/satnogs-client/satnogsclient/observer/worker.py”, line 114, in _communicate_tracking_info
self.send_to_socket(p, sock)
File “/home/hugot/import/satnogs-client/satnogsclient/observer/worker.py”, line 142, in send_to_socket
position = sock.send(“p\n”).split(’\n’)
File “/home/hugot/import/satnogs-client/satnogsclient/observer/commsocket.py”, line 75, in send
self.s.send(message)
error: [Errno 32] Broken pipe
Exception in thread Thread-3:
Traceback (most recent call last):
File “/usr/lib/python2.7/threading.py”, line 801, in __bootstrap_inner
self.run()
File “/usr/lib/python2.7/threading.py”, line 754, in run
self.__target(*self.__args, **self.__kwargs)
File “/home/hugot/import/satnogs-client/satnogsclient/observer/worker.py”, line 114, in _communicate_tracking_info
self.send_to_socket(p, sock)
File “/home/hugot/import/satnogs-client/satnogsclient/observer/worker.py”, line 159, in send_to_socket
sock.send(msg)
File “/home/hugot/import/satnogs-client/satnogsclient/observer/commsocket.py”, line 75, in send
self.s.send(message)
error: [Errno 32] Broken pipe

linux; GNU C++ version 5.3.1 20151219; Boost_105800; UHD_003.009.002-0-unknown

Failed to import SatNOGS (No module named satnogs_swig)
Consider first to run ‘sudo ldconfig’
Traceback (most recent call last):
File “/home/hugot/import/gr-satnogs-install/bin/satnogs_fm_demod.py”, line 333, in
main()
File “/home/hugot/import/gr-satnogs-install/bin/satnogs_fm_demod.py”, line 327, in main
tb = top_block_cls(antenna=options.antenna, bb_gain=options.bb_gain, decoded_data_file_path=options.decoded_data_file_path, dev_args=options.dev_args, doppler_correction_per_sec=options.doppler_correction_per_sec, enable_iq_dump=options.enable_iq_dump, file_path=options.file_path, if_gain=options.if_gain, iq_file_path=options.iq_file_path, lo_offset=options.lo_offset, ppm=options.ppm, rf_gain=options.rf_gain, rigctl_port=options.rigctl_port, rx_freq=options.rx_freq, rx_sdr_device=options.rx_sdr_device, waterfall_file_path=options.waterfall_file_path)
File “/home/hugot/import/gr-satnogs-install/bin/satnogs_fm_demod.py”, line 65, in init
self.satnogs_waterfall_sink_0 = satnogs.waterfall_sink(audio_samp_rate, 0.0, 10, 1024, waterfall_file_path, 1)
AttributeError: ‘module’ object has no attribute ‘waterfall_sink’

Thanks a lot for any help,

You also need to install the gr-satnogs package.

Not sure how rtl_tcp comes into the picture, but you may need to launch rigctld and rotctld manually, depending of which version of the client you are using.

Please post a link to which installation guide you are following, so we can also fix them if there is any out of date information.

Alex

oh, forgot to say. It is also installed. However, for this part, I am less sure I have done a proper install. I have installed it from github and set the following environment:
PATH=$PATH:$HOME/import/gr-satnogs-install/bin
export PYTHONPATH=$PYTHONPATH:$HOME/import/gr-satnogs-install/lib/python2.7/dist-packages/:/usr/local/lib/python2.7/dist-packages/satnogsclient-0.5-py2.7.egg:/usr/local/lib/python2.7/dist-packages
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/import/gr-satnogs-install/lib

May be on this point I have to read the doc on installing a new gnuradio plugin.

As for installation guide, as soon as I know what I am doing wrong, I will send you some return for the documentation.

I had some question, just for understanding: how the satnogs-client does know the TCP address and port of the SDR server? I did not see any explanation on this point.

For the rotctld issue, I saw in doing some googling, that, having a static station, I just had to set the environment variable HAMLIB_UTILS_ROT_ENABLED to False and it seemed to correct some crash mentioning rotctld at client startup.
Do you think this point can still be of some concern?

There is no SDR server involved by default. That is why I am confused about rtl_tcp and asked which guide you are following.

Anyway, this seems to be beyond my troubleshooting capabilities.

I got the SDR server part from this page:
https://wiki.satnogs.org/Adjusting_the_SatNOGS_Client

I tried without server with no more success.

I finally installed rigctld (which I thought was an alternative to rotcld).
I will try in a few minutes.

Anyhow, I still do not understand how the client is supposed to connect to the SDR dongle.
I do not see any configuration related to this part.

The purpose and scope of that page is to help find optimal gain and frequency error settings for the hardware. As it says under pre-requisites, it is done after the ground station is brought into an operational state. It is not an installation guide.

The client does not talk to the SDR dongle. The client fetches list of scheduled observations, executes them, and finally uploads the generated data to the network. As part of the execution, it launches the proper gnuradio script from gr-satnogs, which is then what talks to the dongle.

Configuration is done through setting environment variables.

You should follow a known reference such as this one:
https://wiki.satnogs.org/SatNOGS_Client_Ansible
it will make troubleshooting easier.

I have read this reference too.

I have progressed quite a bit:
during the build of gr-satnogs, I had not installed swig (I installed it
later when recompiling gnuradio). cmake saw it but did not broke the build.
I was able to go through the whole process without swig. I only got this warning:
– Disabling SWIG because version check failed.

May be this dependency should be made mandatory.

Note: I disabled all other servers :slight_smile:

Now the satnogs_fm_demod.py is talking with my dongle.

Well, it is mandatory in the satnogs context, but gr-satnogs also has some C++ blocks that can interesting for others who do not wish to have python support. I suppose that is why it is optional.

OK, I see. I thought gr-satnogs was dedicated to this usage.

I have another problem with uploading data now.
I will try to reinstall satnogs-network

It looks like uploading is now working.
I did not get which change made this.
I was able to upload my first results.

I now have a problem with the waterfall gnuplot script.
It is working well on Ubuntu 14.04 but is crashing on 16.04.

Hey,

I have got wf working by recompiling gnuplot.
I now have one complete observation #20717 (wf, snd, pic).

Thank you for your help.

73,

2 Likes