Auto scheduling

Finally I was able to schedule passes using a script, the final problem was that I didnΒ΄t confirmed the mail with the old auth account.

However the script yield a success while no schedule was posted, something was wrong there.

Now, after the e-mail confirmation was given a couple of passes were scheduled.

73 de Pedro, LU7DID


Ok, I am getting the following error:

2019-08-16 14:34:38,588 - root - INFO - Requesting information for ground station 272
2019-08-16 14:34:39,206 - root - INFO - Ground station information retrieved!
2019-08-16 14:34:39,236 - root - INFO - Finding all passes for 147 satellites:
100%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 147/147 [00:05<00:00, 25.45it/s]
Traceback (most recent call last):
File β€œ./”, line 366, in
File β€œ./”, line 282, in main
priorities, favorite_transmitters = read_priorities_transmitters(priority_filename)
File β€œ/home/pi/autosked/satnogs-auto-scheduler-master/”, line 45, in read_priorities_transmitters
prio = parts[1]
IndexError: list index out of range

I’m wondering if I’m not entering the priority correctly. The help file states that they should be β€œfractional”, and shows and example of 0.9. Does this mean that if you have 3 transmitters in your priority list, that they should be listed as β€œ0.9, 0.8, 0.7” priority? Or must the priority equal 1 (ie, priorities would then be something like β€œ0.5, 0.3, 0.2”)?


[edit] tried both ways, same error. doing something wrong. :frowning:

1 Like

The priorities file should contain lines like this:

33591 1.0 kE4VaYKpnFmzEquEjKKi8D
25338 1.0 mjsHcYajEgbiS9cbKfecGo
25544 0.0 qW5N27QuSrN2JMasbNiUhR

The columns here are NORAD_CAT_ID, priority and the transmitter UUID.

The priority can be any number larger than 0. This value is multiplied with the other priority metrics (pass elevation and transmitter success rate) to provide a value on which all passes are sorted. It is not a problem if different transmitters have the same value for priority. You can use different values to specify which transmitters you value compared to others.

By using a transmittter priority of 0.0, you can set the total priority of a transmitter to zero. Such a pass could still be scheduled if there are not higher priority passes available. To prevent scheduling of such low priority passes, you can use the -M option to set a minimum priority which much be reached to allow scheduling.

I hope that explains things.

Yep, that’s my understanding. This is my priorities file:

25544 1.0 PjfcFc4PZ8M8n3thuyA6x9
43137 0.9 3rLGJWqj3XZ6Z8vADCRwiW
43017 0.8 KgazZMKEa74VnquqXLwAvD
40967 0.7 ZyjKNJ9KqnTHBCUzAPN5G5
43678 0.6 HYB3Frb2cf4LUhzfbTCCw4
43770 0.5 bxfwWfvm9UaXRvVfyhcjt6
40654 0.4 FtxHUM8pqr6Ep95RehAouX

But it seems to be choking on the priority retrieval.

Check that you don’t have an empty line at the end, my editor automatically added one which caused the same error.


Yes, this is a good point. I tried the priorities from K3RLD and got no error message.

Ha! That was it!

Next questions: My authentication keeps failing. I thought I knew my old login, but I guess I don’t. In the meantime, it keeps listing passes that aren’t on my priorities list. For example, using the priorities above, it’s lists the following passes:

2019-08-16 15:45:39,422 - root - INFO - Requesting information for ground station 272

