Skip to content

Settings

The Settings screen (/settings) is where the deployment is configured at runtime — most of it without touching .env or restarting. The whole screen is admin-only. A live status poll keeps the connection badges fresh.

Tabs: Inverter, MQTT & Home Assistant, Tariff, Date & Time (any admin), plus Profiles, Users, and API Keys (admin).

Settings → Inverter: Modbus connection fields with a live status badge and Test connection. Settings → Inverter: Modbus connection fields with a live status badge and Test connection.

Configure the Modbus connection: host, port, transport (Modbus TCP or RTU-over-TCP), unit id, timeout, and poll interval. A status badge shows Connected / Disconnected / Simulated.

  • Test connection captures a live snapshot and opens a table (metric / group / value) so you can sanity-check the mapping before saving.
  • Save applies the change live — no restart.
  • The active profile is shown here read-only; changing it lives on the Profiles tab and takes effect on restart.
  • If simulation mode is on (INVERTER_SIMULATE), a notice explains the settings are saved but unused.

Configure the MQTT bridge: enable switch, broker URL, topic prefix, username, and a write-only password field. A Home Assistant discovery switch reveals the discovery prefix. A status badge shows Disabled / Connecting… / Connected, with a Test connection button. Saving applies live.

Configure pricing for the Costs screen: currency, standing charge, feed-in rate, a default import price, and time-of-use bands (name, price, hour range, weekday selection). Add or remove bands and Save tariff.

How timestamps render across the History charts and stepper. Two controls — a clock format (automatic/locale, 24-hour, or 12-hour) and a time zone (automatic, i.e. the viewer’s, or any IANA zone) — with a live preview of “now”. The setting is instance-wide: it applies to everyone using this instance, and only admins can change it.

Manage inverter profiles (admin only), in three sections:

  • Installed profiles — set active or remove, with built-in vs downloaded and version shown. A Restart required banner appears after activating or installing.
  • Profile repositories — add/remove/enable git repo sources. Sources auto-save as you edit, with optimistic updates.
  • Available profilesBrowse enabled repos. Profiles are grouped by manufacturer and, within that, by family (collapsible), and each row shows its source repo. Per profile: Download, or Update when the repo offers a semver-newer release.

At the top, an updates banner surfaces installed profiles with a newer version waiting — each with a one-click Update to vX. A background checker refreshes this every few hours, so you see updates without browsing.

See Distributing Profiles for the full flow.

Manage accounts (admin only): add a user (name, email, password, role) and edit or delete users in a table, including changing roles inline. See Users & Roles.

Issue and revoke API keys for the REST API (admin only):

  • Issue key — pick the owning user, name the key, and optionally set an expiry (30 days / 90 days / 1 year / never). On create, the full key is shown once in a dialog with a copy button — store it then, as only a short prefix is kept afterwards.
  • Keys table — filter by user; each row shows name, owner, prefix, created/expiry dates. Revoke deletes a key immediately; requests using it then return 401.

Keys are stored hashed and work alongside the static API_KEYS environment variable. See REST API → Authentication for how they’re presented on requests.