Difference between revisions of "SatNOGS Client Setup"
(Fix heading) (Tag: Visual edit) |
(Add link to SatNOGS Client Ansible page) (Tag: Visual edit) |
||
Line 1: | Line 1: | ||
==Introduction== | ==Introduction== | ||
− | <code>satnogs-setup</code> provides a set of scripts for configuring a '''SatNOGS Client''' system. <code>satnogs-setup</code> main function is to bring up a menu-driven console configuration utility and provision the system using Ansible. | + | <code>satnogs-setup</code> provides a set of scripts for configuring a '''SatNOGS Client''' system. <code>satnogs-setup</code> main function is to bring up a menu-driven console configuration utility and provision the system using [[SatNOGS Client Ansible|Ansible]]. |
==Initial Setup== | ==Initial Setup== |
Revision as of 16:06, 20 January 2020
Contents
Introduction
satnogs-setup
provides a set of scripts for configuring a SatNOGS Client system. satnogs-setup
main function is to bring up a menu-driven console configuration utility and provision the system using Ansible.
Initial Setup
Right after the first boot of the system, packages and the configuration tool itself must be updated. Follow the Updating instruction found below.
To configure a SatNOGS Client system:
- SSH into the system and run
sudo satnogs-setup
; this will bring up the configuration menu - Set all options in Basic Configuration (see below)
- Select
Apply
and the Raspberry Pi will configure itself; this may take some time - Select
Back
to exit
Basic Configuration
Setting | Description |
---|---|
SATNOGS_API_TOKEN
|
The API token assigned to your ground station on the SatNOGS Network website, please don’t share your api key as this can give access to anyone to upload and change things in network related to your station and its observations. |
SATNOGS_RX_DEVICE
|
If you are using an RTL-SDR, this is rtlsdr . Other devices supported by gr-satnogs include usrpb200 , usrp2 , airspy/airspymini or hackrf ; a complete list can be found here.
|
SATNOGS_STATION_ELEV
|
The height of your ground station above sea level in metres. |
SATNOGS_STATION_ID
|
The numeric ID assigned to your station in the SatNOGS Network site when the groundstation was created. |
SATNOGS_STATION_LAT
|
The latitude of your station. North is positive, south is negative. |
SATNOGS_STATION_LON
|
The longitude of your station. East is positive, west is negative. |
HAMLIB_UTILS_ROT_ENABLED
|
Whether or not to enable the Hamlibs rotator daemon. Rotctld is a software daemon that provides a network server to control a rotator on a serial port. If you don't have a rotator (like the No rotator setup), enter NO .
|
HAMLIB_UTILS_ROT_OPTS
|
Options for rotcld:
For a yaesu rotator, use For a SatNOGS rotator |
Advanced Setup
A more detailed description on setting up a development environment using the SatNOGS reference setup is given in SatNOGS_Client_Development.
NOTE: To get your station online, you need to set SATNOGS_NETWORK_API_URL to https://network.satnogs.org/api/
Setting | Description |
---|---|
APT_REPOSITORY
|
This options allows you to change the SatNOGS packages repository. For example, to install unstable package builds use:
|
APT_KEY_URL
|
This options allows you to change the SatNOGS packages repository key URL. For example, to install unstable package builds use:
|
APT_KEY_ID
|
This options allows you to specify an alternative SatNOGS packages repository key ID. |
SATNOGS_CLIENT_URL
|
If you to try a development version of satnogs-client, you can change the URL here. The URL needs to be in PIP format. Here are some examples:
|
SATNOGS_RADIO_GR_SATNOGS_VERSION
|
This options allows you to change the version of gr-satnogs package to be installed. For example:
|
RF_GAIN
|
RF Gain value for your SDR hardware. Defaults can be found here.
|
Updating SatNOGS Client Software
To update SatNOGS software, including the configuration tool itself:
- SSH into the system and (re-)run
sudo satnogs-setup
; this will bring up the configuration menu - Select
Upgrade
to upgrade all distribution packages to the latest; this may require a reboot. If this option is not available, running anUpdate
will make it show up - Select
Update
to update the configuration tool - Select
Apply
and the Raspberry Pi will update itself; this may take some time - Before exit, check at the top that you have the latest satnogs-client and gr-satnogs versions
- Select
Back
to exit
WARNING: An update can potentially interrupt a running observation!
Upgrading from Debian 'stretch' to 'buster'
If you have already installed an older version of Debian or Raspbian SatNOGS image based on stretch
(releases <= 2018080300), it is recommended to upgrade to buster
. Support for stretch
will be dropped with the next release of gr-satnogs
.
Method 1: Reflashing and reinstalling (recommended)
The recommended method to upgrade to buster
is reflashing the latest Raspbian SatNOGS image (or reinstalling latest Debian). Follow Raspberry Pi installation instructions and reinstall from scratch.
Method 2: Release upgrade using the configuration tool (advanced)
To upgrade from stretch to buster using the configuration tool:
- SSH into the system
- Make sure you have enough free space on your SD card (>2GiB) by running
df -h /
on the console - Run
sudo satnogs-setup
to bring up the configuration menu - On the Advanced menu, enable
SATNOGS_SETUP_RELEASE_UPGRADE_ENABLED
option, in case there isn't an option like that available run firstUpdate
and then try again to enable it. - On the Main menu, select
Apply
and let Ansible apply the configuration - On the Main menu, select
Upgrade
. The script will check if there is a new release upgrade and ask you to proceed - Keep an eye on the upgrade progress;
dpkg
may prompt for changes - Once the upgrade is completed,
satnogs-setup
will ask for a reboot - After the reboot, make sure you are on the correct release by running
lsb_release -a
- Re-run
sudo satnogs-setup
and selectUpdate
and thenApply
Verification of correct installation
To see if satnogs-client has started successfully, check the logs with journalctl:
$ journalctl -u satnogs-client.service
You should see entries running approximately once per minute that look like this:
Oct 01 23:02:13 raspberrypi satnogs-client[6695]: * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit) Oct 01 23:02:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:02:14,466 - satnogsclient - INFO - [LD] Downlink thread waiting for first downlink packet Oct 01 23:03:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:03:14,450 - apscheduler.executors.default - INFO - Running job "get_jobs (trigger: interval[0:01:00], next run at: 2017-10-01 23:03:14 UTC)" (scheduled at 2017-10-01 23:03:14.423393+00:00) Oct 01 23:03:47 raspberrypi satnogs-client[6695]: 2017-10-01 23:03:47,324 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011 Oct 01 23:03:47 raspberrypi satnogs-client[6695]: 2017-10-01 23:03:47,325 - satnogsclient - DEBUG - Sending message: [] Oct 01 23:03:47 raspberrypi satnogs-client[6695]: 2017-10-01 23:03:47,327 - apscheduler.executors.default - INFO - Job "get_jobs (trigger: interval[0:01:00], next run at: 2017-10-01 23:04:14 UTC)" executed successfully Oct 01 23:04:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:14,453 - apscheduler.executors.default - INFO - Running job "get_jobs (trigger: interval[0:01:00], next run at: 2017-10-01 23:04:14 UTC)" (scheduled at 2017-10-01 23:04:14.423393+00:00) Oct 01 23:04:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:14,484 - apscheduler.executors.default - INFO - Running job "post_data (trigger: interval[0:02:00], next run at: 2017-10-01 23:04:14 UTC)" (scheduled at 2017-10-01 23:04:14.436367+00:00) Oct 01 23:04:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:14,489 - apscheduler.executors.default - INFO - Job "post_data (trigger: interval[0:02:00], next run at: 2017-10-01 23:04:14 UTC)" executed successfully Oct 01 23:04:15 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:15,627 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011 Oct 01 23:04:15 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:15,628 - satnogsclient - DEBUG - Sending message: [] Oct 01 23:04:15 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:15,629 - apscheduler.executors.default - INFO - Job "get_jobs (trigger: interval[0:01:00], next run at: 2017-10-01 23:05:14 UTC)" executed successfully
If you see that, great -- you're ready to schedule your first observation! If not, check out the Troubleshooting page.