Skip to content

feat: optional Companion Dashboard integration #5

Description

@dubpixel

Requested by Josh Koffman (collaborator) — wants Companion Dashboard available as an optional add-on for dpx-buttonode units.

What it is

A TypeScript desktop/server app that displays Bitfocus Companion variables in a custom, resizable-box layout (text/markdown/HTML fields bound to Companion variable values). Not affiliated with Bitfocus, but built specifically to sit alongside Companion.

Two install paths upstream are relevant here:

  • Desktop releases (Mac/Linux/Windows) — a full app, not applicable to a headless SBC image directly.
  • Linux Server install (curl -fsSL https://raw.githubusercontent.com/tomhillmeyer/companion-dashboard/main/install.sh | bash) — targets Raspberry Pi OS / Ubuntu Server / Companion Pi specifically, launches full-screen on boot, and also auto-starts a web server for remote configuration. Explicitly does not support Raspberry Pi 5 as of now — worth checking compatibility with our actual boards (rockpi-s, orangepizero3) before committing to this path.

Why this fits dpx_buttonode

Two scenarios, both raised in the request:

  1. Units with a physical display attached (HDMI) — could auto-launch the dashboard full-screen on boot, similar to how the upstream Linux Server install works.
  2. Headless units — if the web-server/remote-config side can serve a usable dashboard view over HTTP on its own, it could be useful on any unit regardless of whether a display is attached, not just ones with one.

Scope notes

  • Should be optional, not always-on — this hardware is already memory-constrained (observed this session: a stock unit with only Satellite running sits close to its RAM ceiling; running Companion Dashboard concurrently needs headroom-checking, not an assumption it's free).
  • Orthogonal to the existing Buttons/Satellite/Companion mode system — this is a visualization layer, not a fourth mode; needs its own design thought on whether it's a toggle in the web UI, tied to display detection, or something else.
  • Compatibility with rockpi-s/orangepizero3 (vs. the tested Raspberry Pi targets) needs verification before implementation.
  • Per the request: may be reasonable to build a minimal version scoped just to Josh Koffman's use case first, rather than a fully general feature, given who's asking and why.

No implementation started — this is scoping/tracking only.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions