8 hours ago8 hr E-Ink HubSelf-hosted control center for e-ink photo frames, with Immich integration. A single container with a mobile-friendly web UI.Supported frames- BLOOMIN8 E-Ink Canvas (local)- SwitchBot AI Art Frame (cloud, not tested)- Frames running TRMNL firmware: TRMNL, Waveshare PhotoPainter, reTerminal… (local, not tested)- Your own ESP32 / Raspberry Pi frame through an open protocol (local, not tested)Features- Exact previews with smart crop, manual crop, border or blurred background- Collections from uploads or Immich (albums, people, favourites, smart search, "on this day")- Schedules with active hours, battery-friendly pull mode, Bluetooth wake for BLOOMIN8Links- Documentation: https://eink-hub-7ba3a3.gitlab.io/- Unraid guide: https://eink-hub-7ba3a3.gitlab.io/guide/unraid- Source code and issues: https://gitlab.com/yayitazale/eink-hub- Changelog: https://gitlab.com/yayitazale/eink-hub/-/blob/main/CHANGELOG.md- Image: registry.gitlab.com/yayitazale/eink-hub:latestInstall1. Search eink-hub in Apps and click Install.2. Set LOCAL_URL to your Unraid LAN address and port, e.g. http://192.168.1.10:8080. Frames use it to reach the hub, so it can't be "localhost".3. Open the WebUI, choose an admin password and add your frames (or a Simulated Canvas if you have no hardware yet).TailscaleThe template is ready for Unraid's Tailscale integration. Install the Tailscale plugin, edit the container and turn on Use Tailscale. Serve on port 8080 and the state folder are already set. After you approve the login link from the container log, the hub is available at https://eink-hub.<your-tailnet>.ts.net. The hub detects that address by itself and uses it for the QR code shown on the frames. You also get https, which the phone's Bluetooth wake needs.Please use Serve, not Funnel: Funnel makes the whole hub public, admin page included. If you need SwitchBot (the only frame that requires a public address), see the docs to expose only the pictures.NetworkBridge is enough: add frames by IP or with "Search the network". For mDNS discovery, use br0 so the container gets its own LAN IP, and use that IP in LOCAL_URL.Asking for helpPlease include:- Your Unraid version- Your frame model(s)- The container log, or Settings → Server logs in the web UIBugs and feature requests are also welcome as issues on GitLab.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.