Overview

Configuration & operation

Unofficial preview — structured from the tempest-inky README.

Managing the service#

# Check whether the timer is running
systemctl status tempest-inky.timer
 
# See recent logs (most useful for debugging)
journalctl -u tempest-inky.service -n 50
 
# Force an immediate refresh
sudo systemctl start tempest-inky.service
 
# Stop automatic refreshes
sudo systemctl stop tempest-inky.timer
 
# Re-enable after stopping
sudo systemctl start tempest-inky.timer

Manual run (without the timer)#

cd ~/tempest-inky
venv/bin/python3 main.py --force

Updating#

Pull the latest code and re-run the installer. It is safe to run as many times as needed — it rebuilds the venv only if the Python version has changed, updates all packages, and refreshes the systemd unit files:

cd ~/tempest-inky
git pull
bash install.sh

No reboot is required for code-only updates. The timer picks up the new main.py on its next tick. If the systemd unit files changed (e.g. after upgrading from the old cron-based setup), reboot once after the first run of the new installer.

To check that the update took effect:

journalctl -u tempest-inky.service -n 20

Troubleshooting#

Display never updates after install
  1. Check that you rebooted after installation.
  2. Check logs: journalctl -u tempest-inky.service -n 50
  3. Try a manual run to see errors directly:
    cd ~/tempest-inky
    sudo systemctl start tempest-inky.service
    journalctl -u tempest-inky.service -n 20
"No module named inky" or import errors

The virtual environment may be corrupted (common after a system Python upgrade). Re-run the installer — it rebuilds the venv cleanly:

cd ~/tempest-inky
bash install.sh
Display shows "DATA FETCH ERROR"

This appears only when a fetch fails and there is no cached reading to fall back on — normally a failed fetch redraws the last good data with a STALE marker instead. Your API credentials may be wrong, or the Pi has no internet. Check:

# Test connectivity
curl -s "https://swd.weatherflow.com/swd/rest/observations/station/YOUR_ID?token=YOUR_TOKEN" | python3 -m json.tool | head -20
 
# Check secrets file
cat ~/secrets.py
SPI / display not detected

Verify SPI is enabled:

ls /dev/spidev*   # should show /dev/spidev0.0

If missing, run sudo raspi-config → Interface Options → SPI → Enable, then reboot.

Works fine but stops after a few months

The most common cause is SD card corruption from power loss, or sectors wearing out on a low-quality card. Recommendations:

  • Use a name-brand SD card (Samsung PRO Endurance or SanDisk High Endurance are designed for constant-write workloads like this)
  • Avoid powering off the Pi by unplugging — use sudo shutdown -h now first whenever possible
  • If it stops working, re-run bash install.sh before reinstalling the OS — it rebuilds the venv and re-registers the service, which fixes most software-level failures

← Back to installation · Display regions · Design rationale · Overview

Updated

Was this page helpful?