Auto scheduling

It was more of a PSA @KD9KCK :slight_smile:

1 Like

Very new to Satnogs, but very comfortable in the command line.
As a new user, scheduling passes to test and refine the station gets old real quick!

Could someone please just give me a nudge in the directions of how to use this script?
Do I just git it into my home directory?
How does one go about using it over the usual webpage for scheduling sat passes?


Yes, you install it locally. It can run it on the machine which operates the ground station.

I myself run it from two cronjobs. A daily cronjob to schedule Meteor MN-2 LRPT passes for the next 3 days, as I prioritize those passes, and an hourly cronjob to fill the gaps in the schedule for the next hour and 15 mins. The latter approach allows others to schedule passes on the station, but ensures that it isn’t idling.

However, the current implementation of the auto-scheduler relies on the old authentication system, which you will most likely will not have an account for. We are starting to think about implementing a scheduling API to get around this, so please be patient.

Here is the output from the terminal;

2019-05-02 21:52:12,940 - root - INFO - Requesting scheduled passes for ground station 702

2019-05-02 21:52:14,458 - root - INFO - Scheduled passes for ground station 702 retrieved!
2019-05-02 21:52:14,465 - root - INFO - Found 2 scheduled passes between 2019-05-02 21:51:52 and 2019-05-02 22:51:52 on ground station 702
2019-05-02 21:52:14,467 - root - INFO - 4 passes scheduled out of 17, 1909 s out of 3195 s at 59.747% efficiency
2019-05-02 21:52:14,468 - root - INFO - GS | Sch | NORAD | Start time | End time | El | Priority | Transmitter UUID | Satellite name
2019-05-02 21:52:14,469 - root - INFO - 702 | 1 | 40057 | 2019-05-02T21:51:57 | 2019-05-02T21:56:16 | 77 | 1.000000 | nP9SjSXhoLLLi4Xso84aER |
2019-05-02 21:52:14,470 - root - INFO - 702 | | 40379 | 2019-05-02T21:59:58 | 2019-05-02T22:12:24 | 38 | 0.392667 | PMnr7eXunTq4zsS3WnbqxV | GRIFEX
2019-05-02 21:52:14,471 - root - INFO - 702 | 1 | 39430 | 2019-05-02T22:21:39 | 2019-05-02T22:25:34 | 72 | 1.000000 | ULXxBCypZh4f2qPnJeg6WH |
2019-05-02 21:52:14,472 - root - INFO - 702 | | 43192 | 2019-05-02T22:34:02 | 2019-05-02T22:45:11 | 33 | 0.124667 | C4XkUsJZiPC9HfyrW6Ur2G | FENGMANIU 1 (FMN-1)
2019-05-02 21:52:15,402 - root - INFO - Authentication failed
2019-05-02 21:52:15,403 - root - INFO - Checking and scheduling passes as needed.
100%|ââââââââââ| 4/4 [00:02<00:00, 1.41it/s]t/s]
2019-05-02 21:52:17,997 - root - INFO - All passes are scheduled. Exiting!

I take it that the failed Authentication is what you are mentioning?
Or am I missing a setup step somewhere since it does seem to get me most of the way there?

Note, it states that all passes are scheduled, but they are not.

EDIT. I have an account on the, so I am unsure what else I need to do…
BTW, does it only work if your station is not in testing mode?

EDIT. Taking the station out of ‘testing’ mode does not make any difference.

What Authentication is it that is failing?

1 Like

No, you are using it correctly.

That’s a bug. Thanks for reporting it. I raised an issue to fix it.

The authentication to the network. Right now we’re using the old authentication system in a hacky way, and this needs to change. Hence, the plan to implement a scheduling API that will add this functionality.

Just rephrasing what @cgbsat already said in another way:
New users who only ever used the new shiny Auth0 Single-Sign-on (SSO) don’t have accounts in the old deprecated authentication system (although they are able to log-in to, using the new SSO).
So they are not able to use the auto-scheduler currently unfortunately.

