A simple display for my Pimoroni Inky Impression combined with my Home Assistant.
  • Rust 99%
  • Shell 0.9%
  • Makefile 0.1%
Find a file
2026-05-31 15:33:39 +02:00
.cargo feat: initial control 2026-05-30 18:44:48 +02:00
src feat: cleanup weather & add extreme events 2026-05-31 15:33:39 +02:00
.env.sample feat: first version with HA integration 2026-05-30 19:18:28 +02:00
.gitignore feat: first version with HA integration 2026-05-30 19:18:28 +02:00
Cargo.lock fix: variable refresh rate 2026-05-30 19:57:12 +02:00
Cargo.toml fix: variable refresh rate 2026-05-30 19:57:12 +02:00
deploy.sh fix: nicer restart 2026-05-30 20:02:38 +02:00
LICENSE fix: license and readme 2026-05-31 13:44:18 +02:00
Makefile feat: first version with HA integration 2026-05-30 19:18:28 +02:00
README.md fix: license and readme 2026-05-31 13:44:18 +02:00

smartscreen-rs

Raspberry Pi e-ink dashboard that pulls data from Home Assistant and renders it on a Pimoroni Inky Impression (UC8159 7-color display).

What it shows

Weather, climate, sun position, power consumption, plant sensors, and 3D printer status.

Requirements

  • Raspberry Pi with SPI enabled
  • UC8159-based e-ink display (GPIO pins: RST=27, BUSY=17, DC=22, CS=8)
  • Home Assistant instance with a long-lived access token

Configuration

Copy .env.sample to .env and fill in your values:

HA_URL=https://your-ha-instance.com
HA_TOKEN=your_long_lived_token

Deploy

Cross-compiles for aarch64 and deploys via rsync + systemd:

make deploy       # build & deploy once
make watch        # redeploy on every change

Requires cargo-zigbuild, cargo-watch, and SSH access to your PI (configure the deploy.sh to match your SSH config).