A SignalK plugin to display data from SignalK paths, Resource APIs and plugins on Electronic Shelf Labels (ESL) over a Bluetooth Low Energy (BLE) connection using simple SVG templates, or optionally created from a crafted prompt by GenAI if the companion @rhizomatics/signalk-einklabel-genai-plugin is installed. Supports ESLs from two of the major Chinese manufacturers, and requires no firmware or hardware modifications, switch on and go.
Electronic Shelf Labels are eInk devices that consume very little battery energy, presuming they are not constantly updated - the battery is used only when the display changes (which can take 5-10 seconds) and a periodic BLE check for incoming changes. Perfect for info that changes only once or twice a day, like tidal information.
Since they are designed to be used in large quantity in small shops, they are cheap and simple devices. Earlier models required dedicated controllers, or updates over Wifi or NFC, whereas many modern ones are standalone BLE devices that can be updated from a phone or server.
Being battery operated, they can be stuck on anywhere without wiring - the only location constraints are bluetooth range, visibility (they need ambient light since the display is more like paper than a traditional lit-up electronic display) and, for some labels, being out of the weather if they are not waterproof, although IP65 labels are available.
- Check the pre-requisites - mainly a Linux SignalK server with a Bluetooth Low Energy adapter, or the SignalK BLE Manager API
- Install eInk Label Displays from the SignalK AppStore ( under Apps & Plugins )
- In the plugin config, add a label, choose "All discovered devices" and a template such as the Tide Clock
Full documentation is at signalk-einklabel.rhizomatics.org.uk:
- Getting Started - pre-requisites, installation, setting up a label, and which labels to buy
- Templates - how templates work, binding them to SignalK data, and designing your own
- Examples - the bundled templates, with the sizes and data each one uses
- Bluetooth - choosing an adapter and keeping Bluetooth reliable
- FAQ - answers to common problems
- Command Line Interface - the
esl-clitool for testing templates and labels without SignalK - Extending - adding label hardware or new ways of producing content
- Open ePaper Link - Alternative open source firmware to flash onto eInk shelf labels, with Home Assistant integration.
- zhsunyco-esl - Python interface
- WoLink - Python interface and protocol analysis
- e-ink dashboard for Signal K - Waveshare display based multi instrument display.
- eInk Dashboard Modern SK - SignalK dashboard for non-ESL eInk display.
- esp32-esl-system - Docker and ESP32 based system for updating ESLs.
- hass-gicisky - Home Assistant integration for Gicisky ESLs ( a similar vendor to Zhsunyco). Uses imagespec for templating.
- ha-panda - Home Assistant integration for Panda ESLs ( a similar vendor to Zhsunyco).
- Cabalist Gicisky Image Notes
- Dmitry.gr - Personal site of an ESL hacker
- Aaron Christobel - YouTube channel of an ESL hacker.
- rbaron.net - Blog of an early ESL hacker. ### Retail
- Pimoroni - All shapes and sizes of eInk displays, aimed at hackers, and with an inky GitHub project to support them.
- WaveShare - Wide range of eInk displays for hardware projects, not limited to ESLs.
See also the Boat Tech Directory.