diff --git a/AGENTS.md b/AGENTS.md
index 48a441b08..abfb29af2 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -202,9 +202,16 @@ Everything else is hand-written:
##### Link Formats
- **Locale-prefixed absolute links**: `/en/features/solar-charging` or `/de/features/solar-charging`
-- Astro's router preserves the prefix, so use the locale-prefixed form for clarity
+- **Never use relative links** (`./linux`, `../meters`, `loadpoints#charger`) for pages — the production site (GitHub Pages) serves pages with a trailing slash, so relative links resolve one level too deep and 404. Local dev serves without the trailing slash, so the breakage is invisible locally.
+- Relative paths are fine (and preferred) for **co-located images/assets** — Astro bundles them at build time
- **Anchors**: `/en/reference/configuration/site#residualpower`
- **Never include** `.md` or `.mdx` extensions in links
+- The REST API pages are not locale-prefixed: link to `/integrations/rest-api`
+
+##### Validation
+
+- `npm run build` validates all internal links via `starlight-links-validator` and fails on broken links, missing anchors, and relative page links — CI enforces this on every PR
+- Custom routes under `src/pages/[lang]/` (device pages, `external-limit`, `notifications`, `nightly`) plus the openapi and blog index pages are excluded from validation in `astro.config.mjs`; extend that list when adding new custom routes
##### Best Practices
diff --git a/astro.config.mjs b/astro.config.mjs
index f18c50129..421075ee3 100644
--- a/astro.config.mjs
+++ b/astro.config.mjs
@@ -7,6 +7,7 @@ import sitemap from "@astrojs/sitemap";
import starlightBlog from "starlight-blog";
import starlightLlmsTxt from "starlight-llms-txt";
import starlightOpenAPI, { openAPISidebarGroups } from "starlight-openapi";
+import starlightLinksValidator from "starlight-links-validator";
import mermaid from "astro-mermaid";
import { unified } from "@astrojs/markdown-remark";
import remarkHeadingId from "remark-heading-id";
@@ -114,6 +115,22 @@ export default defineConfig({
starlightLlmsTxt({
exclude: ["**/blog/**"],
}),
+ starlightLinksValidator({
+ // German pages fall back to English, links to them are valid
+ errorOnFallbackPages: false,
+ // installation guides intentionally link to http://localhost:7070
+ errorOnLocalLinks: false,
+ // device and integration pages are custom routes (src/pages) the validator cannot see
+ exclude: [
+ "/{en,de}/{chargers,meters,vehicles,smartswitches,heating,tariffs,external-limit,notifications,nightly}",
+ "/{en,de}/{chargers,meters,vehicles,smartswitches,heating,tariffs,external-limit,notifications,nightly}/**",
+ "/{en,de}/{chargers,meters,vehicles,smartswitches,heating,tariffs,external-limit,notifications,nightly}#*",
+ // starlight-openapi and starlight-blog routes are not visible to the validator
+ "/integrations/rest-api",
+ "/integrations/rest-api/**",
+ "/{en,de}/blog",
+ ],
+ }),
],
sidebar: [
{
diff --git a/package-lock.json b/package-lock.json
index 4a7fb0075..bc3584e07 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -28,6 +28,7 @@
"devDependencies": {
"prettier": "^3.8.1",
"remark-heading-id": "^1.0.1",
+ "starlight-links-validator": "^0.25.2",
"typescript": "^6.0.3"
},
"engines": {
@@ -2941,6 +2942,13 @@
"undici-types": "~7.18.0"
}
},
+ "node_modules/@types/picomatch": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/@types/picomatch/-/picomatch-4.0.3.tgz",
+ "integrity": "sha512-iG0T6+nYJ9FAPmx9SsUlnwcq1ZVRuCXcVEvWnntoPlrOpwtSTKNDC9uVAxTsC3PUvJ+99n4RpAcNgBbHX3JSnQ==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/@types/sax": {
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.7.tgz",
@@ -3147,6 +3155,22 @@
"am-i-vibing": "dist/cli.mjs"
}
},
+ "node_modules/ansi-escapes": {
+ "version": "7.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-7.3.0.tgz",
+ "integrity": "sha512-BvU8nYgGQBxcmMuEeUEmNTvrMVjJNSH7RgW24vXexN4Ven6qCvy4TntnvlnwnMLTVlcRQQdbRY8NKnaIoeWDNg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "environment": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/ansi-regex": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
@@ -4542,6 +4566,19 @@
"url": "https://github.com/fb55/entities?sponsor=1"
}
},
+ "node_modules/environment": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/environment/-/environment-1.1.0.tgz",
+ "integrity": "sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/es-define-property": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
@@ -5720,6 +5757,19 @@
"url": "https://github.com/sponsors/brc-dd"
}
},
+ "node_modules/is-absolute-url": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-5.0.0.tgz",
+ "integrity": "sha512-sdJyNpBnQHuVnBunfzjAecOhZr2+A30ywfFvu3EnxtKLUWfwGgyWUmqHbGZiU6vTfHpCPm5GvLe4BAvlU9n8VQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/is-alphabetical": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz",
@@ -8733,6 +8783,34 @@
"@astrojs/starlight": ">=0.41.0"
}
},
+ "node_modules/starlight-links-validator": {
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/starlight-links-validator/-/starlight-links-validator-0.25.2.tgz",
+ "integrity": "sha512-RQiHkM8FHKermsjMkSb+uS/q50Dv5P0O0ECWKxJyTv4stuO8QTorIEKnITDDLEf9/xyg7M69arxiK2ola3OMqA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@astrojs/markdown-satteri": "^0.3.2",
+ "@types/picomatch": "^4.0.2",
+ "github-slugger": "^2.0.0",
+ "hast-util-from-html": "^2.0.3",
+ "is-absolute-url": "^5.0.0",
+ "mdast-util-mdx-jsx": "^3.2.0",
+ "mdast-util-to-hast": "^13.2.1",
+ "picomatch": "^4.0.3",
+ "satteri": "^0.9.3",
+ "terminal-link": "^5.0.0",
+ "unist-util-visit": "^5.1.0",
+ "yaml": "^2.8.3"
+ },
+ "engines": {
+ "node": ">=22.12.0"
+ },
+ "peerDependencies": {
+ "@astrojs/starlight": ">=0.41.0",
+ "astro": ">=7.0.2"
+ }
+ },
"node_modules/starlight-llms-txt": {
"version": "0.11.0",
"resolved": "https://registry.npmjs.org/starlight-llms-txt/-/starlight-llms-txt-0.11.0.tgz",
@@ -8898,6 +8976,49 @@
"node": ">=8"
}
},
+ "node_modules/supports-hyperlinks": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-4.5.0.tgz",
+ "integrity": "sha512-ZW2OvfeCXrNTbLakPUzjQG922EeGCOteFSVoek5DKStTh898wf7zgtuFlzQN8HfZCxC3Eh02yJVrRW51hADf+w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "has-flag": "^5.0.1",
+ "supports-color": "^10.2.2"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/supports-hyperlinks?sponsor=1"
+ }
+ },
+ "node_modules/supports-hyperlinks/node_modules/has-flag": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-5.0.1.tgz",
+ "integrity": "sha512-CsNUt5x9LUdx6hnk/E2SZLsDyvfqANZSUq4+D3D8RzDJ2M+HDTIkF60ibS1vHaK55vzgiZw1bEPFG9yH7l33wA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/supports-hyperlinks/node_modules/supports-color": {
+ "version": "10.2.2",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-10.2.2.tgz",
+ "integrity": "sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/supports-color?sponsor=1"
+ }
+ },
"node_modules/svgo": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/svgo/-/svgo-4.0.1.tgz",
@@ -8932,6 +9053,23 @@
"node": ">=16"
}
},
+ "node_modules/terminal-link": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-5.0.0.tgz",
+ "integrity": "sha512-qFAy10MTMwjzjU8U16YS4YoZD+NQLHzLssFMNqgravjbvIPNiqkGFR4yjhJfmY9R5OFU7+yHxc6y+uGHkKwLRA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-escapes": "^7.0.0",
+ "supports-hyperlinks": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/through": {
"version": "2.3.8",
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
diff --git a/package.json b/package.json
index 693bf084f..89527e62e 100644
--- a/package.json
+++ b/package.json
@@ -37,6 +37,7 @@
"devDependencies": {
"prettier": "^3.8.1",
"remark-heading-id": "^1.0.1",
+ "starlight-links-validator": "^0.25.2",
"typescript": "^6.0.3"
}
}
diff --git a/src/content/docs/de/blog/2025/01/20/tesla-api-update.mdx b/src/content/docs/de/blog/2025/01/20/tesla-api-update.mdx
index fc7fda594..e1979c293 100644
--- a/src/content/docs/de/blog/2025/01/20/tesla-api-update.mdx
+++ b/src/content/docs/de/blog/2025/01/20/tesla-api-update.mdx
@@ -23,7 +23,7 @@ Dieser Beitrag wurde überarbeitet.
## Tesla Fleet API wird ab Februar kostenpflichtig
-Vor einem Jahr haben wir die [Tesla Fleet API](/de/blog/2024/02/01/v0.124-new-tesla-api) in evcc integriert.
+Vor einem Jahr haben wir die [Tesla Fleet API](/de/blog/2024/02/01/v0124-new-tesla-api) in evcc integriert.
Tesla war damit der erste Hersteller, der eine offizielle und vor allem offene API für die Kommunikation mit seinen Fahrzeugen bereitgestellt hat.
Tesla hatte bereits bei der Einführung angekündigt, dass diese Schnittstelle später kostenpflichtig werden würde.
@@ -49,6 +49,8 @@ Dort kannst du dir mit deinem Developer Account passende **Access- und Refresh-T
## Was ist zu tun?
+
+
### Für Tesla-Fahrer
Für die Einrichtung in evcc benötigst du drei Informationen:
diff --git a/src/content/docs/de/blog/2025/07/30/highlights-config-ui-feedin-ai.mdx b/src/content/docs/de/blog/2025/07/30/highlights-config-ui-feedin-ai.mdx
index ab8061295..00e6310c2 100644
--- a/src/content/docs/de/blog/2025/07/30/highlights-config-ui-feedin-ai.mdx
+++ b/src/content/docs/de/blog/2025/07/30/highlights-config-ui-feedin-ai.mdx
@@ -80,6 +80,8 @@ Damit kannst du beispielsweise weiterhin den Großteil preisoptimiert laden, das
Mehr Details dazu findest du in der [Dokumentation](/de/features/plans#spätes-laden).
+
+
## Konfiguration via Browser
Beim Thema Ersteinrichtung via Browser geht es mit großen Schritten voran.
diff --git a/src/content/docs/de/blog/2026/01/01/highlights-browser-config-ready.mdx b/src/content/docs/de/blog/2026/01/01/highlights-browser-config-ready.mdx
index 7a413f109..fc25381eb 100644
--- a/src/content/docs/de/blog/2026/01/01/highlights-browser-config-ready.mdx
+++ b/src/content/docs/de/blog/2026/01/01/highlights-browser-config-ready.mdx
@@ -109,6 +109,8 @@ Die Einstellungen werden pro Browser gespeichert und ermöglichen eine individue

+
+
## Sponsoring: Neue Preise
Wir lieben Open Source und sind überzeugt davon, dass das im Projekt angesammelte, offene Wissen ein großer Boost für die Energiewende ist.
diff --git a/src/content/docs/de/faq.mdx b/src/content/docs/de/faq.mdx
index 19463990d..65f588ae3 100644
--- a/src/content/docs/de/faq.mdx
+++ b/src/content/docs/de/faq.mdx
@@ -18,7 +18,9 @@ Die **Konfigurationsdatei** (`evcc.yaml`) ist die traditionelle Methode und wird
**Wichtig**: Einige neuere Features sind ausschließlich über die Weboberfläche verfügbar.
Beide Methoden können auch parallel genutzt werden.
-Mehr Informationen findest du unter [Einrichtung](./installation/configuration).
+Mehr Informationen findest du unter [Einrichtung](/de/installation/configuration).
+
+
### Ich habe eine evcc.yaml Konfiguration. Wie migriere ich zur Weboberfläche?
@@ -60,7 +62,7 @@ Der Netzzähler ist das Kernstück für evcc und sollte, wenn möglich, eingebun
Es ist jedoch ebenso möglich, sonnengeführtes Laden ausschließlich auf der Grundlage der PV-Leistung zu betreiben.
In dieser Konstellation kann nicht mit PV-Überschuss geladen werden, da der dazu notwendige Messpunkt (Zähler) fehlt.
Stattdessen wird in den Lademodi **PV** und **Min+PV** mit der PV-Erzeugungsleistung gearbeitet.
-Als Optimierung kann über die Einstellung [`residualPower`](./reference/configuration/site#residualpower) ein typischer mittlerer Hausverbrauch angegeben werden.
+Als Optimierung kann über die Einstellung [`residualPower`](/de/reference/configuration/site#residualpower) ein typischer mittlerer Hausverbrauch angegeben werden.
**Beispiel**:
@@ -73,7 +75,7 @@ site:
Hier gibt es verschiedene Nutzungsmöglichkeiten.
Notwendig ist auf jeden Fall ein auslesbarer Netzzähler.
-Bei einem [variablen Stromtarif](./features/dynamic-prices) (z. B. Nachtstrom, Tibber, Awattar) ist automatisches preisabhängiges Laden möglich.
+Bei einem [variablen Stromtarif](/de/features/dynamic-prices) (z. B. Nachtstrom, Tibber, Awattar) ist automatisches preisabhängiges Laden möglich.
Ansonsten kann man evcc zur Fernsteuerung (start/stop) der Wallbox nutzen.
Darüber hinaus kann man die Ladung einer Fahrzeugbatterie auf einen bestimmten Ladestand (SoC) begrenzen. In diesem Fall ist es aber zwingend notwendig, dass das Fahrzeug in die Konfiguration mit aufgenommen wird.
@@ -173,7 +175,7 @@ Es ist aber mehr ein Entwickler- und Supporttool zu Diagnosezwecken und erkennt
evcc erwartet nach einem Intervallzyklus bereits den neuen korrekten Status.
Wenn manche Geräte etwas zu langsam auf Anweisungen reagieren, kommt es kurzzeitig zu einem undefinierten Zustand, der mit diesen Fehlern quittiert wird.
Sollten ansonsten keine Probleme auftreten, kann die Meldung ignoriert werden.
-Abhilfe schafft ein größeres [`interval`](./reference/configuration/interval).
+Abhilfe schafft ein größeres [`interval`](/de/reference/configuration/interval).
### connection refused
@@ -267,6 +269,8 @@ Das ist leider eine Einschränkung der Herstellerschnittstelle. PSA liefert vera
## Passwort
+
+
### Ich habe mein Passwort vergessen. Wie kann ich es ändern?
Das Passwort wird verschlüsselt gespeichert, daher kann es nicht ausgelesen werden.
diff --git a/src/content/docs/de/features/battery.mdx b/src/content/docs/de/features/battery.mdx
index 3ee962dd0..cd38fdac5 100644
--- a/src/content/docs/de/features/battery.mdx
+++ b/src/content/docs/de/features/battery.mdx
@@ -139,6 +139,8 @@ Dies kann durch den Schnell-Modus, smartes Netzladen, Ladeplanung oder Mindestla
Der Sperrzustand gilt für den Zeitraum des Schnellladens.
In dieser Zeit wird die Hausbatterie nicht entladen.
+
+
### Netzladen
Szenario: Du hast einen dynamischen Stromtarif und möchtest deinen Hausspeicher nachts mit günstigem Strom laden.
@@ -149,7 +151,7 @@ Beispielsweise, weil der am Tag erzeugte Überschuss nicht ausreicht.
caption="Hausbatterie Dialog für Netzladen"
/>
-Analog zum [CO₂-](./co2) und [preisoptimierten Laden](./dynamic-prices) beim Fahrzeug, kannst du auch die Hausbatterie mit günstigem Strom laden.
+Analog zum [CO₂-](/de/features/co2) und [preisoptimierten Laden](/de/features/dynamic-prices) beim Fahrzeug, kannst du auch die Hausbatterie mit günstigem Strom laden.
Wenn dein Wechselrichter diese Funktion unterstützt, erscheint im "Hausbatterie" Dialog der Reiter "Netzladen".
Hier kannst du ein Limit anlegen.
Unterschreitet der aktuelle Strompreis dieses Limit, wird die Hausbatterie für diese Zeit aus dem Netz geladen und gleichzeitig vor Entladung gesperrt.
@@ -161,7 +163,7 @@ Nach Ende der Leistungsreduzierung wird das Netzladen automatisch fortgesetzt.
:::
:::caution[Lastmanagement]
-Netzladen der Hausbatterie wird vom [Lastmanagement](./loadmanagement) nicht berücksichtigt.
+Netzladen der Hausbatterie wird vom [Lastmanagement](/de/features/loadmanagement) nicht berücksichtigt.
Wenn z. B. die Hausbatterie 9 kW aus dem Netz zieht, fließt dieser Verbrauch nicht in die Lastmanagement-Berechnung ein.
Dies gilt nicht für § 14a Reduzierungssignale – dort wird das Netzladen wie oben beschrieben automatisch pausiert.
:::
diff --git a/src/content/docs/de/features/co2.mdx b/src/content/docs/de/features/co2.mdx
index c2995bce2..1ad8e38a9 100644
--- a/src/content/docs/de/features/co2.mdx
+++ b/src/content/docs/de/features/co2.mdx
@@ -40,13 +40,13 @@ Jeder Balken repräsentiert eine Stunde.
Dieses Limit gilt im **PV-Modus** des aktuellen Ladepunktes.
Mit Klick auf "überall anwenden" wird das Limit für alle Ladepunkte übernommen.
-Zusätzlich zum [PV-Überschussladen](./solar-charging) wird nun in den Stunden mit niedriger CO₂-Emission (grüne Balken) schnelles Laden aktiviert.
+Zusätzlich zum [PV-Überschussladen](/de/features/solar-charging) wird nun in den Stunden mit niedriger CO₂-Emission (grüne Balken) schnelles Laden aktiviert.
Diese Einstellung ist sinnvoll, um bspw. in den Wintermonaten weiterhin einen vollgeladenen Akku zu haben, und dabei das Stromnetz zu entlasten.
## Ladeplanung
-Durch die Nutzung von [Ladeplänen](./plans) kannst du das CO₂-optimierte Laden noch genauer regeln.
+Durch die Nutzung von [Ladeplänen](/de/features/plans) kannst du das CO₂-optimierte Laden noch genauer regeln.
Du musst lediglich deine Energiemenge (kWh) bzw. deinen Zielladestand (%) und die gewünschte Abfahrtszeit angeben.
Ist eine CO₂-Datenquelle konfiguriert, wählt der Planungsalgorithmus automatisch die Stunden mit der niedrigsten CO₂-Emission aus.
@@ -56,7 +56,7 @@ Ist eine CO₂-Datenquelle konfiguriert, wählt der Planungsalgorithmus automati
/>
:::note[Hinweis]
-Hast du einen [dynamischen Stromtarif](./dynamic-prices) konfiguriert, wird dieser bevorzugt.
-Die CO₂-Daten werden weiterhin an deinen [Ladevorgängen](./sessions) erfasst.
+Hast du einen [dynamischen Stromtarif](/de/features/dynamic-prices) konfiguriert, wird dieser bevorzugt.
+Die CO₂-Daten werden weiterhin an deinen [Ladevorgängen](/de/features/sessions) erfasst.
Der Planungsalgorithmus und die "Günstiges Netzladen"-Funktion optimieren nun jedoch auf Preis anstatt auf CO₂.
:::
diff --git a/src/content/docs/de/features/dynamic-prices.mdx b/src/content/docs/de/features/dynamic-prices.mdx
index 151788d18..842682dac 100644
--- a/src/content/docs/de/features/dynamic-prices.mdx
+++ b/src/content/docs/de/features/dynamic-prices.mdx
@@ -57,11 +57,11 @@ Hier siehst du die Energiepreise für die kommenden Stunden und kannst ein Preis
Dieses Limit gilt im **PV-Modus** des aktuellen Ladepunktes.
Mit Klick auf "überall anwenden" wird das Limit für alle Ladepunkte übernommen.
-Zusätzlich zum [PV-Überschussladen](./solar-charging) wird nun in den Stunden mit niedrigem Strompreis (grüne Balken) schnelles Laden aktiviert.
+Zusätzlich zum [PV-Überschussladen](/de/features/solar-charging) wird nun in den Stunden mit niedrigem Strompreis (grüne Balken) schnelles Laden aktiviert.
## Ladeplanung
-Durch die Nutzung von [Ladeplänen](./plans) kannst du deine Energiekosten noch genauer regeln.
+Durch die Nutzung von [Ladeplänen](/de/features/plans) kannst du deine Energiekosten noch genauer regeln.
Du musst lediglich deine Energiemenge (kWh) bzw. deinen Zielladestand (%) und die gewünschte Abfahrtszeit angeben.
Ist ein zeitabhängiger oder dynamischer Stromtarif konfiguriert, wählt der Planungsalgorithmus automatisch die günstigsten Stunden für die Ladung aus.
diff --git a/src/content/docs/de/features/limits.mdx b/src/content/docs/de/features/limits.mdx
index dc027f815..1a4496706 100644
--- a/src/content/docs/de/features/limits.mdx
+++ b/src/content/docs/de/features/limits.mdx
@@ -19,7 +19,7 @@ Zudem hast du den Komfort, immer eine gewisse Reichweite für spontane Fahrten z
Ein Beispiel: Du kommst mit einem Ladestand von 5% zu Hause an.
Hast du eine Mindestladung von 20% definiert, wird das Fahrzeug sofort auf 20% geladen.
Wenn nötig auch mit Energie aus deiner Hausbatterie oder aus dem Stromnetz.
-Danach lädt das Fahrzeug wie gewohnt mit [PV Überschuss](./solar-charging).
+Danach lädt das Fahrzeug wie gewohnt mit [PV Überschuss](/de/features/solar-charging).
### Einstellung
@@ -43,7 +43,7 @@ Eine aktive Mindestladung wird in der UI durch einen roten Bereich im Fortschrit
:::note[Hinweis]
Kann evcc den Ladestand deines Fahrzeugs beim Anstecken nicht ermitteln, geht die Regelung davon aus, dass dein Fahrzeug leer ist.
Das heißt evcc lädt die errechnete Energiemenge bis zur Mindestladung (bspw. 0-20%) in den Akku.
-Grundlage ist hier die am [Fahrzeug](./vehicle) hinterlegte Akkukapazität.
+Grundlage ist hier die am [Fahrzeug](/de/features/vehicle) hinterlegte Akkukapazität.
Tritt dies regelmäßig auf, bspw. weil der Empfang am Ladepunkt schlecht ist, solltest du die Mindestladung deaktivieren.
:::
@@ -112,6 +112,6 @@ Was für dich die sinnvollste Option ist, hängt von deiner Nutzung und deinem F
### Zusammenspiel Ladeplanung
-Über die [Ladeplanung](./plans) kannst du definieren, bis wann eine bestimmte Energiemenge oder ein Ladestand erreicht sein soll.
+Über die [Ladeplanung](/de/features/plans) kannst du definieren, bis wann eine bestimmte Energiemenge oder ein Ladestand erreicht sein soll.
Ladepläne haben eine höhere Priorität als das Ladelimit.
Ist bspw. ein Ladeplan für "morgen 8 Uhr auf 100%" aktiv, würde dieser ein am Ladepunkt eingestelltes Limit von bspw. 80% temporär übersteuern.
diff --git a/src/content/docs/de/features/loadmanagement.mdx b/src/content/docs/de/features/loadmanagement.mdx
index f6ad3adcd..93ec623f0 100644
--- a/src/content/docs/de/features/loadmanagement.mdx
+++ b/src/content/docs/de/features/loadmanagement.mdx
@@ -182,4 +182,4 @@ Private Nutzung mit kleineren Installationen wird kostenlos bleiben.
- `priority` Einstellungen am Ladepunkt werden noch nicht berücksichtigt.
- Neue Ladevorgänge erhalten nur den verbleibenden Spielraum im Stromkreis.
Eine aktive Umverteilung auf laufende Ladevorgänge wird noch nicht unterstützt.
-- [Netzladen](./battery#gridcharge) der Hausbatterie wird nicht berücksichtigt. Wenn die Hausbatterie aktiv aus dem Netz lädt, fließt dieser Verbrauch nicht in die Lastmanagement-Berechnung ein. Bei aktivem [§ 14a Reduzierungssignal](/de/external-limit) wird das Netzladen jedoch automatisch pausiert.
+- [Netzladen](/de/features/battery#gridcharge) der Hausbatterie wird nicht berücksichtigt. Wenn die Hausbatterie aktiv aus dem Netz lädt, fließt dieser Verbrauch nicht in die Lastmanagement-Berechnung ein. Bei aktivem [§ 14a Reduzierungssignal](/de/external-limit) wird das Netzladen jedoch automatisch pausiert.
diff --git a/src/content/docs/de/features/optimizer.mdx b/src/content/docs/de/features/optimizer.mdx
index 1277662fb..b2225571c 100644
--- a/src/content/docs/de/features/optimizer.mdx
+++ b/src/content/docs/de/features/optimizer.mdx
@@ -42,7 +42,7 @@ Der Optimizer sammelt verschiedene Daten:
- **Aktueller Zustand:** Ladestand der Batterie, angeschlossene Fahrzeuge, Wärmebedarf
Auf Basis dieser Daten berechnet ein Optimierungsalgorithmus das voraussichtliche Verhalten deines Energiesystems.
-Er identifiziert kostenoptimale Aktionen: effiziente [Ladepläne](./plans), Batteriesteuerung (Halten, Netzladen).
+Er identifiziert kostenoptimale Aktionen: effiziente [Ladepläne](/de/features/plans), Batteriesteuerung (Halten, Netzladen).
Außerdem prognostiziert er, wann die Hausbatterie voll oder leer sein wird.
Ziel: **Energiekosten minimieren.**
@@ -73,7 +73,7 @@ Er zeigt Prognosen und Einsparpotenziale an, greift aber noch nicht aktiv in die
Nächste Schritte:
- Aktionen integrieren: Hausbatterie aktiv steuern
-- [Ladepläne](./plans) durch den Optimizer optimieren lassen
+- [Ladepläne](/de/features/plans) durch den Optimizer optimieren lassen
- Nutzern ermöglichen, spezifische Einstellungen an den Optimizer zu übergeben
## Technischer Hintergrund
diff --git a/src/content/docs/de/features/plans.mdx b/src/content/docs/de/features/plans.mdx
index c8cfb5d9d..ae515ccb0 100644
--- a/src/content/docs/de/features/plans.mdx
+++ b/src/content/docs/de/features/plans.mdx
@@ -11,7 +11,7 @@ Gibst du **eine Abfahrtszeit und ein Ladeziel** ein, sucht dir der Planungsalgor
Der Planer ist nur im PV- und Min+PV-Modus aktiv.
Selbst produzierte Sonnenenergie wird weiterhin bevorzugt genutzt.
Reicht die eigene Energie nicht aus, wird der Rest aus dem Stromnetz geladen.
-Dabei gibt es abhängig davon, ob du einen [dynamischen Stromtarif](./dynamic-prices) oder eine Datenquelle für [CO₂-Vorhersagen](./co2) hinterlegt hast, momentan **drei Ladestrategien**:
+Dabei gibt es abhängig davon, ob du einen [dynamischen Stromtarif](/de/features/dynamic-prices) oder eine Datenquelle für [CO₂-Vorhersagen](/de/features/co2) hinterlegt hast, momentan **drei Ladestrategien**:
1. **Günstiges Laden** (dynamischer Stromtarif vorhanden): Fahrzeug lädt in den günstigsten Stunden vor der Abfahrt.
2. **Grünes Laden** (CO₂-Vorhersage vorhanden): Fahrzeug lädt in den Stunden mit dem geringsten CO₂-Ausstoß.
@@ -61,7 +61,7 @@ Sind mehrere Pläne aktiv, wird immer der nächste passende Zeitpunkt verwendet
:::note[Hinweis]
Diese Ladestand-basierten Pläne werden pro Fahrzeug gespeichert.
-Das heißt, du kannst [mehrere Fahrzeuge](./vehicle#mehrere-fahrzeuge) an derselben Wallbox laden.
+Das heißt, du kannst [mehrere Fahrzeuge](/de/features/vehicle#mehrere-fahrzeuge) an derselben Wallbox laden.
Es wird immer die Planung des aktuell verbundenen Fahrzeugs verwendet.
:::
diff --git a/src/content/docs/de/features/sessions.mdx b/src/content/docs/de/features/sessions.mdx
index 80be82c93..155f5312f 100644
--- a/src/content/docs/de/features/sessions.mdx
+++ b/src/content/docs/de/features/sessions.mdx
@@ -46,16 +46,16 @@ In der Hauptansicht siehst du Informationen zum aktuellen Ladevorgang.
* **⌀ Preis:** Zeigt den durchschnittlichen Preis pro kWh an.
Basis ist der aktuelle Strompreis, der Eigenverbrauchsanteil und die ggf. entgangene Einspeisevergütung.
- Nur verfügbar, wenn ein [Stromtarif](./dynamic-prices) konfiguriert ist.
+ Nur verfügbar, wenn ein [Stromtarif](/de/features/dynamic-prices) konfiguriert ist.
* **Σ Preis:** Gesamtpreis des aktuellen Ladevorgangs.
Basis ist der aktuelle Strompreis, der Eigenverbrauchsanteil und die ggf. entgangene Einspeisevergütung.
- Nur verfügbar, wenn ein [Stromtarif](./dynamic-prices) konfiguriert ist.
+ Nur verfügbar, wenn ein [Stromtarif](/de/features/dynamic-prices) konfiguriert ist.
* **⌀ CO₂:** Zeigt den durchschnittlichen CO₂-Ausstoß pro kWh an.
Basis ist der Eigenverbrauchsanteil in Kombination mit den CO₂-Emissionen des Strommixes.
Eigener Sonnenstrom (direkte PV-Nutzung und Speicher) werden als CO₂-frei gewertet.
- Nur verfügbar, wenn eine [CO₂-Quelle](./co2) konfiguriert ist.
+ Nur verfügbar, wenn eine [CO₂-Quelle](/de/features/co2) konfiguriert ist.
## Liste der Ladevorgänge
diff --git a/src/content/docs/de/features/solar-charging.mdx b/src/content/docs/de/features/solar-charging.mdx
index 956804e84..68f0ef72b 100644
--- a/src/content/docs/de/features/solar-charging.mdx
+++ b/src/content/docs/de/features/solar-charging.mdx
@@ -77,7 +77,7 @@ Batteriesysteme haben eine eigene, schnelle Regelung.
Im Standardfall hat die Hausbatterie Vorrang.
Erst wenn sie keine Leistung mehr aufnehmen kann, beginnt der **PV-Modus** mit der Ladung des Fahrzeuges.
-Wie du dieses Verhalten anpassen kannst, erfährst du unter [Hausbatterie](./battery).
+Wie du dieses Verhalten anpassen kannst, erfährst du unter [Hausbatterie](/de/features/battery).
## Min+PV-Modus
diff --git a/src/content/docs/de/features/vehicle.mdx b/src/content/docs/de/features/vehicle.mdx
index bc369f72c..60ccbdb8f 100644
--- a/src/content/docs/de/features/vehicle.mdx
+++ b/src/content/docs/de/features/vehicle.mdx
@@ -7,7 +7,7 @@ sidebar:
import Screenshot from "@components/Screenshot.astro";
Konfigurierst du dein Fahrzeug, bzw. deine Fahrzeuge in evcc, stehen dir zusätzliche Funktionen zur Verfügung.
-Du kannst [Mindestladung & Ladelimit](./limits) konfigurieren, [Ladepläne](./plans) nutzen und bekommst in den [Ladevorgängen](./sessions) eine detaillierte Auswertung nach Fahrzeug inkl. Informationen wie Kilometerstände.
+Du kannst [Mindestladung & Ladelimit](/de/features/limits) konfigurieren, [Ladepläne](/de/features/plans) nutzen und bekommst in den [Ladevorgängen](/de/features/sessions) eine detaillierte Auswertung nach Fahrzeug inkl. Informationen wie Kilometerstände.
Das Hinterlegen von Fahrzeugen ist optional. Da evcc in den meisten Fällen den Ladevorgang über die Wallbox steuert, klappt PV- und preisabhängiges Laden auch ohne Fahrzeugkonfiguration.
@@ -22,7 +22,7 @@ Dies ist ein Standardfahrzeug, das keine speziellen Funktionen unterstützt.
Selbst wenn du ein eigenes Fahrzeug konfiguriert hast, kannst du jederzeit auf das Gastfahrzeug umschalten.
Dies ist bspw. sinnvoll, wenn ein nicht konfiguriertes Fahrzeug (bspw. spontaner Besuch) an deiner Wallbox lädt.
evcc verwendet dann die am Ladepunkt konfigurierten Standardwerte für Leistung und Phasen.
-Unter [Ladevorgänge](./sessions) wird diese Ladung dem Gastfahrzeug zugeordnet.
+Unter [Ladevorgänge](/de/features/sessions) wird diese Ladung dem Gastfahrzeug zugeordnet.
### Fahrzeuge ohne API (Offline)
diff --git a/src/content/docs/de/index.mdx b/src/content/docs/de/index.mdx
index 0d77b2975..33cb429e1 100644
--- a/src/content/docs/de/index.mdx
+++ b/src/content/docs/de/index.mdx
@@ -105,7 +105,7 @@ Du willst mehr? Diese Funktionen und Integrationen gehen über die Grundlagen hi
- [Externe Begrenzung (§ 14a EnWG & § 9 EEG)](/de/external-limit): Vorgaben des Netzbetreibers
- [Benachrichtigungen](/de/notifications): Nachrichten über deine Ladevorgänge
- [Home Assistant](/de/integrations/home-assistant): Integration in dein Smart Home
-- [REST-API](/de/integrations/rest-api) und [MQTT-API](/de/integrations/mqtt-api): Anbindung anderer Systeme
+- [REST-API](/integrations/rest-api) und [MQTT-API](/de/integrations/mqtt-api): Anbindung anderer Systeme
- [MCP-Server](/de/integrations/mcp): Anbindung von KI-Assistenten
- [Sunny Home Manager](/de/integrations/sma-sunny-home-manager): SMA-Energiemanagement
diff --git a/src/content/docs/de/installation/configuration.mdx b/src/content/docs/de/installation/configuration.mdx
index 6e6fd9c50..60272f7a2 100644
--- a/src/content/docs/de/installation/configuration.mdx
+++ b/src/content/docs/de/installation/configuration.mdx
@@ -20,7 +20,7 @@ Die Weboberfläche ist der einfachste und schnellste Weg, evcc einzurichten.
-1. **evcc starten**: Nach der [Installation](../installation) starte evcc gemäß der Anleitung für dein System
+1. **evcc starten**: Nach der [Installation](/de/installation) starte evcc gemäß der Anleitung für dein System
2. **Browser öffnen**: Gehe zu `http://:7070` (z.B. `http://evcc.local:7070` oder `http://192.168.1.50:7070`)
3. **Administrator-Passwort setzen**: Beim ersten Start wirst du aufgefordert, ein Passwort zu vergeben
4. **Einrichtung**: Folge den Anweisungen auf der Willkommensseite
@@ -52,6 +52,8 @@ Zusätzlich kannst du verschiedene Dienste und Protokolle einbinden:
- **Sunny Home Manager**: Integration via SEMP-Protokoll
- **Externe Begrenzung**: Leistungsbegrenzung durch Netzbetreiber (§ 14a EnWG, § 9 EEG) oder übergeordnete Energiemanagementsysteme
+
+
### Sichern & Wiederherstellen
Die Weboberfläche bietet integrierte Funktionen für Datensicherung:
@@ -167,7 +169,7 @@ Die Datei beinhaltet lediglich Demo-Geräte (`demo-charger`, `demo-meter`, `demo
Diese haben feste Werte.
Gehe die Datei nun Stück für Stück durch und passe die Werte an dein Setup an:
-- Ersetze die Demo-Geräte durch deine eigenen [Zähler](../meters), [Wallboxen](../chargers) und [Fahrzeuge](../vehicles).
+- Ersetze die Demo-Geräte durch deine eigenen [Zähler](/de/meters), [Wallboxen](/de/chargers) und [Fahrzeuge](/de/vehicles).
- Hast du keine Batterie, kannst du den entsprechenden Abschnitt komplett entfernen.
- Hast du mehrere PV-Anlagen, kannst du die entsprechenden Abschnitte duplizieren.
- Hast du mehrere Wallboxen, kopiere den Loadpoint- und Charger-Abschnitt und passe die Namen an.
@@ -184,7 +186,7 @@ Dann bemerkst du schnell, wenn du einen Fehler gemacht hast.
#### Weitere Informationen
Die [evcc.dist.yaml](https://github.com/evcc-io/evcc/blob/master/evcc.dist.yaml) im Hauptprojekt beinhaltet eine vollständige Liste aller möglichen Konfigurations-Optionen.
-Ausführlichere Erklärungen zu den Optionen findest du unter [Referenz → evcc.yaml](../reference/configuration).
+Ausführlichere Erklärungen zu den Optionen findest du unter [Referenz → evcc.yaml](/de/reference/configuration).
Willst du eine dynamische Demo sehen kannst du dir auch den Inhalt der Datei [demo.yaml](https://github.com/evcc-io/evcc/blob/master/cmd/demo.yaml) ansehen.
Diese Datei beinhaltet JavaScript-basierte Demo-Geräte, die eine eingeschränkte Funktionalität simulieren.
diff --git a/src/content/docs/de/installation/docker.mdx b/src/content/docs/de/installation/docker.mdx
index 52094623d..d5ab235e0 100644
--- a/src/content/docs/de/installation/docker.mdx
+++ b/src/content/docs/de/installation/docker.mdx
@@ -12,7 +12,7 @@ Oft kommen hier NAS-Systeme wie Synology, QNAP, Unraid und TrueNAS zum Einsatz.
:::caution[Wichtig]
Diese Anleitung setzt grundlegende Erfahrung mit Docker voraus.
-Solltest du noch nicht mit Docker gearbeitet haben, empfehlen wir eine direkte Installation wie in der [Linux](./linux) oder [macOS](./macos) Anleitung beschrieben
+Solltest du noch nicht mit Docker gearbeitet haben, empfehlen wir eine direkte Installation wie in der [Linux](/de/installation/linux) oder [macOS](/de/installation/macos) Anleitung beschrieben
Sind deine Geräte nicht über Netzwerk erreichbar (bspw. RS485 Adapter) solltest du auch die direkte Installation wählen.
Es gibt technische Lösungen, dies mit Docker umzusetzen.
@@ -27,7 +27,7 @@ evcc kann auf zwei Arten konfiguriert werden:
1. **Weboberfläche** (empfohlen): Starte den Container ohne `evcc.yaml`. Nach dem Start richtest du evcc direkt im Browser ein. Die Konfiguration wird automatisch in der Datenbank gespeichert.
-2. **Konfigurationsdatei** (traditionelle Methode): Erstelle eine `evcc.yaml` Datei mit deinen Einstellungen. Eine Anleitung findest du unter [Einrichtung](./configuration).
+2. **Konfigurationsdatei** (traditionelle Methode): Erstelle eine `evcc.yaml` Datei mit deinen Einstellungen. Eine Anleitung findest du unter [Einrichtung](/de/installation/configuration).
### Volumes
@@ -259,6 +259,8 @@ Falls ein neues Image vorhanden ist, startet das folgende Kommando den Container
sudo docker compose up -d
```
+
+
## Testen
Hast du deinen Container erfolgreich erstellt und gestartet, kannst du die evcc Web UI unter `http://:7070` aufrufen.
@@ -276,7 +278,7 @@ Wenn du die Oberfläche siehst, aber eine Fehlermeldung angezeigt wird, überpr
- Bei dateibasierter Konfiguration: die Einstellungen in der `evcc.yaml` Datei
- Bei UI-Konfiguration: die Geräteeinstellungen auf der Konfigurationsseite
-Weitere Details findest du in [Einrichtung](./configuration) oder in den [GitHub Diskussionen](https://github.com/evcc-io/evcc/discussions).
+Weitere Details findest du in [Einrichtung](/de/installation/configuration) oder in den [GitHub Diskussionen](https://github.com/evcc-io/evcc/discussions).
## Community Anleitungen
diff --git a/src/content/docs/de/installation/freebsd.mdx b/src/content/docs/de/installation/freebsd.mdx
index 2ff58ad65..afc40585f 100644
--- a/src/content/docs/de/installation/freebsd.mdx
+++ b/src/content/docs/de/installation/freebsd.mdx
@@ -46,7 +46,7 @@ Nach dem ersten Start kannst du deine evcc Instanz unter [http://localhost:7070]
Die Einstellungen werden automatisch in der Datenbank gespeichert.
Alternativ kannst du eine `evcc.yaml` Konfigurationsdatei unter `/usr/local/etc/evcc.yaml` ablegen.
-Details findest du unter [Einrichtung](./configuration).
+Details findest du unter [Einrichtung](/de/installation/configuration).
## Aktualisierung
diff --git a/src/content/docs/de/installation/home-assistant.mdx b/src/content/docs/de/installation/home-assistant.mdx
index 1159b2c32..65137ac2d 100644
--- a/src/content/docs/de/installation/home-assistant.mdx
+++ b/src/content/docs/de/installation/home-assistant.mdx
@@ -26,7 +26,7 @@ Den alten Dateien fügen wir `.migrated` an. Diese können dann von dir händisc
:::
Diese Anleitung beschreibt die Installation von evcc als Home Assistant Add-on.
-Im Gegensatz zur [Linux-Installation](./linux) oder [Docker-Installation](./docker) benötigst du hier kein Kommandozeilenwissen.
+Im Gegensatz zur [Linux-Installation](/de/installation/linux) oder [Docker-Installation](/de/installation/docker) benötigst du hier kein Kommandozeilenwissen.
## Voraussetzungen
@@ -120,7 +120,7 @@ Um die Konfigurationsdatei anzulegen bzw. zu editieren, hast du verschiedene Mö
- [File Editor](https://github.com/home-assistant/addons/tree/master/configurator): Stelle sicher, dass du die Option "Enforce Basepath" in der Add-on Konfiguration deaktiviert hast, starte das Add-on neu und navigiere nach `/addon_configs/49686a9f_evcc`
- [Advanced SSH & Web Terminal](https://github.com/hassio-addons/addon-ssh): Navigiere nach `/addon_configs/49686a9f_evcc` und verwende z. B. nano
-Details zur Erstellung der Konfigurationsdatei findest du unter [Einrichtung](./configuration).
+Details zur Erstellung der Konfigurationsdatei findest du unter [Einrichtung](/de/installation/configuration).
Wenn du erstmal mit einer Demo starten möchtest, starte evcc mit dem Parameter `--demo`.
Weitere Informationen findest du unter [CLI Referenz](/de/reference/cli/evcc).
@@ -188,5 +188,5 @@ Nach einem Neustart sollte dein Gerät für das evcc-Addon verfügbar sein (wahr
## Nächster Schritt: Integration
Wenn dein System läuft, kannst du dich um die Integration zwischen evcc und Home Assistant kümmern.
-Unter [Integrationen → Home Assistant](../integrations/home-assistant) findest du mehr Informationen.
+Unter [Integrationen → Home Assistant](/de/integrations/home-assistant) findest du mehr Informationen.
Du kannst evcc Daten in Home Assistant visualisieren oder Automatisierungen auf Basis von evcc erstellen.
diff --git a/src/content/docs/de/installation/linux-image.mdx b/src/content/docs/de/installation/linux-image.mdx
index cb37b529d..40f4bda86 100644
--- a/src/content/docs/de/installation/linux-image.mdx
+++ b/src/content/docs/de/installation/linux-image.mdx
@@ -49,7 +49,7 @@ Fertig vorkonfiguriert und einfach über die Web UI einzurichten!
- Geräte einrichten (Wallbox, PV-Anlage, Hausbatterie, Fahrzeuge)
- Hinweis: Mindestens ein Ladepunkt muss angelegt werden, damit evcc läuft.
- Weitere Details zur Einrichtung findest du in der [Konfigurationsanleitung](./configuration).
+ Weitere Details zur Einrichtung findest du in der [Konfigurationsanleitung](/de/installation/configuration).

@@ -60,6 +60,8 @@ Fertig vorkonfiguriert und einfach über die Web UI einzurichten!
Systemkonfiguration und Updates funktionieren über [Cockpit](#cockpit).
Melde dich dort einmal an, um das Standard-Linux-Passwort zu ändern.
+
+
## WLAN einrichten
Falls kein Netzwerkkabel vorhanden ist, erstellt der Raspberry Pi einen WLAN-Hotspot für die Ersteinrichtung.
@@ -73,6 +75,8 @@ Falls kein Netzwerkkabel vorhanden ist, erstellt der Raspberry Pi einen WLAN-Hot
Die WLAN-Konfiguration kann auch später über [Cockpit](#cockpit) vorgenommen werden.
+
+
## Systemverwaltung via Cockpit
Cockpit ist eine grafische Systemverwaltung für Linux.
diff --git a/src/content/docs/de/installation/linux.mdx b/src/content/docs/de/installation/linux.mdx
index c9c4688cc..1a2eb82d7 100644
--- a/src/content/docs/de/installation/linux.mdx
+++ b/src/content/docs/de/installation/linux.mdx
@@ -9,11 +9,11 @@ import { Tabs, TabItem, Steps } from "@astrojs/starlight/components";
Diese Anleitung beschreibt die Installation für apt-basierte Linux Distributionen wie Debian und Ubuntu.
:::tip[Raspberry Pi]
-Für Raspberry Pi empfehlen wir die einfachere Installation mit [evcc Linux Image](./linux-image).
+Für Raspberry Pi empfehlen wir die einfachere Installation mit [evcc Linux Image](/de/installation/linux-image).
:::
:::note
-Für andere Linux Distributionen schau dir die [Docker](./docker) Anleitung oder den [Manuelle Installation](#manual) Abschnitt an.
+Für andere Linux Distributionen schau dir die [Docker](/de/installation/docker) Anleitung oder den [Manuelle Installation](#manual) Abschnitt an.
:::
## Erstinstallation
@@ -95,13 +95,13 @@ Die Einstellungen werden automatisch in der Datenbank gespeichert.
### Konfigurationsdatei (traditionell)
Alternativ kannst du eine `evcc.yaml` Konfigurationsdatei verwenden.
-Details zur Erstellung der Konfigurationsdatei findest du unter [Einrichtung](./configuration).
+Details zur Erstellung der Konfigurationsdatei findest du unter [Einrichtung](/de/installation/configuration).
:::caution
Die Konfigurationsdatei muss unter `/etc/evcc.yaml` abgelegt werden.
:::
-- Erstelle die Konfigurationsdatei gemäß [Anleitung](./configuration) und speichere sie unter `/etc/evcc.yaml`
+- Erstelle die Konfigurationsdatei gemäß [Anleitung](/de/installation/configuration) und speichere sie unter `/etc/evcc.yaml`
- Starte den evcc-Server neu:
@@ -141,6 +141,8 @@ Mit folgendem Befehl kann man auf eine ältere Version von evcc wechseln:
sudo apt install evcc=x.xxx.x # Versionsnummer
```
+
+
## Systemdienst
evcc läuft als Systemdienst im Hintergrund. Mit folgenden Befehlen kann dieser Dienst gesteuert werden.
@@ -199,7 +201,7 @@ Ersetze `127.0.0.1` mit der IP Adresse oder dem Hostnamen des Computers, falls d
### Über die Weboberfläche (empfohlen)
Die einfachste Methode ist das Backup über die Weboberfläche.
-Details findest du unter [Einrichtung → Sichern & Wiederherstellen](./configuration#backup).
+Details findest du unter [Einrichtung → Sichern & Wiederherstellen](/de/installation/configuration#backup).
### Manuelles Backup
@@ -254,6 +256,8 @@ Alle Parameter aus `evcc.yaml` können als Umgebungsvariable gesetzt werden: `EV
Eine vollständige Liste aller CLI-Optionen findest du in der [CLI-Dokumentation](/de/reference/cli/evcc).
:::
+
+
## Manuelle Installation
Neben dem Debian/Ubuntu APT Paket, stellen wir auch weitere Binaries für Linux bereit.
@@ -277,7 +281,7 @@ Neben dem Debian/Ubuntu APT Paket, stellen wir auch weitere Binaries für Linux
### Konfiguration
Du kannst evcc über die Weboberfläche oder eine Konfigurationsdatei einrichten.
-Details findest du unter [Einrichtung](./configuration).
+Details findest du unter [Einrichtung](/de/installation/configuration).
Starte evcc mit:
diff --git a/src/content/docs/de/installation/macos.mdx b/src/content/docs/de/installation/macos.mdx
index 6eae885ec..172eeb6fc 100644
--- a/src/content/docs/de/installation/macos.mdx
+++ b/src/content/docs/de/installation/macos.mdx
@@ -50,7 +50,7 @@ Nach dem ersten Start kannst du evcc unter [http://localhost:7070](http://localh
Die Einstellungen werden automatisch in der Datenbank gespeichert.
Alternativ kannst du eine `evcc.yaml` Konfigurationsdatei unter `/etc/evcc.yaml` ablegen.
-Details findest du unter [Einrichtung](./configuration).
+Details findest du unter [Einrichtung](/de/installation/configuration).
## Aktualisierung
@@ -83,6 +83,8 @@ Um auf eine neue Version von evcc zu aktualisieren, führe folgende Schritte dur
tail -f /opt/homebrew/var/log/evcc.log
```
+
+
## Manuelle Installation
Hier findest du die Anleitung für die manuelle Installation von evcc auf macOS.
@@ -104,7 +106,7 @@ Hier findest du die Anleitung für die manuelle Installation von evcc auf macOS.
Nach dem ersten Start öffne [http://localhost:7070](http://localhost:7070) im Browser und richte evcc über die Weboberfläche ein.
-Alternativ kannst du eine `evcc.yaml` Konfigurationsdatei erstellen (siehe [Einrichtung](./configuration)) und evcc damit starten:
+Alternativ kannst du eine `evcc.yaml` Konfigurationsdatei erstellen (siehe [Einrichtung](/de/installation/configuration)) und evcc damit starten:
```sh
./evcc -c evcc.yaml
diff --git a/src/content/docs/de/installation/proxmox.mdx b/src/content/docs/de/installation/proxmox.mdx
index 0f4cbb591..a071714a5 100644
--- a/src/content/docs/de/installation/proxmox.mdx
+++ b/src/content/docs/de/installation/proxmox.mdx
@@ -27,7 +27,7 @@ Die folgende Installation wurde mit Ubuntu 24.4 getestet.
-3. Installiere evcc wie in der Anleitung für Debian basierte Linux Systeme beschrieben [Linux Installation](./linux).
+3. Installiere evcc wie in der Anleitung für Debian basierte Linux Systeme beschrieben [Linux Installation](/de/installation/linux).
4. Die Aktualisierung von evcc läuft über die Debian Paketverwaltung.
## Installation mit Helper-Script
diff --git a/src/content/docs/de/installation/windows.mdx b/src/content/docs/de/installation/windows.mdx
index f2a993c6a..21077a3f2 100644
--- a/src/content/docs/de/installation/windows.mdx
+++ b/src/content/docs/de/installation/windows.mdx
@@ -48,7 +48,7 @@ Allerdings wird evcc typischerweise in einer Linux-Umgebung (z.B. Raspberry Pi)
## Konfigurationsdatei (alternativ)
Alternativ zur Weboberfläche kannst du eine `evcc.yaml` Konfigurationsdatei verwenden.
-Details zur Erstellung findest du unter [Einrichtung](./configuration).
+Details zur Erstellung findest du unter [Einrichtung](/de/installation/configuration).
Starte evcc mit:
diff --git a/src/content/docs/de/integrations/home-assistant.mdx b/src/content/docs/de/integrations/home-assistant.mdx
index f1a029156..dad6e76cf 100644
--- a/src/content/docs/de/integrations/home-assistant.mdx
+++ b/src/content/docs/de/integrations/home-assistant.mdx
@@ -9,7 +9,7 @@ evcc ist auf intelligentes Laden und Heizen spezialisiert.
Beide Systeme ergänzen sich und lassen sich auf verschiedene Arten miteinander verbinden.
:::note
-evcc kann auch als Home Assistant Addon installiert werden. Die Anleitung dafür findest du [hier](../installation/home-assistant).
+evcc kann auch als Home Assistant Addon installiert werden. Die Anleitung dafür findest du [hier](/de/installation/home-assistant).
:::
## Visualisieren & Automatisieren
@@ -47,7 +47,7 @@ Alternativ kannst du evcc-Daten manuell über die REST API oder MQTT in Home Ass
#### REST API
-evcc bietet eine [REST API](/de/integrations/rest-api) an.
+evcc bietet eine [REST API](/integrations/rest-api) an.
[Diese Anleitung](https://github.com/marq24/ha-evcc/blob/main/HA_AS_EVCC_SOURCE.md) von [marq24](https://github.com/marq24) beschreibt die Einbindung in Home Assistant im Detail.
#### MQTT
diff --git a/src/content/docs/de/integrations/mqtt-api.md b/src/content/docs/de/integrations/mqtt-api.md
index 836ad02a0..e206b93b4 100644
--- a/src/content/docs/de/integrations/mqtt-api.md
+++ b/src/content/docs/de/integrations/mqtt-api.md
@@ -4,7 +4,7 @@ sidebar:
order: 2
---
-Alle Daten des [REST API](./rest-api) Endpunkts `/api/state` werden auch per MQTT veröffentlicht.
+Alle Daten des [REST API](/integrations/rest-api) Endpunkts `/api/state` werden auch per MQTT veröffentlicht.
Listen werden dabei in einzelne Sub-Topics aufgelöst (Index beginnt bei `1`).
## Lesbare Topics
diff --git a/src/content/docs/de/reference/configuration/chargers.mdx b/src/content/docs/de/reference/configuration/chargers.mdx
index d19b4f463..dc1e3c403 100644
--- a/src/content/docs/de/reference/configuration/chargers.mdx
+++ b/src/content/docs/de/reference/configuration/chargers.mdx
@@ -25,7 +25,7 @@ Im folgenden werden nun alle möglichen Parameter erklärt.
### `name`
-Eine Kurzbezeichnung der hier definierten Wallbox. Der Wert wird in der Referenzierung der Wallbox in der Konfiguration des [Ladepunktes](loadpoints#charger) verwendet.
+Eine Kurzbezeichnung der hier definierten Wallbox. Der Wert wird in der Referenzierung der Wallbox in der Konfiguration des [Ladepunktes](/de/reference/configuration/loadpoints#charger) verwendet.
**Beispiel**:
diff --git a/src/content/docs/de/reference/configuration/eebus.md b/src/content/docs/de/reference/configuration/eebus.md
index e97545df2..b7e320e6d 100644
--- a/src/content/docs/de/reference/configuration/eebus.md
+++ b/src/content/docs/de/reference/configuration/eebus.md
@@ -32,7 +32,7 @@ Entferne den `eebus:`-Block aus deiner `evcc.yaml` und starte neu.
Ein neues Zertifikat wird automatisch generiert und alle EEBus-Geräte müssen neu gekoppelt werden.
Wenn du dein bisheriges Zertifikat behalten möchtest, trage es im EEBus-Dialog unter **Erweiterte Einstellungen anzeigen** ein.
-Das ist sinnvoll, wenn die SKI (Bestandteil des öffentlichen Zertifikats) bereits für die [externe Steuerung](/de/features/external-control) beim Netzbetreiber hinterlegt ist.
+Das ist sinnvoll, wenn die SKI (Bestandteil des öffentlichen Zertifikats) bereits für die [externe Steuerung](/de/external-limit) beim Netzbetreiber hinterlegt ist.
:::
---
diff --git a/src/content/docs/de/reference/configuration/hems.md b/src/content/docs/de/reference/configuration/hems.md
index e487b3aa0..b7e80b099 100644
--- a/src/content/docs/de/reference/configuration/hems.md
+++ b/src/content/docs/de/reference/configuration/hems.md
@@ -10,7 +10,7 @@ Details zu Hintergrund und Einrichtung findest du unter [Externe Begrenzung](/de
:::note[Hinweis]
Abregelung und das Dimmen steuerbarer Verbraucher wirken direkt am Gerät, dafür sind keine Stromkreise erforderlich.
-Damit das Verbrauchslimit auf Ladepunkte wirkt, müssen Stromkreise im [Lastmanagement](../../features/loadmanagement) eingerichtet sein.
+Damit das Verbrauchslimit auf Ladepunkte wirkt, müssen Stromkreise im [Lastmanagement](/de/features/loadmanagement) eingerichtet sein.
Ein aktives Limit begrenzt dann den obersten Stromkreis.
:::
diff --git a/src/content/docs/de/reference/configuration/loadpoints.md b/src/content/docs/de/reference/configuration/loadpoints.md
index b49369df3..9c09d20ed 100644
--- a/src/content/docs/de/reference/configuration/loadpoints.md
+++ b/src/content/docs/de/reference/configuration/loadpoints.md
@@ -45,7 +45,7 @@ Referenz auf eine `charger` (Wallbox) Konfiguration.
charger: wallbox
```
-Wobei hier der Wert `wallbox` dem Wert eines `name` Parameters in der [Wallbox Definition](chargers#name) entspricht.
+Wobei hier der Wert `wallbox` dem Wert eines `name` Parameters in der [Wallbox Definition](/de/reference/configuration/chargers#name) entspricht.
---
@@ -63,7 +63,7 @@ Dieser Eintrag wird nur benötigt, wenn die verwendete Wallbox keine eigene Stro
meter: charge
```
-Wobei hier der Wert `charge` dem Wert eines `name` Parameters in der [Strommessgeräte Definition](meters#name) entspricht.
+Wobei hier der Wert `charge` dem Wert eines `name` Parameters in der [Strommessgeräte Definition](/de/reference/configuration/meters#name) entspricht.
---
@@ -81,7 +81,7 @@ Falls doch ausnahmsweise ein anderes Fahrzeug angeschlossen wurde (z. B. Gastfah
vehicle: renault
```
-Wobei hier der Wert `renault` dem Wert eines `name` Parameters in der [Fahrzeug Definition](vehicles#name) entspricht.
+Wobei hier der Wert `renault` dem Wert eines `name` Parameters in der [Fahrzeug Definition](/de/reference/configuration/vehicles#name) entspricht.
---
diff --git a/src/content/docs/de/reference/configuration/log.md b/src/content/docs/de/reference/configuration/log.md
index 793101815..2de6b2a8a 100644
--- a/src/content/docs/de/reference/configuration/log.md
+++ b/src/content/docs/de/reference/configuration/log.md
@@ -38,9 +38,9 @@ Definiert den Detailgrad der Protokollierung für verschiedene evcc Komponenten
**Mögliche Komponenten**:
- `site`: Die zentrale evcc Komponente (Regelung, Berechnungen, ...)
-- `lp-X`: Der jeweilige Ladepunkt, wobei `X` in der Reihenfolge der Konfiguration der [`loadpoints`](loadpoints) (Ladepunkte) durchnummeriert ist, beginnend bei `1`
-- `sma`: Die SMA HEMS Komponente, falls der SMA Sunnay Home Manager 2.0 per [`hems`](hems) eingebunden ist
-- _`fahrzeug`_: Jedes definierte [`vehicle`](vehicles) (Fahrzeug), hier ist der jeweilige Wert des Parameters [`type`](vehicles#type) (bzw. des templates) anzugeben.
+- `lp-X`: Der jeweilige Ladepunkt, wobei `X` in der Reihenfolge der Konfiguration der [`loadpoints`](/de/reference/configuration/loadpoints) (Ladepunkte) durchnummeriert ist, beginnend bei `1`
+- `sma`: Die SMA HEMS Komponente, falls der SMA Sunnay Home Manager 2.0 per [`hems`](/de/reference/configuration/hems) eingebunden ist
+- _`fahrzeug`_: Jedes definierte [`vehicle`](/de/reference/configuration/vehicles) (Fahrzeug), hier ist der jeweilige Wert des Parameters [`type`](/de/reference/configuration/vehicles#type) (bzw. des templates) anzugeben.
- Darüber hinaus können je nach Anwendungsfall noch weitere Komponenten spezifiziert werden (z. B. `cache`, `db`, `influx`, `mqtt`, ...)
**Mögliche Werte jede Komponente**: Identisch zu den Werten von [`log`](#log)
diff --git a/src/content/docs/de/reference/configuration/meters.md b/src/content/docs/de/reference/configuration/meters.md
index b791ef68b..b5faba4ce 100644
--- a/src/content/docs/de/reference/configuration/meters.md
+++ b/src/content/docs/de/reference/configuration/meters.md
@@ -6,7 +6,7 @@ sidebar:
_Meters_ (Strommessgeräte) ist eine Liste von in der Hausinstallation vorhandenen Geräten, welche die Leistung und den Energieverbrauch, die PV Erzeugung oder Hausbatterienutzung zur Verfügung stellen können. Ein `meter` definiert einen Punkt einer Energieleistung und kann ein physikalisches Gerät sein (z.b. ein Messgerät am Netzanschlusspunkt), ein PV Wechselrichter (AC oder auch DC im Falle von Hybrid-Wechselrichtern), oder ein Batterie-Wechselrichter.
-Wallboxen können intern ein Messgerät eingebaut haben, oder es kann auch extern angeschlossen sein. Falls eine Wallbox ein internes Strommessgerät hat, dann muss in `meters` **kein** Eintrag dafür angelegt werden. Falls die Wallbox keinen solchen Zähler hat, wird evcc den hier konfigurierten und der Wallbox im Ladepunkt unter [`meter`](loadpoints#meter) zugewiesenen Zähler verwenden, oder annehmen dass die eingestellte Ladeleistung auch tatsächlich genutzt wird.
+Wallboxen können intern ein Messgerät eingebaut haben, oder es kann auch extern angeschlossen sein. Falls eine Wallbox ein internes Strommessgerät hat, dann muss in `meters` **kein** Eintrag dafür angelegt werden. Falls die Wallbox keinen solchen Zähler hat, wird evcc den hier konfigurierten und der Wallbox im Ladepunkt unter [`meter`](/de/reference/configuration/loadpoints#meter) zugewiesenen Zähler verwenden, oder annehmen dass die eingestellte Ladeleistung auch tatsächlich genutzt wird.
evcc verwendet eine einheitliche Vorzeichen-Konvention für Leistungs- und Stromwerte (`power`, `powers`, `currents`):
@@ -44,7 +44,7 @@ Im folgenden werden nun alle möglichen Parameter erklärt.
### `name`
-Eine Kurzbezeichnung der hier definierten Wallbox. Der Wert wird in der Referenzierung des Gerätes in der Konfiguration der [Site](site) oder des [Ladepunktes](loadpoints#meter) verwendet.
+Eine Kurzbezeichnung der hier definierten Wallbox. Der Wert wird in der Referenzierung des Gerätes in der Konfiguration der [Site](/de/reference/configuration/site) oder des [Ladepunktes](/de/reference/configuration/loadpoints#meter) verwendet.
**Beispiel**:
diff --git a/src/content/docs/de/reference/configuration/site.mdx b/src/content/docs/de/reference/configuration/site.mdx
index 4d8a7e89f..af6a36426 100644
--- a/src/content/docs/de/reference/configuration/site.mdx
+++ b/src/content/docs/de/reference/configuration/site.mdx
@@ -51,7 +51,7 @@ title: Zuhause
### `meters`
-Definiert welche konfigurierten [`meter`](meters) (Strommessgeräte) als welche Art Messpunkt verwendet werden sollen.
+Definiert welche konfigurierten [`meter`](/de/reference/configuration/meters) (Strommessgeräte) als welche Art Messpunkt verwendet werden sollen.
Hier erfolgt somit die logische Verknüpfung der Gerätedefiniton mit dem Verwendungszweck.
Ein zunächst universeller Zähler bekommt somit entsprechend seines Einbauortes in der Hausinstallation einen Zweck zugewiesen.
@@ -78,7 +78,7 @@ site:
### `meters.grid`
-Definiert das [`meter`](meters) (Strommessgerät), welches die Messwerte des Netzanschlusspunktes liefert.
+Definiert das [`meter`](/de/reference/configuration/meters) (Strommessgerät), welches die Messwerte des Netzanschlusspunktes liefert.
**Mögliche Werte**: Wert eines `name` Parameters in der [`meters`](#meters) Konfiguration.
@@ -92,7 +92,7 @@ grid: mygridmeter # grid meter reference
### `meters.pv`
-Definiert die [`meter`](meters) (Strommessgeräte), welche die PV-Erzeugungswerte liefern.
+Definiert die [`meter`](/de/reference/configuration/meters) (Strommessgeräte), welche die PV-Erzeugungswerte liefern.
Es können mehrere Geräte angegeben werden. Die Leistungsdaten werden automatisch addiert.
**Mögliche Werte**: Ein Wert oder eine Liste von Werten eines `name` Parameters in der [`meters`](#meters) Konfiguration. Wobei die Listenversion auch bei Einzelwerten genutzt werden kann.
@@ -115,7 +115,7 @@ pv: # (pvs = veraltet)
### `meters.battery`
-Definiert die [`meter`](meters) (Strommessgeräte), welche die Messdaten des/der Batteriespeicher(s) liefern.
+Definiert die [`meter`](/de/reference/configuration/meters) (Strommessgeräte), welche die Messdaten des/der Batteriespeicher(s) liefern.
Es können mehrere Geräte angegeben werden. Die Leistungsdaten werden automatisch addiert und aus den Speicherfüllständen wird ein Mittelwert gebildet.
**Mögliche Werte**: Ein Wert oder eine Liste von Werten eines `name` Parameters in der [`meters`](#meters) Konfiguration. Wobei die Listenversion auch bei Einzelwerten genutzt werden kann.
diff --git a/src/content/docs/de/reference/configuration/vehicles.mdx b/src/content/docs/de/reference/configuration/vehicles.mdx
index 4bc71e305..817e196a1 100644
--- a/src/content/docs/de/reference/configuration/vehicles.mdx
+++ b/src/content/docs/de/reference/configuration/vehicles.mdx
@@ -7,7 +7,7 @@ sidebar:
import { Tabs, TabItem } from "@astrojs/starlight/components";
import SponsorshipRequired from "@components/SponsorshipRequired.astro";
-Ein Fahrzeug repräsentiert ein spezifisches elektrisches Fahrzeug (EV) mit seiner Batterie. Wenn ein Fahrzeug konfiguriert und einem [Ladepunkt](loadpoints#vehicle) zugewiesen ist, kann in der Benutzeroberfläche u.a. der Ladestatus, der Ladezustand (Soc) und die verbleibende Ladezeit angezeigt werden sowie weitere Daten automatisch vom Fahrzeug abgerufen und verarbeitet werden.
+Ein Fahrzeug repräsentiert ein spezifisches elektrisches Fahrzeug (EV) mit seiner Batterie. Wenn ein Fahrzeug konfiguriert und einem [Ladepunkt](/de/reference/configuration/loadpoints#vehicle) zugewiesen ist, kann in der Benutzeroberfläche u.a. der Ladestatus, der Ladezustand (Soc) und die verbleibende Ladezeit angezeigt werden sowie weitere Daten automatisch vom Fahrzeug abgerufen und verarbeitet werden.
Ebenfalls ist es damit möglich die Ladung auf einen bestimmten Ladestand (Soc) zu begrenzen. Da die meisten Wallboxen diesen nicht kennen können (er wird bislang nur in ganz bestimmten Kombinationen der Wallbox übermittelt), kann evcc mit dieser Konfiguration direkt mit dem Fahrzeug über die Online-Schnittstelle (API) des Fahrzeugherstellers kommunizieren.
@@ -32,7 +32,7 @@ Im folgenden werden nun alle möglichen Parameter erklärt.
### `name`
-Eine Kurzbezeichnung des hier konfigurierten Fahrzeugs. Der Wert wird in der Referenzierung des Fahrzeugs in der Konfiguration des [Ladepunktes](loadpoints#vehicle) verwendet.
+Eine Kurzbezeichnung des hier konfigurierten Fahrzeugs. Der Wert wird in der Referenzierung des Fahrzeugs in der Konfiguration des [Ladepunktes](/de/reference/configuration/loadpoints#vehicle) verwendet.
**Beispiel**:
diff --git a/src/content/docs/de/reference/plugins.mdx b/src/content/docs/de/reference/plugins.mdx
index 537a467e3..0ba30ffa6 100644
--- a/src/content/docs/de/reference/plugins.mdx
+++ b/src/content/docs/de/reference/plugins.mdx
@@ -67,6 +67,8 @@ Die vollständigen Attribut-Listen für Zähler, Wallboxen, Fahrzeuge und Tarife
+
+
### Lesen
Beim Lesen von Daten mithilfe eines Plugins können sogenannte _Pipelines_ verwendet werden.
diff --git a/src/content/docs/en/blog/2025/01/20/tesla-api-update.mdx b/src/content/docs/en/blog/2025/01/20/tesla-api-update.mdx
index e24930648..f99bbe433 100644
--- a/src/content/docs/en/blog/2025/01/20/tesla-api-update.mdx
+++ b/src/content/docs/en/blog/2025/01/20/tesla-api-update.mdx
@@ -24,7 +24,7 @@ This post has been revised.
## Paid Tesla Fleet API starting February
-Last year we integrated the [Tesla Fleet API](/en/blog/2024/02/01/v0.124-new-tesla-api) into evcc.
+Last year we integrated the [Tesla Fleet API](/en/blog/2024/02/01/v0124-new-tesla-api) into evcc.
Tesla was the first manufacturer to provide an official and above all open API for communication with their vehicles.
Tesla had already announced that this API would not stay free of charge.
@@ -51,6 +51,8 @@ So we decided not to reinvend the wheel.
## What to do?
+
+
### For Tesla drivers
For the setup in evcc you need three pieces of information:
diff --git a/src/content/docs/en/blog/2025/07/30/highlights-config-ui-feedin-ai.mdx b/src/content/docs/en/blog/2025/07/30/highlights-config-ui-feedin-ai.mdx
index cac28c671..d55e2df6e 100644
--- a/src/content/docs/en/blog/2025/07/30/highlights-config-ui-feedin-ai.mdx
+++ b/src/content/docs/en/blog/2025/07/30/highlights-config-ui-feedin-ai.mdx
@@ -80,6 +80,8 @@ This allows you to, for example, continue charging the majority at price-optimiz
More details can be found in the [documentation](/en/features/plans#late-charging).
+
+
## Configuration via browser
A lot of progress is being made on the topic of initial setup via browser.
diff --git a/src/content/docs/en/blog/2026/01/01/highlights-browser-config-ready.mdx b/src/content/docs/en/blog/2026/01/01/highlights-browser-config-ready.mdx
index 2ba3b6b9b..90ce20450 100644
--- a/src/content/docs/en/blog/2026/01/01/highlights-browser-config-ready.mdx
+++ b/src/content/docs/en/blog/2026/01/01/highlights-browser-config-ready.mdx
@@ -109,6 +109,8 @@ Settings are saved per browser and enable individual views for different users.

+
+
## Sponsoring: New Prices
We love open source and are convinced that the open knowledge accumulated in the project is a huge boost for the energy transition.
diff --git a/src/content/docs/en/faq.mdx b/src/content/docs/en/faq.mdx
index 875f07916..3eb42b367 100644
--- a/src/content/docs/en/faq.mdx
+++ b/src/content/docs/en/faq.mdx
@@ -18,7 +18,9 @@ The **configuration file** (`evcc.yaml`) is the traditional method and remains s
**Important**: Some newer features are only available through the web interface.
Both methods can also be used in parallel.
-More information can be found under [Configuration](./installation/configuration).
+More information can be found under [Configuration](/en/installation/configuration).
+
+
### I have an evcc.yaml configuration. How do I migrate to the web interface?
@@ -78,7 +80,7 @@ Possibly! evcc has plenty of uses beyond pure solar diversion. **Please note tha
Here's some ideas:
-- Automatically charge a vehicle depending on the current price of energy using a variable rate electricity tariff (such as Octopus Energy, Nachtstrom, Tibber, Awatter, etc.) - see [Dynamic Tariffs](./features/dynamic-prices)
+- Automatically charge a vehicle depending on the current price of energy using a variable rate electricity tariff (such as Octopus Energy, Nachtstrom, Tibber, Awatter, etc.) - see [Dynamic Tariffs](/en/features/dynamic-prices)
- Remotely start / stop your charger - especially useful on those chargers that don't have any other remote control interface
- Limit charging your vehicle to a certain state of charge - but please note that having your vehicle configured is essential.
@@ -183,7 +185,7 @@ evcc expects chargers to have switched to their new state before the next check
Some devices can sometimes react a little slowly to commands - if this happens, that desynchronisation of state is flagged with these error messages.
-If you're not experiencing any other issues, these can safely be ignored, or you can try increasing the [`interval`](./reference/configuration/interval).
+If you're not experiencing any other issues, these can safely be ignored, or you can try increasing the [`interval`](/en/reference/configuration/interval).
### connection refused
@@ -275,6 +277,8 @@ Sadly,
## Password
+
+
### I forgot my password. How can I reset it?
The password is stored encrypted, so it can't be read.
diff --git a/src/content/docs/en/features/battery.mdx b/src/content/docs/en/features/battery.mdx
index 8e9280862..759c16703 100644
--- a/src/content/docs/en/features/battery.mdx
+++ b/src/content/docs/en/features/battery.mdx
@@ -137,6 +137,8 @@ This puts the home battery into a locked state when a fast charging process is a
The blocking state applies for the period of fast charging.
The home battery is not discharged during this time.
+
+
### Grid Charging
Scenario: You have a dynamic electricity tariff and want to charge your home storage with cheap electricity at night.
@@ -147,7 +149,7 @@ For example, because the surplus generated during the day is not enough.
caption="Home battery dialog for mains charging"
/>
-Similar to [CO₂-](./co2) and [price-optimized charging](./dynamic-prices) for vehicles, you can also charge the home battery with cheap electricity.
+Similar to [CO₂-](/en/features/co2) and [price-optimized charging](/en/features/dynamic-prices) for vehicles, you can also charge the home battery with cheap electricity.
If your inverter supports this function, the "Grid charging" tab appears in the "Home battery" dialog.
You can set a limit here.
If the current electricity price falls below this limit, the home battery will be charged from the grid and simultaneously locked to prevent discharging.
@@ -159,7 +161,7 @@ After the power reduction ends, grid charging automatically resumes.
:::
:::caution[Load Management]
-Home battery grid charging is not considered by [load management](./loadmanagement).
+Home battery grid charging is not considered by [load management](/en/features/loadmanagement).
For example, if the home battery draws 9 kW from the grid, this consumption is not included in load management calculations.
This does not apply to § 14a power reduction signals – in that case, grid charging is automatically paused as described above.
:::
diff --git a/src/content/docs/en/features/co2.mdx b/src/content/docs/en/features/co2.mdx
index dd881f74d..24a525acd 100644
--- a/src/content/docs/en/features/co2.mdx
+++ b/src/content/docs/en/features/co2.mdx
@@ -45,7 +45,7 @@ This setting is useful to ensure a fully charged battery in the winter months, w
## Load planning
-By using [charging plans](./plans), you can control CO₂-optimised charging even more precisely.
+By using [charging plans](/en/features/plans), you can control CO₂-optimised charging even more precisely.
All you have to do is enter your amount of energy (kWh) or your destination charge level (%) and the desired departure time.
When a CO₂ data source is configured, the scheduling algorithm automatically selects the hours with the lowest CO₂ emissions.
@@ -55,7 +55,7 @@ When a CO₂ data source is configured, the scheduling algorithm automatically s
/>
:::note[Tip]
-If you have configured a [dynamic electricity tariff](./dynamic-prices), it will be preferred.
+If you have configured a [dynamic electricity tariff](/en/features/dynamic-prices), it will be preferred.
The CO₂ data will continue to be collected at your charging sessions.
However, the planning algorithm and the "Cheap Grid Charging" function now optimize for price instead of CO₂
:::
diff --git a/src/content/docs/en/features/dynamic-prices.mdx b/src/content/docs/en/features/dynamic-prices.mdx
index 649532a13..4abe6c030 100644
--- a/src/content/docs/en/features/dynamic-prices.mdx
+++ b/src/content/docs/en/features/dynamic-prices.mdx
@@ -63,11 +63,11 @@ Here you can see the energy prices for the coming hours and set a price limit.
This limit applies in **solar mode** of the current charging point.
If you click on "apply everywhere", the limit is applied to all charging points.
-In addition to [Solar Surplus Charging](./solar-charging), fast charging is now activated in the hours with low electricity prices (green bars).
+In addition to [Solar Surplus Charging](/en/features/solar-charging), fast charging is now activated in the hours with low electricity prices (green bars).
## Charging plan
-By using [charging plans](./plans) you can regulate your energy costs even more precisely.
+By using [charging plans](/en/features/plans) you can regulate your energy costs even more precisely.
All you have to do is enter your energy quantity (kWh) or your target charge level (%) and the desired departure time.
If a time-dependent or dynamic electricity tariff is configured, the planning algorithm automatically selects the cheapest hours for charging.
diff --git a/src/content/docs/en/features/limits.mdx b/src/content/docs/en/features/limits.mdx
index 2d5af0432..676d062fb 100644
--- a/src/content/docs/en/features/limits.mdx
+++ b/src/content/docs/en/features/limits.mdx
@@ -19,7 +19,7 @@ You also have the convenience of always having a certain range available for spo
An example: You arrive home with a charge level of 5%.
If you have defined a minimum charge of 20%, the vehicle is immediately charged to 20%.
If necessary, also with energy from your home battery or from the power grid.
-The vehicle then charges as usual with [Solar surplus charging](./solar-charging).
+The vehicle then charges as usual with [Solar surplus charging](/en/features/solar-charging).
### Setting
@@ -43,7 +43,7 @@ An active minimum charge is indicated in the UI by a red area in the progress ba
:::note[Note]
If evcc cannot determine the charge level of your vehicle when plugging it in, the system assumes that your vehicle is empty.
This means that evcc charges the calculated amount of energy into the battery up to the minimum charge (e.g. 0-20%).
-The basis here is the battery capacity stored on the [vehicle](./vehicle).
+The basis here is the battery capacity stored on the [vehicle](/en/features/vehicle).
If this occurs regularly, e.g. because the reception at the charging point is poor, you should deactivate the minimum charge.
:::
@@ -112,6 +112,6 @@ What makes the most sense for you depends on your usage and your vehicle (e.g. q
### Interaction of charging planning
-Using [Charge Planner](./plans) you can define by when a certain amount of energy or charge level should be reached.
+Using [Charge Planner](/en/features/plans) you can define by when a certain amount of energy or charge level should be reached.
Charging plans have a higher priority than the charging limit.
If, for example, a charging plan is active for "8 a.m. tomorrow at 100%", this would temporarily override a limit set at the charging point of, for example, 80%.
diff --git a/src/content/docs/en/features/loadmanagement.mdx b/src/content/docs/en/features/loadmanagement.mdx
index be2f0796c..cf80830f3 100644
--- a/src/content/docs/en/features/loadmanagement.mdx
+++ b/src/content/docs/en/features/loadmanagement.mdx
@@ -181,4 +181,4 @@ Private use with smaller installations will remain free of charge.
- `priority` settings at the charging point are not yet taken into account.
- New sessions receive only the remaining circuit headroom.
Rebalancing across active sessions is not yet supported.
-- Home battery [grid charging](./battery#gridcharge) is not considered. When the home battery actively charges from the grid, this consumption is not included in load management calculations. However, during active [§ 14a power reduction](/en/external-limit) signals, grid charging is automatically paused.
+- Home battery [grid charging](/en/features/battery#gridcharge) is not considered. When the home battery actively charges from the grid, this consumption is not included in load management calculations. However, during active [§ 14a power reduction](/en/external-limit) signals, grid charging is automatically paused.
diff --git a/src/content/docs/en/features/optimizer.mdx b/src/content/docs/en/features/optimizer.mdx
index 81e581c11..c506d5897 100644
--- a/src/content/docs/en/features/optimizer.mdx
+++ b/src/content/docs/en/features/optimizer.mdx
@@ -42,7 +42,7 @@ The optimizer collects various data:
- **Current state:** Battery state of charge, connected vehicles, heating demand
Based on this data, an optimisation algorithm calculates the expected behaviour of your energy system.
-It identifies cost-optimal actions: efficient [charging plans](./plans), battery control (hold, grid charging).
+It identifies cost-optimal actions: efficient [charging plans](/en/features/plans), battery control (hold, grid charging).
It also predicts when the home battery will be full or empty.
Goal: **Minimise energy costs.**
@@ -73,7 +73,7 @@ It shows forecasts and potential savings but does not yet actively control anyth
Next steps:
- Integrate actions: actively control the home battery
-- Let the optimizer optimise [charging plans](./plans)
+- Let the optimizer optimise [charging plans](/en/features/plans)
- Enable users to hand over specific settings to the optimizer
## Technical Background
diff --git a/src/content/docs/en/features/plans.mdx b/src/content/docs/en/features/plans.mdx
index 689760c6c..c06425ea4 100644
--- a/src/content/docs/en/features/plans.mdx
+++ b/src/content/docs/en/features/plans.mdx
@@ -11,7 +11,7 @@ If you enter **a departure time and a charging goal**, the planning algorithm wi
The planner is only active in Solar and Min+Solar mode.
Self-produced solar energy continues to be preferred.
If your own energy is not enough, the rest is charged from the power grid.
-Depending on whether you have one [dynamic electricity tariff](./dynamic-prices) or a data source for [CO₂-predictions](./co2) currently have **three charging strategies**:
+Depending on whether you have one [dynamic electricity tariff](/en/features/dynamic-prices) or a data source for [CO₂-predictions](/en/features/co2) currently have **three charging strategies**:
1. **Cheap charging** (dynamic electricity tariff available): Vehicle charges in the cheapest hours before departure.
2. **Green charging** (CO₂ forecast available): Vehicle charges in the hours with the lowest CO₂ emissions.
@@ -61,7 +61,7 @@ When multiple plans are active, the next matching time will be used and the plan
:::note[Note]
These state-of-charge based plans are stored per vehicle.
-This means you can charge [multiple vehicles](./vehicle#multiple-vehicles) at the same charging point.
+This means you can charge [multiple vehicles](/en/features/vehicle#multiple-vehicles) at the same charging point.
The planning of the currently connected vehicle will always be used.
:::
diff --git a/src/content/docs/en/features/sessions.mdx b/src/content/docs/en/features/sessions.mdx
index fda61cc55..c3a022bc9 100644
--- a/src/content/docs/en/features/sessions.mdx
+++ b/src/content/docs/en/features/sessions.mdx
@@ -46,15 +46,15 @@ In the main view you can see information about the current charging session.
* **⌀ Price:** Shows the average price per kWh.
The basis is the current electricity price, the proportion of self-consumption and any lost feed-in tariff.
- Only available if an [dynamic electricity tariff](./dynamic-prices) is configured.
+ Only available if an [dynamic electricity tariff](/en/features/dynamic-prices) is configured.
* **Σ Price:** Total price of the current charging session. The basis is the current electricity price, the share of self-consumption and any lost feed-in tariff.
- Only available if an [dynamic electricity tariff](./dynamic-prices) is configured.
+ Only available if an [dynamic electricity tariff](/en/features/dynamic-prices) is configured.
* **⌀ CO₂:** Shows the average CO₂ emissions per kWh.
The basis is the share of self-consumption in combination with the CO₂ emissions of the electricity mix.
Your own solar power (direct PV use and storage) is considered CO₂-free.
- Only available if a [CO₂ source](./co2) is configured.
+ Only available if a [CO₂ source](/en/features/co2) is configured.
## List of charging sessions
diff --git a/src/content/docs/en/features/solar-charging.mdx b/src/content/docs/en/features/solar-charging.mdx
index 50614ac36..7afe8e2d1 100644
--- a/src/content/docs/en/features/solar-charging.mdx
+++ b/src/content/docs/en/features/solar-charging.mdx
@@ -77,7 +77,7 @@ Battery systems have their own, fast regulation.
In the standard case, the home battery has priority.
The **Solar mode** only starts charging the vehicle when it can no longer absorb any power.
-You can find out how to adjust this behavior under [Home battery](./battery).
+You can find out how to adjust this behavior under [Home battery](/en/features/battery).
## Min+Solar mode
diff --git a/src/content/docs/en/features/vehicle.mdx b/src/content/docs/en/features/vehicle.mdx
index 650718f39..4a2bc8d66 100644
--- a/src/content/docs/en/features/vehicle.mdx
+++ b/src/content/docs/en/features/vehicle.mdx
@@ -7,7 +7,7 @@ sidebar:
import Screenshot from "@components/Screenshot.astro";
If you configure your vehicle or vehicles in evcc, additional functions are available to you.
-You can configure [Minimum Charge & Limits](./limits), use [Charge Planner](./plans) and get a detailed evaluation by vehicle in the [Charging Sessions](./sessions), including information such as mileage.
+You can configure [Minimum Charge & Limits](/en/features/limits), use [Charge Planner](/en/features/plans) and get a detailed evaluation by vehicle in the [Charging Sessions](/en/features/sessions), including information such as mileage.
Storing vehicles is optional. Since evcc controls the charging process via the wallbox in most cases, PV and price-dependent charging also works without vehicle configuration.
@@ -22,7 +22,7 @@ This is a standard vehicle that does not support any special functions.
Even if you have configured your own vehicle, you can switch to the guest vehicle at any time.
This is useful, for example, if an unconfigured vehicle (e.g. a spontaneous visitor) charges at your wallbox.
evcc then uses the standard values for power and phases configured at the charging point.
-Under [Charging Sessions](./sessions), this charge is assigned to the guest vehicle.
+Under [Charging Sessions](/en/features/sessions), this charge is assigned to the guest vehicle.
### Vehicles without API (offline)
diff --git a/src/content/docs/en/index.mdx b/src/content/docs/en/index.mdx
index 915032027..2dcd71a88 100644
--- a/src/content/docs/en/index.mdx
+++ b/src/content/docs/en/index.mdx
@@ -105,7 +105,7 @@ Want more? These features and integrations go beyond the basics:
- [External Limit (§ 14a EnWG & § 9 EEG)](/en/external-limit): grid operator requirements
- [Notifications](/en/notifications): messages about your charging sessions
- [Home Assistant](/en/integrations/home-assistant): integrate with your smart home
-- [REST API](/en/integrations/rest-api) and [MQTT API](/en/integrations/mqtt-api): connect other systems
+- [REST API](/integrations/rest-api) and [MQTT API](/en/integrations/mqtt-api): connect other systems
- [MCP Server](/en/integrations/mcp): connect AI assistants
- [Sunny Home Manager](/en/integrations/sma-sunny-home-manager): SMA energy management
diff --git a/src/content/docs/en/installation/configuration.mdx b/src/content/docs/en/installation/configuration.mdx
index 06a1fc2d9..f7997c206 100644
--- a/src/content/docs/en/installation/configuration.mdx
+++ b/src/content/docs/en/installation/configuration.mdx
@@ -20,7 +20,7 @@ The web interface is the easiest and fastest way to set up evcc.
-1. **Start evcc**: After [installation](../installation), start evcc according to the instructions for your system
+1. **Start evcc**: After [installation](/en/installation), start evcc according to the instructions for your system
2. **Open browser**: Go to `http://:7070` (e.g., `http://evcc.local:7070` or `http://192.168.1.50:7070`)
3. **Set administrator password**: On first start, you'll be prompted to set a password
4. **Setup**: Follow the instructions on the welcome page
@@ -52,6 +52,8 @@ Additionally, you can integrate various services and protocols:
- **Sunny Home Manager**: Integration via SEMP protocol
- **External Limit**: Power limitation by grid operators (§ 14a EnWG, § 9 EEG) or higher-level energy management systems
+
+
### Backup & Restore
The web interface offers integrated data backup functions:
@@ -167,7 +169,7 @@ The file only contains demo devices (`demo-charger`, `demo-meter`, `demo-battery
These have fixed values.
Go through the file step by step and adjust the values to your setup:
-- Replace the demo devices with your own [meters](../meters), [wallboxes](../chargers), and [vehicles](../vehicles).
+- Replace the demo devices with your own [meters](/en/meters), [wallboxes](/en/chargers), and [vehicles](/en/vehicles).
- If you don't have a battery, you can remove that section completely.
- If you have multiple solar systems, you can duplicate the corresponding sections.
- If you have multiple wallboxes, copy the loadpoint and charger sections and adjust the names.
@@ -184,7 +186,7 @@ This way you'll quickly notice if you've made a mistake.
#### Further Information
The [evcc.dist.yaml](https://github.com/evcc-io/evcc/blob/master/evcc.dist.yaml) in the main project contains a complete list of all possible configuration options.
-More detailed explanations of the options can be found under [Reference → evcc.yaml](../reference/configuration).
+More detailed explanations of the options can be found under [Reference → evcc.yaml](/en/reference/configuration).
If you want to see a dynamic demo, you can also look at the contents of the [demo.yaml](https://github.com/evcc-io/evcc/blob/master/cmd/demo.yaml) file.
This file contains JavaScript-based demo devices that simulate limited functionality.
diff --git a/src/content/docs/en/installation/docker.mdx b/src/content/docs/en/installation/docker.mdx
index 04b77ba0e..cee327553 100644
--- a/src/content/docs/en/installation/docker.mdx
+++ b/src/content/docs/en/installation/docker.mdx
@@ -13,7 +13,7 @@ Common use cases include NAS systems like Synology, QNAP, Unraid and TrueNAS.
:::caution
This guide assumes basic experience with Docker.
-If you haven't worked with Docker before, we recommend a direct installation as described in the [Linux](./linux) or [macOS](./macos) guide.
+If you haven't worked with Docker before, we recommend a direct installation as described in the [Linux](/en/installation/linux) or [macOS](/en/installation/macos) guide.
If your devices are not accessible via network (e.g. RS485 adapters) you should also choose the direct installation.
There are technical solutions to implement this with Docker.
@@ -28,7 +28,7 @@ evcc can be configured in two ways:
1. **Web interface** (recommended): Start the container without `evcc.yaml`. After starting, configure evcc directly in the browser. The configuration is automatically saved in the database.
-2. **Configuration file** (traditional method): Create an `evcc.yaml` file with your settings. Instructions can be found under [Configuration](./configuration).
+2. **Configuration file** (traditional method): Create an `evcc.yaml` file with your settings. Instructions can be found under [Configuration](/en/installation/configuration).
### Volumes
@@ -227,6 +227,8 @@ If a new image is available, the following command will restart the container -
sudo docker compose up -d
```
+
+
## Testing
After successfully creating and starting your container, you can access the evcc Web UI at `http://:7070`.
@@ -244,7 +246,7 @@ If you see the interface but an error message is displayed, check:
- For file-based configuration: the settings in your `evcc.yaml` file
- For UI configuration: the device settings on the configuration page
-You can find more details in [Configuration](./configuration) or in the [GitHub Discussions](https://github.com/evcc-io/evcc/discussions).
+You can find more details in [Configuration](/en/installation/configuration) or in the [GitHub Discussions](https://github.com/evcc-io/evcc/discussions).
## Community Guides
diff --git a/src/content/docs/en/installation/freebsd.mdx b/src/content/docs/en/installation/freebsd.mdx
index c7d6fd575..f1ac8990e 100644
--- a/src/content/docs/en/installation/freebsd.mdx
+++ b/src/content/docs/en/installation/freebsd.mdx
@@ -46,7 +46,7 @@ After the first start, you can configure your evcc instance at [http://localhost
Settings are automatically saved in the database.
Alternatively, you can use an `evcc.yaml` configuration file at `/usr/local/etc/evcc.yaml`.
-Details can be found in [Configuration](./configuration).
+Details can be found in [Configuration](/en/installation/configuration).
## Upgrades
diff --git a/src/content/docs/en/installation/home-assistant.mdx b/src/content/docs/en/installation/home-assistant.mdx
index 9704427f8..b20fc72ae 100644
--- a/src/content/docs/en/installation/home-assistant.mdx
+++ b/src/content/docs/en/installation/home-assistant.mdx
@@ -27,7 +27,7 @@ We will append `.migrated` to the old files. These can then be manually deleted
:::
This guide describes the installation of evcc as a Home Assistant addon.
-Unlike the [Linux installation](./linux) or [Docker installation](./docker), you don't need command line knowledge here.
+Unlike the [Linux installation](/en/installation/linux) or [Docker installation](/en/installation/docker), you don't need command line knowledge here.
## Prerequisites
@@ -121,7 +121,7 @@ To create or edit the configuration file, you have several options:
- [File Editor](https://github.com/home-assistant/addons/tree/master/configurator): Make sure you have disabled the "Enforce Basepath" option in the addon configuration, restart the addon and navigate to `/addon_configs/49686a9f_evcc`
- [Advanced SSH & Web Terminal](https://github.com/hassio-addons/addon-ssh): Navigate to `/addon_configs/49686a9f_evcc` and use e.g. nano
-See [Configuration](./configuration) for details on creating the configuration file.
+See [Configuration](/en/installation/configuration) for details on creating the configuration file.
If you want to see the system running in demo mode, just start evcc with the parameter `--demo`.
See [CLI Reference](/en/reference/cli/evcc) for more information.
@@ -189,5 +189,5 @@ After a restart, your device should be available to the evcc addon (probably as
## Next Step: Integration
Once your system is running, you can set up the integration between evcc and Home Assistant.
-Under [Integrations → Home Assistant](../integrations/home-assistant) you'll find more information.
+Under [Integrations → Home Assistant](/en/integrations/home-assistant) you'll find more information.
You can visualize evcc data in Home Assistant or create automations based on evcc.
diff --git a/src/content/docs/en/installation/linux-image.mdx b/src/content/docs/en/installation/linux-image.mdx
index 4179806fc..5a060170d 100644
--- a/src/content/docs/en/installation/linux-image.mdx
+++ b/src/content/docs/en/installation/linux-image.mdx
@@ -49,7 +49,7 @@ Pre-configured and ready to set up via the web UI!
- Set up devices (wallbox, solar system, home battery, vehicles)
- Note: At least one loadpoint must be created for evcc to run.
- More details on setup can be found in the [configuration guide](./configuration).
+ More details on setup can be found in the [configuration guide](/en/installation/configuration).

@@ -60,6 +60,8 @@ Pre-configured and ready to set up via the web UI!
System configuration and updates work via [Cockpit](#cockpit).
Log in there once to change the default Linux password.
+
+
## Set up WiFi
If no network cable is available, the Raspberry Pi creates a WiFi hotspot for initial setup.
@@ -73,6 +75,8 @@ If no network cable is available, the Raspberry Pi creates a WiFi hotspot for in
WiFi configuration can also be done later via [Cockpit](#cockpit).
+
+
## System Management via Cockpit
Cockpit is a graphical system management interface for Linux.
diff --git a/src/content/docs/en/installation/linux.mdx b/src/content/docs/en/installation/linux.mdx
index 214348a09..dbadd4c01 100644
--- a/src/content/docs/en/installation/linux.mdx
+++ b/src/content/docs/en/installation/linux.mdx
@@ -9,11 +9,11 @@ import { Tabs, TabItem, Steps } from "@astrojs/starlight/components";
This guide describes installation for apt-based Linux distributions like Debian and Ubuntu.
:::tip[Raspberry Pi]
-For Raspberry Pi, we recommend the easier installation with [evcc Linux Image](./linux-image).
+For Raspberry Pi, we recommend the easier installation with [evcc Linux Image](/en/installation/linux-image).
:::
:::note
-For other Linux distributions, see the [Docker](./docker) guide or [Manual Installation](#manual) section.
+For other Linux distributions, see the [Docker](/en/installation/docker) guide or [Manual Installation](#manual) section.
:::
## First Installation
@@ -95,13 +95,13 @@ The settings are automatically saved in the database.
### Configuration File (traditional)
Alternatively, you can use an `evcc.yaml` configuration file.
-See [Configuration](./configuration) for details on creating the configuration file.
+See [Configuration](/en/installation/configuration) for details on creating the configuration file.
:::caution
The configuration file must be placed at `/etc/evcc.yaml`.
:::
-- Create the configuration file according to the [guide](./configuration) and save it at `/etc/evcc.yaml`
+- Create the configuration file according to the [guide](/en/installation/configuration) and save it at `/etc/evcc.yaml`
- Restart the evcc server:
@@ -143,6 +143,8 @@ If you need to go backwards for any reason, you can do so with this command:
sudo apt install evcc=x.xxx.x # Version Number
```
+
+
## System Service
evcc runs as a background system service. Here's some useful commands to control it:
@@ -201,7 +203,7 @@ Replace `127.0.0.1` with the IP address or hostname of the computer if the brows
### Via Web Interface (recommended)
The easiest method is to backup via the web interface.
-See [Configuration → Backup & Restore](./configuration#backup) for details.
+See [Configuration → Backup & Restore](/en/installation/configuration#backup) for details.
### Manual Backup
@@ -256,6 +258,8 @@ All parameters from `evcc.yaml` can be set as environment variables: `EVCC_` + p
For a complete list of all CLI options, see the [CLI documentation](/en/reference/cli/evcc).
:::
+
+
## Manual Installation
In addition to the Debian/Ubuntu APT package, we also provide other binaries for Linux.
@@ -279,7 +283,7 @@ In addition to the Debian/Ubuntu APT package, we also provide other binaries for
### Configuration
You can configure evcc via the web interface or a configuration file.
-See [Configuration](./configuration) for details.
+See [Configuration](/en/installation/configuration) for details.
Start evcc with:
diff --git a/src/content/docs/en/installation/macos.mdx b/src/content/docs/en/installation/macos.mdx
index 2fe2f1f33..4a792ef49 100644
--- a/src/content/docs/en/installation/macos.mdx
+++ b/src/content/docs/en/installation/macos.mdx
@@ -50,7 +50,7 @@ After the first start, you can configure evcc at [http://localhost:7070](http://
Settings are automatically saved in the database.
Alternatively, you can use an `evcc.yaml` configuration file at `/etc/evcc.yaml`.
-Details can be found in [Configuration](./configuration).
+Details can be found in [Configuration](/en/installation/configuration).
## Upgrades
@@ -83,6 +83,8 @@ To upgrade to a new version of evcc, perform the following steps:
tail -f /opt/homebrew/var/log/evcc.log
```
+
+
## Manual Installation
Here you'll find instructions for manually installing evcc on macOS.
@@ -104,7 +106,7 @@ Here you'll find instructions for manually installing evcc on macOS.
After the first start, open [http://localhost:7070](http://localhost:7070) in your browser and configure evcc via the web interface.
-Alternatively, you can create an `evcc.yaml` configuration file (see [Configuration](./configuration)) and start evcc with it:
+Alternatively, you can create an `evcc.yaml` configuration file (see [Configuration](/en/installation/configuration)) and start evcc with it:
```sh
./evcc -c evcc.yaml
diff --git a/src/content/docs/en/installation/proxmox.mdx b/src/content/docs/en/installation/proxmox.mdx
index d115790ab..c80c3b112 100644
--- a/src/content/docs/en/installation/proxmox.mdx
+++ b/src/content/docs/en/installation/proxmox.mdx
@@ -28,7 +28,7 @@ The following installation has been tested with Ubuntu 24.4.
-3. Install evcc as described in the instructions for Debian-based Linux systems [Debian, Ubuntu Installation](./linux).
+3. Install evcc as described in the instructions for Debian-based Linux systems [Debian, Ubuntu Installation](/en/installation/linux).
4. Update evcc via the Debian package management.
## Using Helper Script
diff --git a/src/content/docs/en/installation/windows.mdx b/src/content/docs/en/installation/windows.mdx
index 53f44907f..521de0169 100644
--- a/src/content/docs/en/installation/windows.mdx
+++ b/src/content/docs/en/installation/windows.mdx
@@ -48,7 +48,7 @@ However, evcc is typically used in a Linux environment (e.g., Raspberry Pi).
## Configuration file (alternative)
Alternatively to the web interface, you can use an `evcc.yaml` configuration file.
-See [Configuration](./configuration) for details.
+See [Configuration](/en/installation/configuration) for details.
Start evcc with:
diff --git a/src/content/docs/en/integrations/home-assistant.mdx b/src/content/docs/en/integrations/home-assistant.mdx
index 03dd434dc..dc2954304 100644
--- a/src/content/docs/en/integrations/home-assistant.mdx
+++ b/src/content/docs/en/integrations/home-assistant.mdx
@@ -9,7 +9,7 @@ evcc specialises in smart charging and heating.
Both systems complement each other and can be connected in different ways.
:::note
-evcc can also be installed as a Home Assistant Addon. You can find the instructions [here](../installation/home-assistant).
+evcc can also be installed as a Home Assistant Addon. You can find the instructions [here](/en/installation/home-assistant).
:::
## Visualise & Automate
@@ -47,7 +47,7 @@ Alternatively, you can manually integrate evcc data into Home Assistant via the
#### REST API
-evcc offers a [REST API](/en/integrations/rest-api).
+evcc offers a [REST API](/integrations/rest-api).
[This guide](https://github.com/marq24/ha-evcc/blob/main/HA_AS_EVCC_SOURCE.md) by [marq24](https://github.com/marq24) describes the integration with Home Assistant in detail.
#### MQTT
diff --git a/src/content/docs/en/integrations/mqtt-api.md b/src/content/docs/en/integrations/mqtt-api.md
index 149c09bce..674776b57 100644
--- a/src/content/docs/en/integrations/mqtt-api.md
+++ b/src/content/docs/en/integrations/mqtt-api.md
@@ -4,7 +4,7 @@ sidebar:
order: 2
---
-All data from the [REST API](./rest-api) endpoint `/api/state` is also published via MQTT.
+All data from the [REST API](/integrations/rest-api) endpoint `/api/state` is also published via MQTT.
Lists are converted into individual sub-topics (index starts at `1`).
## Read-Only Topics
diff --git a/src/content/docs/en/reference/cli/evcc_completion_zsh.md b/src/content/docs/en/reference/cli/evcc_completion_zsh.md
index 0987b757a..49b35fa3e 100644
--- a/src/content/docs/en/reference/cli/evcc_completion_zsh.md
+++ b/src/content/docs/en/reference/cli/evcc_completion_zsh.md
@@ -9,7 +9,7 @@ Generate the autocompletion script for zsh
Generate the autocompletion script for the zsh shell.
If shell completion is not already enabled in your environment you will need
-to enable it. You can execute the following once:
+to enable it. You can execute the following once:
```
echo "autoload -U compinit; compinit" >> ~/.zshrc
diff --git a/src/content/docs/en/reference/configuration/chargers.mdx b/src/content/docs/en/reference/configuration/chargers.mdx
index fc0e594d4..feef0b8e6 100644
--- a/src/content/docs/en/reference/configuration/chargers.mdx
+++ b/src/content/docs/en/reference/configuration/chargers.mdx
@@ -25,7 +25,7 @@ Below, the possible parameters are explained.
### `name`
-A short designation of the charger defined here. The value is used when referencing the charger in the configuration of the [charger](loadpoints#charger).
+A short designation of the charger defined here. The value is used when referencing the charger in the configuration of the [charger](/en/reference/configuration/loadpoints#charger).
**For example**:
diff --git a/src/content/docs/en/reference/configuration/eebus.md b/src/content/docs/en/reference/configuration/eebus.md
index 3833bba2b..b66542818 100644
--- a/src/content/docs/en/reference/configuration/eebus.md
+++ b/src/content/docs/en/reference/configuration/eebus.md
@@ -32,7 +32,7 @@ Remove the `eebus:` block from your `evcc.yaml` and restart.
A new certificate is generated automatically and all EEBus devices must be paired again.
To keep your existing certificate, enter it in the EEBus dialog under **Show advanced settings**.
-This is useful if the SKI (part of the public certificate) is already registered with your grid operator for [external control](/en/features/external-control).
+This is useful if the SKI (part of the public certificate) is already registered with your grid operator for [external control](/en/external-limit).
:::
---
diff --git a/src/content/docs/en/reference/configuration/hems.md b/src/content/docs/en/reference/configuration/hems.md
index aa6c0dfd6..d572281af 100644
--- a/src/content/docs/en/reference/configuration/hems.md
+++ b/src/content/docs/en/reference/configuration/hems.md
@@ -10,7 +10,7 @@ For background and setup details, see [External Limit](/en/external-limit).
:::note[Note]
Curtailment and dimming of controllable consumers act directly on the device, no circuit configuration is required.
-To apply the consumption limit to charging points, circuits must be set up in [Load Management](../../features/loadmanagement).
+To apply the consumption limit to charging points, circuits must be set up in [Load Management](/en/features/loadmanagement).
An active limit then caps the top-level circuit.
:::
diff --git a/src/content/docs/en/reference/configuration/loadpoints.md b/src/content/docs/en/reference/configuration/loadpoints.md
index 57f4fc74a..6042eace1 100644
--- a/src/content/docs/en/reference/configuration/loadpoints.md
+++ b/src/content/docs/en/reference/configuration/loadpoints.md
@@ -46,7 +46,7 @@ Reference to a `charger` configuration.
charger: charger
```
-Where the value `charger` corresponds to the value of the `name` parameter in the [charger definition](chargers#name).
+Where the value `charger` corresponds to the value of the `name` parameter in the [charger definition](/en/reference/configuration/chargers#name).
---
@@ -64,7 +64,7 @@ This entry is only needed if the used charger doesn't perform its own current me
meter: charge
```
-Where the value `charge` corresponds to the value of the `name` parameter in the [current meter definition](meters#name).
+Where the value `charge` corresponds to the value of the `name` parameter in the [current meter definition](/en/reference/configuration/meters#name).
---
@@ -80,7 +80,7 @@ When a vehicle is plugged into the charger, it is assumed that this vehicle is c
vehicle: renault
```
-Where the value `renault` corresponds to the value of the `name` parameter in the [vehicle definition](vehicles#name).
+Where the value `renault` corresponds to the value of the `name` parameter in the [vehicle definition](/en/reference/configuration/vehicles#name).
---
diff --git a/src/content/docs/en/reference/configuration/log.md b/src/content/docs/en/reference/configuration/log.md
index b028be0d3..c13cc4d7d 100644
--- a/src/content/docs/en/reference/configuration/log.md
+++ b/src/content/docs/en/reference/configuration/log.md
@@ -38,9 +38,9 @@ Defines the level of detail for logging for different evcc components.
**Possible components**:
- `site`: The central evcc component (control, calculations, ...)
-- `lp-X`: The respective charging point, where `X` is numbered according to the order of [`loadpoints`](loadpoints) configuration (charging points), starting at `1`
-- `sma`: The SMA HEMS component if SMA Sunny Home Manager 2.0 is integrated using [`hems`](hems)
-- _`vehicle`_: Each [`vehicle`](vehicles) (vehicle), where you must specify the corresponding value of the [`type`](vehicles#type) parameter (or template).
+- `lp-X`: The respective charging point, where `X` is numbered according to the order of [`loadpoints`](/en/reference/configuration/loadpoints) configuration (charging points), starting at `1`
+- `sma`: The SMA HEMS component if SMA Sunny Home Manager 2.0 is integrated using [`hems`](/en/reference/configuration/hems)
+- _`vehicle`_: Each [`vehicle`](/en/reference/configuration/vehicles) (vehicle), where you must specify the corresponding value of the [`type`](/en/reference/configuration/vehicles#type) parameter (or template).
- Additionally, depending on the use case, additional components can be specified (e.g. `cache`, `db`, `influx`, `mqtt`, ...)
**Possible values for each component**: Identical to the values of [`log`](#log)
diff --git a/src/content/docs/en/reference/configuration/meters.md b/src/content/docs/en/reference/configuration/meters.md
index 8c755e3ba..a431015b9 100644
--- a/src/content/docs/en/reference/configuration/meters.md
+++ b/src/content/docs/en/reference/configuration/meters.md
@@ -6,7 +6,7 @@ sidebar:
_Meters_ (current measurement devices) is a list of devices in the house that can measure power and energy consumption, PV generation, or house battery usage. A `meter` defines a point of energy measurement and can be a physical device (e.g., a meter at the grid connection point), a PV inverter (AC or DC in the case of hybrid inverters), or a battery inverter.
-Chargers may have an integrated meter or it can be externally connected. If a charger has an internal current measurement device, no entry for it needs to be created in `meters`. If the charger doesn't have such a meter, evcc will use the meter configured here and assigned to the charger under [`meters`](loadpoints#meter) in the charging point configuration, or assume that the charging power set is actually being used.
+Chargers may have an integrated meter or it can be externally connected. If a charger has an internal current measurement device, no entry for it needs to be created in `meters`. If the charger doesn't have such a meter, evcc will use the meter configured here and assigned to the charger under [`meters`](/en/reference/configuration/loadpoints#meter) in the charging point configuration, or assume that the charging power set is actually being used.
evcc uses a consistent sign convention for power and current values (`power`, `powers`, `currents`):
@@ -44,7 +44,7 @@ Below, the various parameters are explained.
### `name`
-A short designation of the meter. The value is used when referencing the device in the configuration of the [site](site) or the [charger](loadpoints#meter).
+A short designation of the meter. The value is used when referencing the device in the configuration of the [site](/en/reference/configuration/site) or the [charger](/en/reference/configuration/loadpoints#meter).
**For example**:
diff --git a/src/content/docs/en/reference/configuration/site.mdx b/src/content/docs/en/reference/configuration/site.mdx
index cff893046..f6d402fba 100644
--- a/src/content/docs/en/reference/configuration/site.mdx
+++ b/src/content/docs/en/reference/configuration/site.mdx
@@ -76,7 +76,7 @@ site:
### `meters.grid`
-Defines the [`meter`](meters) (current measurement device) that provides the measurements of the grid connection point.
+Defines the [`meter`](/en/reference/configuration/meters) (current measurement device) that provides the measurements of the grid connection point.
**Possible values**: Value of a `name` parameter in the [`meters`](#meters) configuration.
@@ -90,7 +90,7 @@ grid: mygridmeter # grid meter reference
### `meters.pv`
-Defines [`meter`](meters) (current measurement devices), from which evcc fetches PV generation measurements.
+Defines [`meter`](/en/reference/configuration/meters) (current measurement devices), from which evcc fetches PV generation measurements.
Multiple devices can be specified. Power data is automatically added.
**Possible values**: A single value or a list of values of a name parameter in the [`meters`](#meters) configuration. The list version can also be used with single values.
@@ -113,7 +113,7 @@ pv: # (pvs = deprecated)
### `meters.battery`
-Defines the [`meter`](meters) (current measurement devices) that provide measurement data from the battery(ies).
+Defines the [`meter`](/en/reference/configuration/meters) (current measurement devices) that provide measurement data from the battery(ies).
Multiple devices can be specified. Power data is automatically added, and an average is calculated from the battery state of charge.
**Possible values**: A single value or a list of values of a `name` parameter in the [`meters`](#meters) configuration. The list version can also be used with single values.
diff --git a/src/content/docs/en/reference/configuration/vehicles.mdx b/src/content/docs/en/reference/configuration/vehicles.mdx
index 542cac847..1d59a1200 100644
--- a/src/content/docs/en/reference/configuration/vehicles.mdx
+++ b/src/content/docs/en/reference/configuration/vehicles.mdx
@@ -7,7 +7,7 @@ sidebar:
import { Tabs, TabItem } from "@astrojs/starlight/components";
import SponsorshipRequired from "@components/SponsorshipRequired.astro";
-A vehicle represents a specific electric vehicle (EV) with its battery. When a vehicle is configured and assigned to a [charger](loadpoints#vehicle), the user interface can display the charging status, state of charge (SoC), remaining charging time, and other data automatically retrieved and processed from the vehicle.
+A vehicle represents a specific electric vehicle (EV) with its battery. When a vehicle is configured and assigned to a [charger](/en/reference/configuration/loadpoints#vehicle), the user interface can display the charging status, state of charge (SoC), remaining charging time, and other data automatically retrieved and processed from the vehicle.
It is also possible to limit the charge to a specific state of charge (SoC, UI only). Since most chargers cannot be aware of this (it is only transmitted in very specific charger combinations), evcc can communicate directly with the vehicle through the online interface (API) of the vehicle manufacturer using this configuration.
@@ -32,7 +32,7 @@ Below, the various parameters are explained.
### `name`
-A short designation of the configured vehicle. The value is used when referencing the vehicle in the configuration of the [charger](loadpoints#vehicle).
+A short designation of the configured vehicle. The value is used when referencing the vehicle in the configuration of the [charger](/en/reference/configuration/loadpoints#vehicle).
**For example**: