Releases: solectrus/helios
Release list
v0.10.0
This release adds a configurable currency and fixes a doubled solar forecast for multi-roof Solcast setups as well as failing backups on some storage systems.
Added
- Choose your currency: You can now pick the currency for your dashboard (EUR, CHF, USD, GBP, or any other ISO code) in the PV system settings. Note: this currently only shows up on the dashboard's Development channel, not Stable yet.
Fixed
-
Correct forecast for multi-roof Solcast setups (#307): Systems with two roof planes using Solcast got a doubled forecast, because both planes were reading the same site. Each plane now uses its own site again.
-
Backups work on Unraid and similar storage (#305): On some setups (notably Unraid user shares) every backup failed. Backups now complete reliably there.
-
Improved privacy in support bundles: Additional account-bound identifiers are now masked in support bundles.
Maintenance
- Routine dependency updates and internal cleanup.
v0.9.0
This release brings pvnode's new site-based forecast API to every installation and fixes a startup crash for collectors adopted from a legacy stack.
Added
- pvnode API v2 for solar forecasts: pvnode's site-based API v2 now ships on the stable forecast-collector channel, so a configured site ID selects v2 on any installation, no longer just on the develop channel. API v1 stays available for existing setups until it is discontinued on 2026-12-31, and the pvnode site page carries a notice about that sunset.
Fixed
- Adopted legacy collectors no longer crash on a local InfluxDB (#299): Collectors carried over from an existing stack (such as senec-charger or tibber-collector) kept bare
INFLUX_HOST/INFLUX_PORT/INFLUX_SCHEMApassthrough entries that expected their values from.env. On a stack with a HELIOS-managed local InfluxDB those keys are baked in elsewhere and omitted from.env, so the passthrough resolved to nothing and the container crashed at startup with aKeyError. HELIOS now bakes the local InfluxDB values directly into the adopted service, so it starts cleanly.
Maintenance
- Routine dependency updates and internal cleanup.
v0.8.2
This release fixes silent backup failures on stacks adopted from an existing installation, plus two UI polish issues.
Fixed
-
Backups no longer fail silently on adopted stacks (#291): When HELIOS was added to an existing installation, the still-running InfluxDB container kept its pre-import configuration and lacked the shared staging mount the backup sidecar reads from.
influx backupsucceeded, but the staging directory stayed empty and every backup died with the cryptic "InfluxDB backup produced no output". HELIOS now captures the pre-import configuration as the deployed baseline, so the services page flags the affected container for a restart right after import. And should such a container still be running, the backup button is disabled up-front with a precise, localized reason instead of failing mid-run. -
Status-bar buttons stay legible on hover: Outline buttons on the status bar could render their text and background in the same color when hovered, pressed or focused, making the label unreadable. They now keep the bar's content color in every state and get a subtle translucent fill on interaction.
-
UI copy stays free of Docker jargon: User-facing wording now says "service"/"Dienst" instead of "container", and prefers "Protokoll" over "Logs" in German, keeping the interface free of the Docker concepts HELIOS is meant to hide.
Maintenance
- Routine dependency updates and internal cleanup.
v0.8.1
This release fixes stack reconciliation after a PostgreSQL major upgrade and a clickability glitch in the account menu.
Fixed
-
Stack fully reconciles after a PostgreSQL major upgrade: On an imported stack, where the database service was renamed from the legacy
dbto the canonicalpostgresql, a major-version upgrade left dependent services (such as the dashboard) still pointing at the old database host, and the pre-rename container lingered as a crash-looping orphan. Previously only a full host reboot cleaned this up. HELIOS now reconciles the running services against the rewritten compose right after the upgrade: drifted dependents are recreated and the stale orphan is pruned, with no host reboot needed. -
Whole logout row is now clickable: In the account menu, only the "Logout" text reacted to clicks instead of the full menu row. The entire row is now clickable.
Maintenance
- Routine dependency updates and internal cleanup.
v0.8.0
This release improves how HELIOS handles balcony power plants and Ingest during import.
Added
-
Multiple balcony power plants are now recognized on import: If your stack has two separate balcony generators, both are now detected and imported as balcony plants. Previously only one of them kept the balcony flag.
-
Ingest and external inputs no longer conflict: Ingest recalculates house power from all of its inputs, which only works when every input actually flows through it. An external input would leave that calculation incomplete. HELIOS now keeps Ingest active only when no input is external, and if an import would create that conflict, it stops with a clear explanation instead of silently disabling Ingest later.
Maintenance
- Routine dependency updates and internal cleanup.
v0.7.2
This patch release fixes a few login and restart-indicator issues.
Fixed
-
Login no longer drops on PWA/browser restart: The session lived in a transient
browser-session cookie with no expiry. iOS evicts such cookies when it removes an installed
PWA from memory, forcing a re-login every few days. The login cookie is now persistent and
survives those evictions. -
Restart indicator after import: The "restart needed" indicator seeded its baseline lazily
on the first successful compute. Because an import performs no deploy, that first compute often
ran after the changedcompose.yamlhad already been written, so the change became its own
baseline and was never flagged. The baseline is now seeded from the pre-change compose, so
config changes during import are correctly flagged. -
Restart indicator for untouched services: A single-service start/recreate re-baselined
every service, silently clearing the restart marker of a service still pending a restart but
not part of the action (e.g. the dashboard after adding a new sensor). A single-service action
now updates only that service's baseline; the full stack is re-baselined only on a batch up.
Maintenance
- Routine dependency updates.
v0.7.1
This patch release fixes the outdoor temperature in the Solar Forecast.
Fixed
- Outdoor temperature forecast (#244): The forecast collector writes its outdoor
temperature to the InfluxDB fieldtemp(pvnode-only, since 2025-11-14), but HELIOS
defaulted totemperature. As a result the forecast showed no current temperature in
HELIOS, and the wrongforecast:temperaturewas exported to the dashboard.env.
New setups and imports now map correctly. Existing installations heal once the forecast
sensor is re-saved.
v0.7.0
This release makes the one-line installer much smarter and adds pvnode API v2 support for Solar Forecast.
Added
- Smarter installer (#236): The
curl | bashinstaller now lets you choose the install
directory, detects and adopts an already-running SOLECTRUS stack, restarts a stopped one,
and waits for HELIOS to answer before printing its URL. - pvnode API v2 for Solar Forecast: Support for the new site-based pvnode API.
- SENEC interval suggestion: Setup now suggests a polling interval that matches the chosen
access type (local vs cloud). - Clearer support bundle: Well-known organisation and bucket names stay visible instead of
being redacted, making diagnostics easier.
Fixed
- Correct timezone on fresh installs: The installer now passes
TZthrough to the HELIOS
container, so a freshly installed stack no longer runs on UTC until its first config export. - Reliable bind mounts (#242): Bind-mount source directories are created up-front, so the
stack starts even on hosts that refuse to auto-create them (e.g. Synology).
Changed
- Dependency updates.
v0.6.5
This release improves CSV import and backups, fixes the reverse-proxy setup, and trims the Docker image.
Fixed
- Reliable CSV import (#233): Uploads are now read correctly regardless of file permissions, and uppercase
.CSVextensions are recognised. - External Traefik setting persists: The "external Traefik" choice is now kept across reloads, even without an IP.
- Automatic backups always recorded (#231): Scheduled backups now reliably show up in the list.
Changed
- Smaller Docker image and leaner idle operation: lower CPU use when nothing is happening.
- Dependency updates.
v0.6.4
This release polishes UI and modernises the frontend toolchain.
- Fixed redundant tooltips in setup forms
- Migrated from Yarn to Bun: Frontend dependency management and scripts now run on Bun. Faster installs and a leaner toolchain, with no change to the running stack.
- Dependency updates
- Refreshed architecture docs and screenshots.