2019-08-16 15:45:40,043 - root - INFO - Ground station information retrieved!
2019-08-16 15:45:40,074 - root - INFO - Finding all passes for 147 satellites:
100%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 147/147 [00:06<00:00, 24.25it/s]
2019-08-16 15:45:46,173 - root - INFO - Requesting scheduled passes for ground station 272
2019-08-16 15:45:47,589 - root - INFO - Scheduled passes for ground station 272 retrieved!
2019-08-16 15:45:47,601 - root - INFO - Found 1 scheduled passes between 2019-08-16 15:45:39 and 2019-08-16 16:45:39 on ground station 272
2019-08-16 15:45:47,611 - root - INFO - 5 passes selected out of 46, 3182 s out of 3910 s at 81.400% efficiency
2019-08-16 15:45:47,612 - root - INFO - GS | Sch | NORAD | Start time | End time | El | Priority | Transmitter UUID | Mode | Satellite name
2019-08-16 15:45:47,613 - root - INFO - 272 | 0 | 43589 | 2019-08-16T15:48:34 | 2019-08-16T15:57:31 | 11 | 0.088000 | wJNinAfbDaTr35RzYrnxeS | AFSK1k2 | UiTMSat 1
2019-08-16 15:45:47,613 - root - INFO - 272 | 0 | 28654 | 2019-08-16T15:59:27 | 2019-08-16T16:11:42 | 12 | 0.132000 | u2h8AaSR7ZJPreFgVDtcfP | APT | NOAA-18
2019-08-16 15:45:47,614 - root - INFO - 272 | 1 | 25544 | 2019-08-16T16:17:05 | 2019-08-16T16:27:03 | 15 | 1.000000 | PjfcFc4PZ8M8n3thuyA6x9 | |
2019-08-16 15:45:47,615 - root - INFO - 272 | 0 | 40021 | 2019-08-16T16:27:45 | 2019-08-16T16:40:22 | 35 | 0.178889 | LyLQ3K5KTts6gJGQTVuSDP | BPSK1k2 | DUCHIFAT-1
2019-08-16 15:45:47,616 - root - INFO - 272 | 0 | 43137 | 2019-08-16T16:44:29 | 2019-08-16T16:53:44 | 10 | 0.900000 | 3rLGJWqj3XZ6Z8vADCRwiW | DUV | FOX-1D (AO-92)
2019-08-16 15:45:48,384 - root - INFO - Authentication failed

Why are satellites like Duchifat and NOAA-18 shown if they’re not even in my priorities list?
[edit] successfully guessed my login, however the question still remains about duchifat and NOAA-18… those passes did indeed schedule! ???

That is because by default the auto-scheduler will fill remaining gaps with satellites that are listed on the network. If you want to disable this, use the -f option.

1 Like

Of course. Now that I read that, I remember thinking about this. Thank you!

1 Like

Ok, another two questions.

If I want to update to the newest version of the autoscheduler, do I simply clone into a new folder and update my python command for the new file locations, or do I have to do the β€œrequirements” command again?

Secondly - if I run the cron comannd shown below manually (from the command land), the autoscheduler runs perfectly. However, it doesn’t seem to be running as a cron job. I watched last night just before and after midnight (utc), and no new observations were scheduled.

0 0 * * * python3 /home/pi/autosked/satnogs-auto-scheduler-master/ -s 272 -d 47 -P /home/pi/autosked/satnogs-auto-scheduler-master/priorities_272.txt -f

Any advice?


Provided you cloned the git repository and did not alter any of the source files, you should just be able to run git pull origin master

The program should have the executable bit set, so you can run /home/pi/autosked/satnogs-auto-scheduler-master/ -s 272 -d 47 -P /home/pi/autosked/satnogs-auto-scheduler-master/priorities_272.txt -f directly. Try that locally first, then as a cron job.

One station I used git clone, the other I just use the tar file. How would I update on the station with the repository installed via tar?

Regarding your updated command, it results in a traceback error:

Traceback (most recent call last):
  File "/home/pi/autosked/satnogs-auto-scheduler-master/", line 6, in <module>
from satellite_tle import fetch_tles
ImportError: No module named satellite_tle

[edit] the station that was installed via git clone seems to be running the command above perfectly! (station 187). I will try updating the cron job on that machine.

For the tar install, I would also use git clone for a new install. Make sure to back up any of your own files in that directory.

1 Like

Will do. Thank you for all the support on this!


1 Like

Eh, somethings different because I cloned the repository to station 272, and did a β€œfresh” install, and still get that traceback error to satellite_tle if not using the β€œpython3” command prior to the python file. If I use β€œpython3”, it excecutes flawlessly from the command line (just added 20 observations to station 272). :slight_smile:

Ah, I see already. invokes python, which will likely be python 2.7. You probably did not install the requirements for python 2.7.

Check if pip --version is for python 2.7 or python 3.X. If the latter, then run pip2 install -r requirements.txt.

1 Like

I believe that did it. Now to see if the cron job executes at 00:00z.

1 Like

Cron job is not running. Any suggestions?

There may be log messages in /var/log/syslog. Have a look at grep -i -e "cron" /var/log/syslog.

Hi all,
I have seen various posts regarding the authentication error for accounts that are in the newer log in format.
Some people say new accounts work. Others, me included, are having no success.
Any tips?