|
A K1C tab follows a Klipper printer through Moonraker ([k1c] url):
state, file, progress with elapsed, left and finish time, layer, the
slicer's model thumbnail, nozzle and bed with target and power, fan,
speed, position, filament, and the camera snapshot. It is read-only bar
one action, the emergency stop (M112), behind a press-and-hold button so
a stray touch on an always-on tablet cannot kill a print. Klipper being
down (after a stop) shows its message in a red banner.
The printer is often off, so a failed poll backs off 10s instead of
costing every tick a timeout. File metadata is fetched once per job; the
slicer's estimate covers the start of a print until the file-position
estimate settles. The tablet loads the camera and the thumbnail straight
from the printer, so both need it on the printer's LAN.
OBS, the build VM and LLM usage showed raw text when their source was
off ("OBS offline: [Errno 111] ..."). They now share static/offline.js:
a greyed app icon, what is off, what brings it back, and a pulsing
"checking" note, with the raw error in the tooltip. OBS hides its empty
blocks while off. The card is not rebuilt on every poll.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
The second display is now optional: [display] enabled = false skips the
headless output, wayvnc, AVNC and the VNC tunnel, so the tablet runs the
dashboard alone. `deck-it env` reports it as EXTEND.
Keystone's new deck-it page (quickshell, desktop/modules/deckit) edits
the config and the autostart line, which needed:
- The user config is merged over the shipped config.toml key by key
within each table instead of replacing it whole, so the page writes a
sparse file and an unset key falls back to the default.
- `deck-it defaults` prints the shipped config as JSON for the page's
placeholders, so keystone never copies the defaults.
- `deck-it status` prints one JSON line (server, display, waiting,
tablet, extend) for the page's status line and restart check.
- [launch] is now `apps`, a list of desktop ids run with gtk-launch,
with name and icon read from the .desktop file, so the page can pick
launchers from the installed apps. The old command tables are gone;
the client still sends only an id, which must be listed and installed.
A launcher whose icon the theme lacks shows its name.
- [wifi] address gives the tablet's address in config. The last address
that worked is kept in ~/.config/deck-it/last-wifi: `stop` deletes the
runtime serial file, so a restart from the page used to wait forever.
- `stop` also ends a login's `wifi --wait`, matched by its own command
line only, so repeated restarts do not pile up waiters.
Also fixed: `deck-it env` fell through into the usage text, and the
usage text printed the license header since the header was added.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|