Hey all, I am (slowly) building a base station to try out. I’m getting a really annoying error that i can’t figure out, tho. I am using a raspberry Pi 2 and have followed the tutorials. However, the satnogs-poller keeps failing, so supervisor keeps restarting it. The error in the supervisor log is this:
Traceback (most recent call last):
File “/usr/local/bin/satnogs-poller”, line 5, in
from satnogsclient.settings import (SCHEDULER_SLEEP_TIME, NETWORK_API_QUERY_INTERVAL,
File “/usr/local/lib/python2.7/dist-packages/satnogsclient/init.py”, line 19, in
raise Exception(‘GROUND_STATION_ID not configured.’)
Exception: GROUND_STATION_ID not configured.
However, my ground_station_id is set in the satnogs.conf file in /etc/supervisor/conf/d:
Ah, figured it out myself (I think): the sample config file in the tutorial for the Pi is wrong. It uses SATNOG_STATION_ID, when the init.py file is looking for GROUND_STATION_ID. Same for the next few entries as well.
Having the same problem here, and adding GROUND_STATION_ID=“fjkraan” doesn’t seem to work for me.
I assumed the software attempts to find the ground station I should have added at https://network-dev.satnogs.org/users/fjkraan/. The problem is, the form doesn’t accept my data. Filling in each field still results in “Some fields missing on the form”.
Hm, having trouble pinning this down. It is something to do with python not importing the environment variables properly, I think. The init.py calls settings.py, which grabs them and is looking for SATNOGS_STATION_ID. But it doesn’t seem to be getting it, and I don’t know enough Python to figure out why.
Hey all!
This error is raised because you are using the wrong ID. Instead of using your username, you should add a new ground station to network.satnogs.org and then get the integer ID assigned to it and add it to the configuration.
Thank you for the reply. I tried adding a ground station at https://network-dev.satnogs.org/users/fjkraan/ with id “fjkraan_1”, or just “1”, and all the other editable data, but the result is the same: “Some fields missing on the form”.
The assumption is that when a groundstation is defined, the client software on the PI will find it.
Minor nitpick: the message “Some fields missing on the form” says there are there are fields missing on the form, not that there is no value in some (apparantly mandatory) fields.
The number that Johngian is referring to is the one that is at the end of the URL when you have added the station and it is listed. Not sure on your error, but the number is generated by the server, not by you.
@richardb At the moment, we are using the network directly to add test jobs. In the past, we where using the script under satnogsclient/bin/satnogs-task [1] in order to manually spawn an observation. Although there is long time since we last revisited it, it might work for you.
For more information: python bin/satnogs-task --help
I am afraid I am even more confused. I cannot generate a ground station because of the error I get. I even tried another browser. No ground station means no Id, means no working client. Or this there something else I missed?
The issue with creating ground stations has been solved (altitude should be an integer), some progress has been made with the Raspberry Pi client. Some extra libraries needed to be configured (mostly addressed on http://stackoverflow.com/questions/29099404/ssl-insecureplatform-error-when-using-requests-package). Now the satnogsclient keeps running, but has issues getting jobs.
From satnogs-stderr—supervisor-???.log:
2016-01-01 14:54:30,423 - satnogsclient - INFO - Trying to GET observation jobs from the network
2016-01-01 14:54:30,526 - apscheduler.executors.default - INFO - Running job “post_data (trigger: interval[0:15:00], next run at: 2016-01-01 15:09:30 UTC)” (scheduled at 2016-01-01 14:54:30.228183+00:00)
2016-01-01 14:54:30,531 - apscheduler.executors.default - INFO - Job “post_data (trigger: interval[0:15:00], next run at: 2016-01-01 15:09:30 UTC)” executed successfully
2016-01-01 14:54:30,996 - apscheduler.executors.default - ERROR - Job “get_jobs (trigger: interval[0:05:00], next run at: 2016-01-01 14:59:30 UTC)” raised an exception
Traceback (most recent call last):
File “/usr/local/lib/python2.7/dist-packages/apscheduler/executors/base.py”, line 112, in run_job
retval = job.func(*job.args, **job.kwargs)
File “/usr/local/lib/python2.7/dist-packages/satnogsclient/scheduler/tasks.py”, line 114, in get_jobs
raise Exception(‘Status code: {0} on request: {1}’.format(response.status_code, url))
Exception: Status code: 401 on request: https://network.satnogs.org/api/jobs/
A browser and wget have no problem reaching the jobs page. 401 means “not authorized”.
Addendum: managed to add some extra logging to tasks.py:113: “logger.info(‘Response: {0}’.format(response.text))” The result is: ‘{“detail”:“Invalid token”}’. The token in satnogs.conf matches the API key in https://network-dev.satnogs.org/users/fjkraan/.
This is a very old thread, currently the configuration of client is configured by “satnogs-setup” script, which comes with the raspberry pi image or if you install client through ansible script.
In case you manually install client from the repository or by “pip install” you will need to overwrite the settings by using environment variables.
Feel free to open a new thread if you face issues with installing/configuring your client.