Skip to content

Releases: wearelucid/lucid-touch-kiosk

v0.2.3

Choose a tag to compare

@tobdup tobdup released this 29 Sep 08:24

Download LucidTouchKiosk-0.2.3-arm64.zip — the ready-to-run app for macOS on Apple Silicon. (The "Source code" archives below are the repository, not the app.)

Fix: black screen when started at login

Started as a login item, the kiosk usually came up before the network did. Its first attempt to load the page failed with ERR_INTERNET_DISCONNECTED, and it never tried again — a black screen until someone restarted it.

The kiosk now keeps reloading the page after a failure — after 2, 4 and 8 seconds, then every 30 seconds — until it loads. The same covers a DNS hiccup or a server that is briefly unreachable. The log shows one line for the failure, a repeat count, and when the page finally loaded:

ERROR  app  page failed to load: -106 ERR_INTERNET_DISCONNECTED → … — retrying
INFO   app  page loaded after 3 failed attempt(s)

Upgrading

Replace the app and keep config.json next to it — accepted serial devices and all settings carry over. The app is unsigned: clear the quarantine flag once and grant Input Monitoring, as described in the README.

v0.2.2

Choose a tag to compare

@tobdup tobdup released this 29 Sep 07:55

Download LucidTouchKiosk-0.2.2-arm64.zip — the ready-to-run app for macOS on Apple Silicon. (The "Source code" archives below are the repository, not the app.)

Page errors with their actual message

Errors from the kiosk page are now logged with what actually went wrong. Where the log used to read

ERROR  page  Failed to reconnect to last port: [object DOMException]

it now reads

ERROR  page  Failed to reconnect to last port: InvalidStateError: The port is already open.

This includes messages the page writes while it is still loading, and uncaught exceptions and unhandled promise rejections in the page.

Upgrading

Replace the app and keep config.json next to it — accepted serial devices and all settings carry over. The app is unsigned: clear the quarantine flag once and grant Input Monitoring, as described in the README.

v0.2.1

Choose a tag to compare

@tobdup tobdup released this 29 Sep 07:33

Download LucidTouchKiosk-0.2.1-arm64.zip — the ready-to-run app for macOS on Apple Silicon. (The "Source code" archives below are the repository, not the app.)

New: a log file

The app now writes logs/kiosk.log next to itself (or to ~/Library/Logs/Lucid Touch Kiosk/ when installed in /Applications). The test page shows the path and has an Open log folder button.

It records serial events, touch panel state, warnings and errors from the kiosk page's own console, failed page loads, crashed helper processes, and unexpected exceptions. Individual touches are not logged.

The log is built to run unattended for months:

  • A message that recurs within a minute is counted instead of written — a retry loop becomes one line plus — repeated 1 799× since 14:00:02.
  • At 5 MB the file rotates, keeping four older ones: 25 MB at most.
  • Every line is on disk immediately, so nothing is lost on a crash.

Fixes

  • An unexpected exception no longer puts Electron's error dialog on the kiosk screen; it goes to the log.

Upgrading

Replace the app and keep config.json next to it — accepted serial devices and all settings carry over. The app is unsigned: clear the quarantine flag once and grant Input Monitoring, as described in the README.

v0.2.0

Choose a tag to compare

@tobdup tobdup released this 23 Sep 09:40

Download LucidTouchKiosk-0.2.0-arm64.zip — the ready-to-run app for macOS on Apple Silicon. (The "Source code" archives below are the repository, not the app.)

New: serial devices

Kiosk pages can now use serial devices such as barcode scanners through the Web Serial API. Chrome asks the user to pick a port on every connection; a kiosk has nobody to ask, so devices are accepted once on the test page instead — 8 · Serial devices: search, test, accept — and stored in config.json.

The kiosk page then receives the accepted device without a dialog, both through requestPort() and through getPorts() when it reconnects after a restart. Only the origin of the configured URL gets access; pages the kiosk navigates to elsewhere do not.

Tested with a Honeywell 7680GSR scanner.

Fixes

  • The corner calibration targets no longer cover the bottom of the test page.
  • The log records when a serial device is handed to the kiosk page.

Launching with a log

Start the app from Finder — or with open if you want its log:

open -n "Lucid Touch Kiosk.app" --stdout ~/kiosk.log --stderr ~/kiosk.log

Don't run the binary directly from a terminal: macOS then attributes the app's permissions (Input Monitoring, Bluetooth) to the terminal, and they appear missing.

The app is unsigned — clear the quarantine flag once and grant Input Monitoring, as described in the README.

v0.1.1

Choose a tag to compare

@tobdup tobdup released this 28 Aug 12:45
fix: keep config.json beside the app, except in applications folders

v0.1.0

Choose a tag to compare

@tobdup tobdup released this 28 Aug 12:02
feat: add Readme