CAUTION: The Instructions about setting up the Raspberry Pi software are primarily "Memory Joggers" for the author and may not be suitable for your purposes, nor should you assume they are error-free.
The Linux server (and Linux laptop) used in this project runs 64-bit versions of the Fedora operating system. This server runs a copy of the MariaDB database that is available to nodes on the Local Area Network which runs on a gigabit Ethernet network that includes the house and the shed in the garden. When required, the nodes on the LAN can connect to the main house network that provides access to the Internet.
Before starting the development (or installation) of the Backyard Sensor software on the Raspberry Pi 4 needs to be loaded with an operating system. This can be achieved by using the Fedora Raspberry Pi Imager. If that is currently installed on your Fedora system, you can install it onto a micro SD card (I'm using a good quality 128GB card). The imager can be installed wit the following command:
> sudo dnf install rpi-imager
Later, communication with the Raspberry Pi will be via VNC so it does not need a display, mouse or keyboard of its own, so ensure that the Linux server has it installed. If not, refer to this page to install it. NOTE: There are other VNC systems that can be used if you wish to look for an alternative.
When you run the program follow the steps below.
(1) select CHOOSE OS. In the first screen select Raspberry Pi OS (Other). (2) Scroll down the screen until you get to Raspberry Pi OS (64-bit) and select (3).
(3) When you get back to the initial display, select CHOOSE STORAGE. (4) Select the appropriate Storage Device, in my case it will be Generic STORAGE_DEVICE (Name) - 127.9GB. Select to suit your micro SD card.
(5) At the bottom right corner of the initial display there is a gear wheel symbol. Select it. (6) Select the desired Image Customization options. I will select to use always so options will be remembered.
(7) Check set hostname and enter your desired hostname. (8) Check Enable SSH then select Use password authentication. (9) Enter your desired Username. Enter your secure Password.
(10) If you wish to enable the Wi-Fi and check Configure wireless LAN and do steps 11 to 14 inclusive. (11) Enter your local Wi-Fi network's SSID. (12) Select Hidden SSID if your Wi-Fi uses a hidden SSID. (13) Enter your Wireless LAN Password. (14) Select your Wireless LAN country. I will select AU for Australia. Select to suit your location.
(15) Check the Set locale settings. (16) Select your Time zone. I will use Australia/Adelaide as my time zone. Select to suit your location. (17) Select your Keyboard layout. I will select us for my keyboard layout. Select to suit your keyboard.
(18) Under Persistent settings, I will select Eject media when finished. (19) Select the SAVE button.
(20) When you get back to the initial display, select WRITE to begin. (21) Select YES on the Warning screen to start the installation of the operation system on the micro SD card. (22) You will be asked for your password to authenticate the operation. (23) Select Authenticate to continue.
(24) Insert micro SD card into the Raspberry Pi, add a keyboard, display and power supply, then boot. (25) Open a terminal session and enter sudo apt update (26) Enter the command sudo apt upgrade -yThis command may take quite some time to run, so be patient. (27) Enter the command sudo reboot now
(28) Open a terminal session and enter the command sudo raspi-config (29) Select 2 Display Options (30) Select D5 VNC Resolution (31) Select VNC Resolution to match the monitor used on the server. I will select 1920x1080. (32) On the top menu select 3 Interface Options (33) Select I3 Enable/disable graphical remote access using RealVNC. Then select <Yes>. (34) From the top menu select 6 Advanced Options. (35) Select A1 Expand Filesystem. (36) From the top menu select 6 Advanced Options. (37) Select AA Network Config. (38) Select 2 NetworkManager. (39) From the top menu Select <Finished>. (40) Select <Yes> to the question Would you like to reboot now?
(41) To set up the Ethernet connection, on the main screen of the Raspberry Pi in the top right corner select the Network Icon. (42) Select Advanced Options. (43) Select Edit Connections. (44) Double click in the Ethernet Device Name (probably "Wired connection 1" or similar). (45) Enter the Ethernet connection parameters. In this project, the local Ethernet sub-net is on the 10.128 subnet, the Wi-Fi is on the 192.168 subnet. For this system, another Raspberry Pi provides the gateway from the Ethernet cable LAN. This node must be set as the gateway for the 10.128 subnet. The node's IP address can be found in the main server's /etc/hosts file.
(46) This system does not run a local DNS server and name resolution is achieved by copying the /etc/hosts file from the mail server.
(47) Open a terminal session and enter sudo reboot now
(48) Once the raspberry Pi is running via the Ethernet connection, you can reduce the power consumption by turning off Bluetooth and Wi-Fi. This can be easily done by clicking on the Bluetooth and Wi-Fi icons on the top right corner of the display. Note: Be sure that the Pi is actually running via the Ethernet cable before turning the Wi-Fi off, otherwise you will lose communication with the Pi.
(49) Install a Network Time setting program by entering the commandsudo apt install ntp on the command line and follow the prompts. (50) Install an NTP Server by entering the command sudo nano /etc/ntp.conf and adding the name of at least one time server than the Raspberry Pi can reach on its network. On this local network, the node "typhon" is the NTP Server, so this line server typhon would be inserted in the position indicated by the comments in the file. (51) Restart the NTP program using the updated NTP server using the command sudo service ntp restart
(52) Install a serial terminal for debugging purposes. Select one of your choice, but I will use CuteCom. From the console enter sudo apt install cutecom
Licenced under Creative Commons Attribution Share Alike 4.0 International or better by Mark Little (2022 - 2024)