No description
  • Python 89.6%
  • Shell 10.4%
Find a file
2026-08-11 20:09:17 +02:00
bin Fix inky package installation and add upgrade flag 2025-10-05 18:32:06 +02:00
.gitignore Add example-response.json to gitignore 2025-10-05 13:20:55 +02:00
CLAUDE.md Add API documentation link to CLAUDE.md 2025-10-05 13:15:02 +02:00
main.py update odometer for new car 2026-08-11 20:09:17 +02:00
odometer.py update odometer for new car 2026-08-11 20:09:17 +02:00
price_fetcher.py add supplier and product id 2025-10-05 13:50:07 +02:00
README.md Update cron schedule to run at 5 minutes past the hour 2025-10-06 07:42:01 +02:00
requirements.txt Fix inky package installation and add upgrade flag 2025-10-05 18:32:06 +02:00

tiny-info-screen

Display local electricity prices for the coming few hours on a small e-paper display. The idea is to make it easy to see when it's least expensive to charge our cars.

Setup

Raspberry Pi Setup

First, install system dependencies:

./bin/setup-raspberry-pi

This installs required libraries for Pillow, fonts, and the InkyPHAT display.

Manual Setup

Create and activate virtual environment:

python3 -m venv venv
source venv/bin/activate

Install requirements:

pip3 install -r requirements.txt

Run

Development mode (saves to PNG):

python3 main.py --dev

Production mode (displays on InkyPHAT):

python3 main.py

Or use the helper script:

./bin/update-display

Scheduled Updates (Cron)

To automatically update the display every hour on a Raspberry Pi:

  1. Edit your crontab:
crontab -e
  1. Add this line to run every hour at 5 minutes past:
5 * * * * /home/jtj/tiny-info-screen/bin/update-display >> /home/jtj/tiny-info-screen/cron.log 2>&1

The display will now update automatically every hour at 5 minutes past. Check cron.log for any errors.

Development

Use this to re-execute whenever the file changes:

while inotifywait -e close_write main.py; do python3 ./main.py --dev; done