Initial scaffold: NixOS + SvelteKit dashboard + Python renderer

This commit is contained in:
Ruben Hensen
2026-06-07 18:15:06 +02:00
commit 50256fa384
25 changed files with 4491 additions and 0 deletions
+40
View File
@@ -0,0 +1,40 @@
# Waveshare 12.48" driver
The 12.48" driver lives in a **separate repo** from the main Waveshare
e-Paper one — it's at [`waveshareteam/12.48inch-e-paper`](https://github.com/waveshareteam/12.48inch-e-paper).
The big `waveshareteam/e-Paper` repo does **not** contain it.
## Install
Run this from the project root (`~/Repos/eink/`):
```sh
git clone --depth 1 https://github.com/waveshareteam/12.48inch-e-paper.git /tmp/waveshare-12in48
cp /tmp/waveshare-12in48/RaspberryPi/python/lib/epd12in48.py renderer/waveshare/
cp /tmp/waveshare-12in48/RaspberryPi/python/lib/epd12in48b.py renderer/waveshare/
cp /tmp/waveshare-12in48/RaspberryPi/python/lib/epd12in48b_V2.py renderer/waveshare/
cp /tmp/waveshare-12in48/RaspberryPi/python/lib/epdconfig.py renderer/waveshare/
rm -rf /tmp/waveshare-12in48
```
After copying, `renderer/waveshare/` should look like:
```
renderer/waveshare/
├── __init__.py # (already present)
├── README.md # (already present, this file)
├── epd12in48.py # B/W variant driver
├── epd12in48b.py # B/W/Red (Module B) original driver
├── epd12in48b_V2.py # B/W/Red (Module B) v2 driver — newer revision
└── epdconfig.py # SPI + GPIO abstraction (uses spidev + RPi.GPIO)
```
The renderer (`renderer/render.py`) imports `from waveshare import epd12in48`
(B/W) or `from waveshare import epd12in48b` (B/W/Red). For the v2 panel
revision, edit `render.py` to import `epd12in48b_V2` instead.
## Why not vendor it from the start?
It's vendor code with its own license headers — kept out of git until
the user opts in to keep the repo tidy and the license boundary clear.
Add it to `.gitignore` if you'd rather pull it fresh on each deploy.