Difference between revisions of "Raspberry Pi"

From SatNOGS Wiki
m
(Download: use one link to have only one to update on changes)
(20 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{Message|This page assumes you have an account and a ground station registered on either network.satnogs.org or network-dev.satnogs.org. Make note of your station ID and API Key.}}
 
 
[[File:B3342fcc865731d69e0c9d7a8b1abb887185bc13 1 531x500.jpg|alt=Libre Space Foundation Raspberry Pi Case|thumb|Libre Space Foundation Raspberry Pi Case, [https://www.thingiverse.com/thing:3233687 on thingiverse]]]
 
[[File:B3342fcc865731d69e0c9d7a8b1abb887185bc13 1 531x500.jpg|alt=Libre Space Foundation Raspberry Pi Case|thumb|Libre Space Foundation Raspberry Pi Case, [https://www.thingiverse.com/thing:3233687 on thingiverse]]]
  
= Intro =
+
==Introduction==
  
The Raspberry Pi 3 is the reference platform for SatNOGS (see our [[SatNOGS Client Ansible|Ansible guide]] to install SatNOGS on other Linux machines). You can try using various distributions for this (eg. Arch, Fedora), but the one we suggest is our custom image based on latest Raspbian.  
+
The Raspberry Pi (version 3 and 4) is the reference platform for SatNOGS (see our [[SatNOGS Client Ansible|Ansible guide]] to install SatNOGS on other Linux machines). You can try using various distributions for this (eg. Debian/Armbian, Arch, Fedora), but the one we suggest is our custom image based on latest Raspbian.
  
==  [https://gitlab.com/librespacefoundation/satnogs/satnogs-pi-gen/-/jobs/artifacts/2018080300/download?job=release <span class="glyphicon glyphicon-save"></span>Download]==
+
{{Message|This page assumes you have an account and a ground station registered on either network.satnogs.org or network-dev.satnogs.org. Make note of your station ID and API Key.}}
  
You can download the latest Raspbian SatNOGS image following the links from the [https://gitlab.com/librespacefoundation/satnogs/satnogs-pi-gen/tags latest tag on GitLab]. This image has the SatNOGS setup script installed, the SSH server enabled and all required packages preinstalled. Click on the cloud icon and then click "Download release". You will get an Artifacts.zip file:
+
==Download==
 +
'''<big>Raspbian SatNOGS Image:</big> [https://gitlab.com/librespacefoundation/satnogs/satnogs-pi-gen/-/jobs/artifacts/2020030400/download?job=release <big>artifacts.zip</big> <span class="glyphicon glyphicon-save"></span>]'''  (Release: 2020030400)
  
=== Artifacts list ===
+
Download the latest Raspbian SatNOGS Image from above (or via the "Download" icon on the right side of the [https://gitlab.com/librespacefoundation/satnogs/satnogs-pi-gen/tags latest tag page on GitLab]). This image has the SatNOGS setup script installed, the SSH server enabled and all required packages preinstalled. You will get an <code>artifacts.zip</code> file with the following content:
  
The current artifacts list consists of:
+
*A Zipped image file
* A Zipped image file
+
*An Image info file
* An Image info file
+
*A SHA256 checksum file
* A SHA256 checksums file
 
  
== Data integrity verification ==
+
===Data integrity verification===
  
You should verify the data integrity of the artifacts by checking the SHA256 checksums. On Linux, run <code>sha256sum -c sha256sums</code> in the directory where the artifacts are downloaded
+
You should verify the data integrity of the artifacts by comparing the SHA256 checksums. On Linux, run <code>sha256sum -c sha256sums</code> in the directory where the artifacts are downloaded and unzipped.
  
 
Example:
 
Example:
Line 28: Line 27:
 
</pre>
 
</pre>
  
== Flashing ==
+
==Flashing==
 
[https://www.raspberrypi.org/documentation/installation/installing-images/README.md Follow the usual Raspbian flashing instructions], and boot your Raspberry Pi.
 
[https://www.raspberrypi.org/documentation/installation/installing-images/README.md Follow the usual Raspbian flashing instructions], and boot your Raspberry Pi.
  
== Configuration==
+
==Getting console access==
The Raspberry Pi can be set up by connecting it to a keyboard and monitor, by connecting it to wired Ethernet, or by editing files in the /boot mount on the flashed USB stick.
+
You can log in the Raspberry Pi by connecting it to a keyboard and monitor or through network via an SSH connection.
 +
 
 +
===Keyboard and monitor===
 +
Once your Raspberry Pi is booted, log in with username "'''pi'''" password "'''raspberry'''".
  
=== Modifying the /boot mount ===
+
===Ethernet===
This eliminates the need for a keyboard and monitor. Note your OS may mount /boot in a different location, and [https://raspberrypi.stackexchange.com/questions/10251/prepare-sd-card-for-wifi-on-headless-pi#comment98121_57023 Windows users have line ending problems]. Suggested actions:
+
If you are using wired Ethernet you should get connectivity right away. You just need to find the IP address of Raspberry Pi (e.g. in your router management interface). Log in with SSH using username "'''pi'''" password "'''raspberry'''", for example:
 +
$ ssh pi@192.168.1.2
 +
If your network supports [[wikipedia:Zero-configuration_networking|<code>zeroconf</code>]], then you can use the hostname of your Pi:
 +
$ ssh pi@raspberrypi.local
  
Set up wifi:
+
===Pre-boot wireless configuration===
 +
If neither keyboard/monitor, nor a wired Ethernet are available, you can set up a WiFi connection before boot by mounting the boot partition of the flashed SD card and editing files directly. Note your OS may mount boot partition in a different location. [https://raspberrypi.stackexchange.com/questions/10251/prepare-sd-card-for-wifi-on-headless-pi#comment98121_57023 Windows users have line ending problems]. Suggested actions:
  
    edit /boot/wpa_supplicant.conf
+
$ $EDITOR /media/Raspbian_SatNOGS-boot/wpa_supplicant.conf
  
 
contents: (note key_mgmt options include NONE, WPA-PSK, WPA-EAP)
 
contents: (note key_mgmt options include NONE, WPA-PSK, WPA-EAP)
Line 53: Line 59:
 
     }
 
     }
  
=== Ethernet ===
+
==Configuration==
If you are using wired Ethernet you should get connectivity right away.
 
  
=== Wireless setup ===
+
===Raspberry Pi Setup===
If you are using wireless then see [https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md this doc for network configuration instructions] after booting.
+
Once your Raspberry Pi is booted, log in with username "'''pi'''" password "'''raspberry'''" and run:  
 
 
== Keyboard and monitor setup ==
 
Once your Raspberry Pi is booted, log in with username "pi" password "raspberry" and run:  
 
 
<pre>
 
<pre>
sudo raspi-config
+
$ sudo raspi-config
 
</pre>
 
</pre>
  
 
You will want to be sure to do the following:
 
You will want to be sure to do the following:
  
* Set a strong, unique password
+
*Set a strong, unique password
* Change localization settings:
+
*Change localization settings:
** by default the rpi locale is configured for EN-GB, change as appropriate (ie: to EN_US.UTF-8)
+
**by default the rpi locale is configured for EN-GB, change as appropriate (ie: to EN_US.UTF-8)
** set timezone (we recommend UTC so your logs match the times in Network)
+
**set timezone (we recommend UTC so your logs match the times in Network; UTC is under the 'none of the above' submenu)
** set keyboard layout, again this is defaulting to a UK layout
+
**set keyboard layout, again this is defaulting to a UK layout
** set wifi country
+
**set wifi country
** expand filesystem
+
**expand filesystem (under the Advanced menu)
* Finish and reboot
+
*Configure network or WiFi (see [https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md this doc for network configuration instructions])
 
+
*Finish and reboot
 
 
== SatNOGS Setup ==
 
 
 
SSH to the Raspberry Pi with user "pi" and password "raspberry" (no quotes).
 
  
Follow [[SatNOGS_Client_Ansible#SatNOGS_Client_Setup|SatNOGS Client Setup]] instructions to configure the system.
+
===SatNOGS Setup===
 +
SSH to the Raspberry Pi with user "'''pi'''" and your new password.
  
= Fedora =
+
Follow [[SatNOGS Client Setup]] instructions to configure the system.
  
Instructions for installing on Fedora can be found [[Fedora_Installation|here]].
+
[[Category:Build]]
 +
[[Category:Software]]

Revision as of 22:28, 5 April 2020

Libre Space Foundation Raspberry Pi Case
Libre Space Foundation Raspberry Pi Case, on thingiverse

Introduction

The Raspberry Pi (version 3 and 4) is the reference platform for SatNOGS (see our Ansible guide to install SatNOGS on other Linux machines). You can try using various distributions for this (eg. Debian/Armbian, Arch, Fedora), but the one we suggest is our custom image based on latest Raspbian.

Idea.png
This page assumes you have an account and a ground station registered on either network.satnogs.org or network-dev.satnogs.org. Make note of your station ID and API Key.

Download

Raspbian SatNOGS Image: artifacts.zip (Release: 2020030400)

Download the latest Raspbian SatNOGS Image from above (or via the "Download" icon on the right side of the latest tag page on GitLab). This image has the SatNOGS setup script installed, the SSH server enabled and all required packages preinstalled. You will get an artifacts.zip file with the following content:

  • A Zipped image file
  • An Image info file
  • A SHA256 checksum file

Data integrity verification

You should verify the data integrity of the artifacts by comparing the SHA256 checksums. On Linux, run sha256sum -c sha256sums in the directory where the artifacts are downloaded and unzipped.

Example:

$ sha256sum -c sha256sums 
2017-09-29-Raspbian-SatNOGS-master-lite.info: OK
image_2017-09-29-Raspbian-SatNOGS-master-lite.zip: OK

Flashing

Follow the usual Raspbian flashing instructions, and boot your Raspberry Pi.

Getting console access

You can log in the Raspberry Pi by connecting it to a keyboard and monitor or through network via an SSH connection.

Keyboard and monitor

Once your Raspberry Pi is booted, log in with username "pi" password "raspberry".

Ethernet

If you are using wired Ethernet you should get connectivity right away. You just need to find the IP address of Raspberry Pi (e.g. in your router management interface). Log in with SSH using username "pi" password "raspberry", for example:

$ ssh pi@192.168.1.2

If your network supports zeroconf, then you can use the hostname of your Pi:

$ ssh pi@raspberrypi.local

Pre-boot wireless configuration

If neither keyboard/monitor, nor a wired Ethernet are available, you can set up a WiFi connection before boot by mounting the boot partition of the flashed SD card and editing files directly. Note your OS may mount boot partition in a different location. Windows users have line ending problems. Suggested actions:

$ $EDITOR /media/Raspbian_SatNOGS-boot/wpa_supplicant.conf

contents: (note key_mgmt options include NONE, WPA-PSK, WPA-EAP)

   ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
   update_config=1
   country=US
   
   network={
       ssid="NETWORK_NAME"
       psk="password"
       key_mgmt=WPA-PSK
   }

Configuration

Raspberry Pi Setup

Once your Raspberry Pi is booted, log in with username "pi" password "raspberry" and run:

$ sudo raspi-config

You will want to be sure to do the following:

  • Set a strong, unique password
  • Change localization settings:
    • by default the rpi locale is configured for EN-GB, change as appropriate (ie: to EN_US.UTF-8)
    • set timezone (we recommend UTC so your logs match the times in Network; UTC is under the 'none of the above' submenu)
    • set keyboard layout, again this is defaulting to a UK layout
    • set wifi country
    • expand filesystem (under the Advanced menu)
  • Configure network or WiFi (see this doc for network configuration instructions)
  • Finish and reboot

SatNOGS Setup

SSH to the Raspberry Pi with user "pi" and your new password.

Follow SatNOGS Client Setup instructions to configure the system.