Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 24 additions & 5 deletions README.es.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,10 @@ SQLite corriendo en un LXC en casa. Sin nube.
> (inversores, batería, fuente de red, mapeo de sensores) se resuelve desde
> `install_config` — cualquier instalación HAOS puede ejecutarlo configurando
> sus sensores, sin tocar código. El dashboard, la página de inversores y
> Ajustes se adaptan a la topología resuelta (N inversores). Dicho esto, aún
> no es un producto "plug-and-play" pulido (no hay editor de topología en la
> app), así que una instalación nueva todavía requiere editar un JSON.
> Ajustes se adaptan a la topología resuelta (N inversores). No es un producto
> "plug-and-play" del todo pulido, pero desde 0.7.2 un admin puede editar la
> topología (inversores, batería, fuente de red, mapeo de sensores de HAOS)
> desde Ajustes, sin tocar código ni JSON.
> Forkea el repo y adáptalo a tu instalación.

## ¿Por qué existe?
Expand Down Expand Up @@ -132,6 +133,24 @@ Inversores (Solis/Fox) ──integraciones──▶ HAOS ──WebSocket──
- `shared/schemas.js`: contrato zod server↔front.
- Detalle completo en `ARCHITECTURE.md` y `STACK.md`.

## Instalación

Helios es un servicio Node con SQLite embebida. **No** habla con los
inversores directamente: se conecta a tu Home Assistant por su API WebSocket y
lee los sensores que HAOS ya expone. Solo dos ajustes de HAOS importan:

- `HAOS_URL` — la dirección de tu HAOS, p. ej. `http://192.168.10.244:8123`
(el `http://` se promociona internamente a `ws://`).
- `HAOS_TOKEN` — un **token de acceso de larga duración**, generado en HAOS en
Perfil → Seguridad → Tokens de acceso de larga duración.

Copia `server/.env.example` a `.env` y rellena esos dos valores (además de los
de autenticación). Al arrancar, Helios autentica con el token y se suscribe a
las entidades declaradas en la topología. Puedes ver la lista resuelta de
entidades y probar la conexión en Ajustes → Conexión y datos; un admin edita
la topología desde Ajustes. La BD vive en `server/data/` (o `DATA_DIR`) y el
`.env` sobrevive siempre a las actualizaciones.

## Operación (lo justo para no romper nada)

- Producción: un CT de Proxmox, servicio `helios.service`, puerto
Expand Down Expand Up @@ -186,8 +205,8 @@ inversor (online, estación).
|---|---|---|
| 1 | Panel live de solo lectura (producción vs consumo) | Hecho |
| 2 | Backend real, multiusuario, histórico, batería, alertas, PWA, endurecimiento | Hecho (~0.6.x) |
| 3 | Hardware configurable (siempre bajo HAOS) | Mayormente hecho (0.7.x) |
| 4 | Multi-instalación: varios HAOS o varios Helios vía API | En exploración |
| 3 | Hardware configurable (siempre bajo HAOS) | Hecho (0.7.x) |
| 4 | Multi-instalación: varios HAOS o varios Helios vía API | Próximo |

Ver [ROADMAP.md](ROADMAP.md) para más detalle.

Expand Down
29 changes: 24 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,10 @@ No cloud.
> source, sensor mapping) is resolved from `install_config` — any HAOS
> installation can run it by configuring its sensors, without touching code.
> The dashboard, inverters page and settings adapt to the resolved topology
> (N inverters). That said, it is not a fully polished plug-and-play product
> yet (no in-app topology editor), so a fresh install still requires editing a
> JSON config. Fork it and adapt it to your own installation.
> (N inverters). It is not a fully polished plug-and-play product, but since
> 0.7.2 an admin can edit the topology (inverters, battery, grid source, HAOS
> sensor mapping) from Settings, no code or JSON required. Fork it and adapt
> it to your own installation.

## Why does this exist?

Expand Down Expand Up @@ -131,6 +132,24 @@ Inverters (Solis/Fox) ──integrations──▶ HAOS ──WebSocket──▶
- `shared/schemas.js`: zod contract server↔front.
- Full detail in `ARCHITECTURE.md` and `STACK.md`.

## Installation

Helios is a Node service with an embedded SQLite DB. It does **not** talk to
the inverters directly: it connects to your Home Assistant over its WebSocket
API and reads the sensors HAOS already exposes. Only two HAOS settings matter:

- `HAOS_URL` — your HAOS address, e.g. `http://192.168.10.244:8123`
(`http://` is upgraded to `ws://` internally).
- `HAOS_TOKEN` — a **long-lived access token**, generated in HAOS under
Profile → Security → Long-lived access tokens.

Copy `server/.env.example` to `.env` and fill those two values (plus the auth
ones). On startup Helios authenticates with the token and subscribes to the
entities declared in the topology. You can see the resolved entity list and
test the connection under Settings → Connection & data; an admin edits the
topology itself from Settings. The DB lives in `server/data/` (or `DATA_DIR`)
and the `.env` always survives updates.

## Operations (just enough to not break anything)

- Production: a Proxmox CT, `helios.service`, port 80 (LAN
Expand Down Expand Up @@ -183,8 +202,8 @@ just such a sensor), `grid.mode: "sensor"` reads plain grid sensors, and
|---|---|---|
| 1 | Live read-only panel (production vs consumption) | Done |
| 2 | Real backend, multi-user, history, battery, alerts, PWA, hardening | Done (~0.6.x) |
| 3 | Configurable hardware (still under HAOS) | Mostly done (0.7.x) |
| 4 | Multi-installation: several HAOS or several Helios via API | Exploring |
| 3 | Configurable hardware (still under HAOS) | Done (0.7.x) |
| 4 | Multi-installation: several HAOS or several Helios via API | Up next |

See [ROADMAP.md](ROADMAP.md) for detail.

Expand Down
Loading