# Systemvoraussetzungen für SOLECTRUS

> Ein Linux-Server, der rund um die Uhr läuft, ab 1 GB Arbeitsspeicher. Welche Geräte sich anbinden lassen und was außer Raspberry Pi in Frage kommt.

SOLECTRUS braucht einen kleinen Linux-Server, der rund um die Uhr läuft. Dazu kommt die Photovoltaik-Anlage oder ein Balkonkraftwerk, deren Messwerte es einsammelt. Stromspeicher, Wärmepumpe und Wallbox sind optional.

## Linux-Server

Der Server läuft unter **64-Bit-Linux**, rund um die Uhr (24/7). Prozessor-Architektur: **AMD64** oder **ARM64**.

Diese Anforderungen sollte er erfüllen:

| Ressource                  | Minimum | Empfohlen |
| -------------------------- | ------- | --------- |
| Arbeitsspeicher            | 1 GB    | 2 GB      |
| Freier Festplattenspeicher | 1 GB    | 5 GB      |

Gemeint ist der gesamte Arbeitsspeicher des Servers, nicht der gerade freie. Unter 1 GB bricht die Installation ab, unter 2 GB warnt sie.

Der Festplattenbedarf wächst mit der Zeit, denn die Messwerte werden dauerhaft gespeichert. Das Installationsverzeichnis gehört deshalb auf eine Platte mit ausreichend Platz.

[Docker](https://www.docker.com/) muss nicht vorinstalliert sein. Fehlt es, richtet [HELIOS](/docs/referenz/helios/) es bei der Installation mit ein.

Frei sein müssen außerdem diese Ports:

| Port       | Wofür                                                                        |
| :--------- | :--------------------------------------------------------------------------- |
| `3999`     | HELIOS                                                                       |
| `3000`     | Dashboard (Standardwert, in HELIOS änderbar)                                 |
| `80`+`443` | Nur mit eigener Domain, für den Reverse Proxy [Traefik](https://traefik.io/) |

> **Empfehlung**
>
>
> Ein **Raspberry Pi 5** mit 8 GB RAM läuft gut. Ein Pi 3 oder 4 wird ebenfalls unterstützt. Bei einer Neuanschaffung ist ein **Mini-PC** die bessere Wahl.
>
> In beiden Fällen gehören die Daten auf eine **SSD**. Die Datenbanken schreiben rund um die Uhr, eine SD-Karte macht das nicht lange mit.
>
> Auf einem Mini-PC bietet sich **Proxmox VE** als Unterbau an. SOLECTRUS läuft dann in einem eigenen LXC-Container, getrennt von allem anderen auf dem Gerät. Eine VM braucht es dafür nicht.
>

## Anbindung per MQTT

[MQTT](https://de.wikipedia.org/wiki/MQTT) ist ein Nachrichtenprotokoll, kein Geräteprotokoll. Ein Gerät liest SOLECTRUS darüber nicht aus. Es braucht eine Software, die das Gerät abfragt und die Messwerte auf einem MQTT-Broker veröffentlicht. Der [MQTT-Collector](/docs/referenz/mqtt-collector/) abonniert dann die Topics des Brokers.

Diese Software ist in der Regel [Home Assistant](https://www.home-assistant.io/) oder [ioBroker](https://www.iobroker.net/). Beide bringen Integrationen bzw. Adapter für Wechselrichter, Stromspeicher, Wallboxen, Wärmepumpen und E-Autos mit und können deren Messwerte per MQTT weiterreichen. Auch [evcc](https://evcc.io) veröffentlicht seine Messwerte auf einem Broker.

Dort entscheidet sich also, ob ein Gerät angebunden werden kann: Gibt es dafür eine Integration oder einen Adapter, kommen die Werte auch in SOLECTRUS an. Den Broker selbst (etwa Mosquitto) braucht es zusätzlich; Home Assistant führt ihn als Add-on, ioBroker als Adapter.

## Anbindung ohne MQTT

Home Assistant und ioBroker können ihre Messwerte auch ohne Broker liefern. Sie schreiben sie dann selbst in die [InfluxDB](/docs/referenz/influxdb/) von SOLECTRUS. Dafür gibt es die [Home-Assistant-Integration](https://github.com/solectrus/ha-integration) und einen [ioBroker-Adapter](https://github.com/patricknitsch/ioBroker.solectrus-influxdb) aus der Community.

## Stromspeicher von SENEC

SOLECTRUS unterstützt außerdem nativ die Stromspeicher **SENEC.Home V2.1 und V3**, deren Messwerte über eine proprietäre Schnittstelle lokal ausgelesen werden. Auch der **SENEC.Home 4** wird unterstützt – per Anbindung an `mein-senec.de`.

## Shelly-Stromzähler

Stromzähler von **Shelly** (z.B. Plug oder Pro 3EM) liest SOLECTRUS ebenfalls direkt aus, lokal im Netzwerk oder über die Shelly-Cloud. Siehe [Shelly-Collector](/docs/referenz/shelly-collector/).

## Installation in der Cloud

SOLECTRUS muss nicht zu Hause laufen. Mit einem SENEC-Speicher ist eine **reine Cloud-Installation** möglich, bei der die Messwerte von `mein-senec.de` abgerufen werden. Ein lokaler Server ist dann überflüssig.

Getestet wurde SOLECTRUS unter anderem in diesen Umgebungen:

- Virtueller Server in der [Hetzner-Cloud](https://www.hetzner.com/cloud/) mit 2 vCPUs und 4 GB RAM.
- Virtueller Server von [Strato](https://www.strato.de/server/linux-vserver/) mit 1 vCPU und 2 GB RAM, zusammen mit [evcc](https://evcc.io/).

## Verteilte Installation

Denkbar ist auch eine Aufteilung auf zwei Server: Die Kollektoren laufen zu Hause und sammeln die Messwerte ein, Dashboard und Datenbanken laufen in der Cloud. So ist die [Live-Demo](https://demo.solectrus.de) aufgebaut.

HELIOS kann das, verwaltet dabei aber jeweils **einen** Host. Es gehört also auf beide Server. Unter _Konfiguration → Grundeinstellungen → Betriebsmodus_ wird dann eingestellt, welche Dienste dort laufen: auf dem heimischen Server **Nur Kollektoren**, auf dem Cloud-Server **Nur Dashboard, Datenbanken und Zusatzdienste**. Die Kollektoren schreiben ihre Messwerte dann in die entfernte InfluxDB.

> **Hinweis**
>
>
> Das ist ein Spezialfall. Im Regelfall steht der Betriebsmodus auf **Dashboard, Datenbanken, Zusatzdienste und Kollektoren**, also alles auf einem Host.
>

## Nicht unterstützte Geräte

Auf diesen Geräten läuft SOLECTRUS nicht:

- FritzBox
- Apple TimeCapsule (geschlossenes System, Installation von Docker nicht möglich)
- Alte Synology-NAS wie die DS216+ mit Linux-Kernel 3.x. Vorausgesetzt ist mindestens Kernel **4.x**.
