Skip to content

Repository files navigation

eInk Labels for SignalK

npm version npm downloads SignalK Plugin CI codecov code style: oxfmt License boat tech directory

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.

Companionway Tidal Clock

What is an ESL?

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.

Quick Start

  1. Check the pre-requisites - mainly a Linux SignalK server with a Bluetooth Low Energy adapter, or the SignalK BLE Manager API
  2. Install eInk Label Displays from the SignalK AppStore ( under Apps & Plugins )
  3. In the plugin config, add a label, choose "All discovered devices" and a template such as the Tide Clock

Documentation

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-cli tool for testing templates and labels without SignalK
  • Extending - adding label hardware or new ways of producing content

Other ESL and General eInk Resources

Components

Notes and Experiences

See also the Boat Tech Directory.