update: The content of this post might be wrong, see following posts.


That’s not entirely true.
I’ve just registered my account a few weeks ago and I am able to use the auto-scheduler.
I did get 2 emails to validate my email address after using the auto-scheduler the first time and then after validating it I was able to use the auto-scheduler
Hello from SatNOGS Network!

You’re receiving this e-mail because user on3rvh has given yours as an e-mail address to connect their account.

To confirm this is correct, go to

Thank you from SatNOGS Network!


@on3rvh: Many thanks for your post! I can also confirm your findings.

I just created a new account and station in and can confirm that it was possible to use the auto-scheduler for scheduling this station. (I got only one account verification mail though, the one from auth0, but this doesn’t seem to have been a problem).

1 Like

@kerel glad you can confirm it and that I was not the exception :wink:

Hi all,
I have successfully installed ‘Satellitetle’ and cloned the ‘satnogs-auto-scheduler’ github but I cannot for the life of me get it to install.

I am assuming ‘sudo pip install XXXX’ is how it’s just the ‘XXXX’ I cannot work out.

Any help greatly appreciated.


Did you read the README?

I did read it. After

‘sudo apt-get install libxml2-dev libxslt1-dev
pip install -r requirements.txt’

I tried

‘ -s ground-station-ID -n’

(obviously with my station ID substituted in) to be told was not a command!?!


well… did you try

python3 ./ -s ground-station-ID -n


1 Like

Doh!! Senior moment. Thanks Pierros


Question: Where is “.env”? Trying to perform this step:

Copy the env-dist file to .env and set your legacy SatNOGS Network credentials.

I find things by the following command;
sudo find / -name .env

When I do that, for me, its here;
/home/pi/satnogs-auto-scheduler and indeed has my username and password in the file.

1 Like

I use that command and I get nothing (just a new command prompt).

Isn’t that directory just the one you created for the auto scheduler, anyway? The way this step is written, I though that I had to copy that file from the auto scheduler directory into some system folder called “.env”, but I can’t find it anywhere.


Ok, the fact that you dont get anything, just a command prompt, means that you do not have that file.
(Its a file, not a directory).
You should clone the auto-scheduler files into a directory of its own, not into any system directories.

Edit. Do the command ls -la and you can see the full files, even the hidden . files.

I DID clone the auto scheduler. Where is the .env file located? I only have the “env-dist” file.

ls -la shows no additional (hidden) files in the auto-schedular folder.

The .env file is in the same directory as the other files.
Here is whats in mine.

~/satnogs-auto-scheduler $ ls -la
total 120
drwxr-xr-x 3 pi pi 4096 May 13 17:52 .
drwxr-xr-x. 6 pi pi 4096 May 14 13:45 …
-rw-r–r-- 1 pi pi 208 May 13 17:52 .env
-rw-r–r-- 1 pi pi 185 May 11 08:46 env-dist
drwxr-xr-x 8 pi pi 4096 May 11 08:46 .git
-rw-r–r-- 1 pi pi 79 May 11 08:46 .gitignore
-rw-r–r-- 1 pi pi 33893 May 11 08:46 LICENSE
-rw-r–r-- 1 pi pi 708 May 11 08:46
-rw-r–r-- 1 pi pi 61 May 11 08:46 requirements.txt
-rwxr-xr-x 1 pi pi 15199 May 11 08:46
-rw-r–r-- 1 pi pi 430 May 11 08:46
-rw-r–r-- 1 pi pi 530 May 11 08:49 settings.pyc
-rw-r–r-- 1 pi pi 932 May 11 08:46 setup.cfg
-rw-r–r-- 1 pi pi 10665 May 11 08:46
-rw-r–r-- 1 pi pi 9318 May 11 08:49 utils.pyc

EDIT. Doing a more env-dist will provide the help you need I think
more env-dist

Copy this file to .env and complete the information needed

Username and password to SatNOGS Network using the old authentication system


1 Like