Installation Types

Firefly Logger has three support installation types:

  • Raspberry Pi Image - This is a complete image of Debian 12 for a Pi including a pre-configured and ready-out-of-the-box appliance for any Field Day operation. This method is recommended for most users of Firefly Logger.

  • Debian Packages - Add Firefly Logger to an existing Debian-based Linux installation. Supported versions are Debian 12 Bookworm and Debian 11 Bullseye.

  • Manual Installation - Should work on any "LAMP Stack" operating system. Probably works fine on the BSDs and even Windows although it is not tested there.

Full Raspberry Pi Image

This installation process is the same as creating a normal Raspberry Pi OS image using the Raspberry Pi Imager utility. There is a step-by-step installation guide available but the basic steps are:

  1. Download the latest release image. This will be named firefly-logger-X.Y-aarch64.img.xz where "X.Y" is the version.
  2. Use the Rapsberry Pi Imager tool to write the image to an SD Card a. Use the "OS cusotmisation settings" screen to set up a wireless network (if needed) and the timezone if desired. b. Do NOT use the "OS customisation settings" to enable SSH as it's already pre-configured in the image nor set an alternate initial user. The image and all supprot documentation assumes the default 'pi' user. The default password is 'raspberry'.
  3. Insert the SD card into the Pi and power it on
  4. Wait about 60-90 seconds for the Pi to boot, resize the root image, and run the first boot setup of Firefly logger.
  5. Run ping firefly.local to test network connectivity.
  6. Browse to http://firefly.local. You will be presented with a certificate error which is normal. Accept the self-signed certificate to continue.

Debian Installation

Installation is supported on in-support versions of Debian (currently Debian 12 Bookworm and Debian 11 Bullseye) through use of apt/deb and the PacketWarriors software repository. Installation on a supported Debian release is as follows.

  1. Install the PacketWarriors software repository:
wget -O/tmp/packetwarriors-repo.deb https://repo.packetwarriors.com/packetwarriors-repo.deb
dpkg -i /tmp/packetwarriors-repo.deb
apt update
  1. Install the logger with apt:
apt install firefly-logger
  1. That's it! The logger should be available on the system at /firefly-logger. For example if on the local Pi it would be http://localhost/firefly-logger.

  2. (Optional) To create a "turnkey" system where Firefly Logger is the only web application and to force Apache to redirect to it, execute:

firefly-logger-takeover

Note that this will force redirection to a TLS-enabled site (for cookie support) and you will be prompted for a certificate warning or a "Potential Security Risk Area" or something of the like. It is safe to accept the warning.

Other Linux Installation

Firefly Logger should work on any reasonable Linux system with relatively modern packages available:

  • PHP v8.1 or greater
  • MariaDB v10 or greater (should also would work with MySQL 8 unless these platforms diverge further)
  • Webserver that supports PHP via FastCGI

This installation assumes the user is reasonably familiar with Linux and can follow non-step-by-step directions.

  1. Install the appropriate pre-requisites: apache 2.4, PHP 8.1+, PHP-FPM, MariaDB 10+

  2. Download the latest release .zip file, uncompress, and cd to the distribution.

  3. Execute make install

  4. Enable the appropriate system services similar to:

systemctl enable php8.2-fpm
systemctl start php8.2-fpm
systemctl enable apache2
systemctl start apache2
systemctl enable mariadb
systemctl start mariadb
  1. The script firefly-logger-loaddb may work to setup the database depending on the specifics of the system configuration. If not:

  2. Create a database and database user for Firefly then load /var/www/firefly-logger/load.sql into the database. For example:

CREATE DATABASE ffdl;
GRANT ALL ON ffdl.* TO 'ffdl'@'localhost' IDENTIFIED BY 'ffdl';
FLUSH PRIVILEGES;
USE ffdl;
SOURCE /var/www/html/load.sql;
  • Configure the database appropriately in /var/www/firefly-logger/api/db.php

  • The logger should be available on the system at /firefly-logger. For example if on the local Pi it would be http://localhost/firefly-logger.

Entering the root user of MariaDB uses the command mysql -u root ffdl. If your database has a password, include -p after the word root.

Notes on Upgrading

Depending on installation method...

Image

Replace the image with a new release image as outlined above.

Debian Packages

firefly-logger (and wsjt2ffdl) will update with a standard apt update followed by apt upgrade.

Manual Installation

Repeat the installation directions after first deleting the existing database. It is not recommended to upgrade the database in-place and is not supported given that any one log is useful for only up to 48 hours. For the database:

USE ffdl;
DROP TABLE QSO;
SOURCE /var/www/html/load.sql;

In-place upgrades of existing databases are not supported. Ensure all data has been saved/exported before upgrading the system.