Skip to content

Commit

Permalink
Merge branch 'main' of github.com:evcc-io/docs
Browse files Browse the repository at this point in the history
  • Loading branch information
naltatis committed Sep 15, 2024
2 parents bac9547 + 6c05614 commit 3f121cc
Show file tree
Hide file tree
Showing 20 changed files with 604 additions and 456 deletions.
2 changes: 1 addition & 1 deletion docs/Home.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Dazu wird evcc auf einem System im lokalen Netzwerk installiert, so dass es mit
- Status [Benachrichtigungen](/docs/reference/configuration/messaging) über [Telegram](https://telegram.org), [PushOver](https://pushover.net) und [viele mehr](https://containrrr.dev/shoutrrr/)
- Datenanalyse mit [InfluxDB](https://www.influxdata.com) und [Grafana](https://grafana.com/grafana/)
- Stufenlose Regelung der Ladeströme mit unterstützten Wallboxen (z.b. bei smartWB als [OLC](https://board.evse-wifi.de/viewtopic.php?f=16&t=187) bezeichnet)
- REST- und MQTT-[APIs](/docs/reference/api) zur Integration in andere Heimautomationssysteme (z.B. [HomeAssistant](https://github.com/evcc-io/evcc-hassio-addon))
- [REST](/docs/integrations/rest-api)- und [MQTT](/docs/integrations/mqtt-api)-APIs zur Integration in andere Heimautomationssysteme (z.B. [HomeAssistant](/docs/integrations/home-assistant))

## Anforderungen

Expand Down
2 changes: 1 addition & 1 deletion docs/faq.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_position: 7
sidebar_position: 8
toc_max_heading_level: 2
---

Expand Down
4 changes: 4 additions & 0 deletions docs/integrations/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"label": "Integrationen",
"position": 6
}
26 changes: 26 additions & 0 deletions docs/integrations/home-assistant.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
---
sidebar_position: 3
---

# Home Assistant

## Betrieb in Home Assistant

Mit dem community-maintainten [evcc Home Assistant Add-on](https://github.com/evcc-io/hassio-addon) kannst du evcc in einer Home Assistant Umgebung betreiben.
Damit benötigst du keine separate Hardware oder Installationsumgebung.
evcc läuft direkt in Home Assistant.

## Integration mit ha-evcc

Mit der [ha-evcc](https://github.com/marq24/ha-evcc) von [marq24](https://github.com/marq24) kannst du evcc Daten und Funktionen einfach in Home Assistant integrieren.
Unabhängig davon, ob du evcc in Home Assistant betreibst oder nicht.

## Manuelle Integration

Über die bestehenden [MQTT](/docs/integrations/mqtt-api) und [REST](/docs/integrations/rest-api) Schnittstellen kannst du evcc auch manuell in Home Assistant integrieren.

## Weitere Ressourcen

- [smart home & more: evcc Basisinstallation und Konfiguration](https://youtu.be/aPq8k2MronY)
- [smart home & more: Schritt für Schritt - MQTT-Sensor mit Hilfe des MQTT-Explorer einrichten](https://youtu.be/0QQ3y8fgRVA)
- [smart home & more: Effizientes Energiedashboard für Home Assistant](https://youtu.be/V3p5-16U_oU)
61 changes: 61 additions & 0 deletions docs/integrations/mqtt-api.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
---
sidebar_position: 2
---

# MQTT API

Die MQTT API folgt der [REST API](./rest-api) Struktur.
Alle API IDs (z.B. die Loadpoint ID) beginnen bei `1`.

- `evcc`: root topic
- `evcc/status`: status (`online`/`offline`)
- `evcc/updated`: timestamp of last update

## Site

- `evcc/site`: site dynamic state
- `evcc/site/prioritySoc`: battery priority SoC (writable)
- `evcc/site/bufferSoc`: battery buffer SoC (writable)
- `evcc/site/bufferStartSoc`: battery buffer start SoC (writable)
- `evcc/site/residualPower`: grid residual power (writable)
- `evcc/site/smartCostLimit`: smart charging cost limit (previously known as "cheap" tariff) (writable)
- `evcc/site/batteryDischargeControl`: enable/disable battery discharge control (true/false) (writable)

## Vehicles

**Note**: for vehicle names see `evcc/vehicles`.

- `evcc/vehicles`: number of vehicles
- `evcc/vehicles/<name>/minSoc`: minimum soc in % (writable)
- `evcc/vehicles/<name>/limitSoc`: limit soc in % (writable)
- `evcc/vehicles/<name>/planSoc`: plan soc (writable using JSON payload: `{"value": 50, "time": "2023-03-05T07:00:00Z"}`)

## Loadpoints

- `evcc/loadpoints`: number of available loadpoints
- `evcc/loadpoints/<id>`: dynamic state
- `evcc/loadpoints/<id>/mode`: charge mode (writable)
- `evcc/loadpoints/<id>/minSoc`: minimum SoC (writable)
- `evcc/loadpoints/<id>/limitSoc`: limit SoC in % (writable) - only applicable for online vehicles
- `evcc/loadpoints/<id>/limitEnergy`: limit energy in kWh (writable) - only applicable for offline vehicles
- `evcc/loadpoints/<id>/plan/energy`: plan energy (writable using JSON payload: `{"value": 50, "time": "2023-03-05T07:00:00Z"}`)
- `evcc/loadpoints/<id>/phases`: enabled phases (writable)
- `evcc/loadpoints/<id>/minCurrent`: current minCurrent value (writable)
- `evcc/loadpoints/<id>/maxCurrent`: current maxCurrent value (writable)
- `evcc/loadpoints/<id>/enableThreshold`: threshold value (writable)
- `evcc/loadpoints/<id>/disableThreshold`: threshold value (writable)

:::note
Um schreibbare Einstellungen durchzuführen, muss ein `/set` am Ende des Topics hinzugefügt werden an welches der neue Wert gesendet wird.
Beispiel: `mosquitto_pub -t "evcc/loadpoints/1/phases/set" -m "3"` um die Anzahl der netzseitigen Phasen am 1. Ladepunkt auf `3` festzulegen.
:::

:::info
\*\* Zeitangabe efolgt in UTC im Format `yyyy-mm-ddThh:mm:ssZ`

Beispiele:

`2023-03-05T07:00:00Z` = 5. März 2023 um 8:00 Uhr MEZ

`2023-08-17T19:30:00Z` = 17. August 2023 um 21:30 Uhr MESZ
:::
56 changes: 56 additions & 0 deletions docs/integrations/rest-api.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
---
sidebar_position: 1
---

# REST API

Alle API IDs (z.B. die Loadpoint ID) beginnen bei `1`.

## State

- `GET /api/state`: returns the state of the system<br/>
Use the optional `jq` parameter for select a subset or specific value. e.g.: `/api/state?jq=.statistics["30d"].avgPrice`

## Site

- `GET /api/health`: evcc health check
- `POST /api/prioritysoc/<soc>`: battery priority soc in %
- `POST /api/buffersoc/<soc>`: battery buffer soc in %
- `POST /api/bufferstartsoc/<soc>`: battery buffer start soc in %
- `POST /api/residualpower/<power>`: grid residual power in W
- `POST /api/batterydischargecontrol/<status>`: enable/disable battery discharge control (true/false)
- `POST /api/smartcostlimit/<cost>`: smart charging cost limit (previously known as "cheap" tariff)
- `GET /api/tariff/<type>`: list of prices (grid/feedin/co2/planner)
- `GET /api/sessions[?format=csv&lang=<lang>]`: charging sessions
- `GET /api/settings/telemetry`: telemetry enabled status
- `POST /api/settings/telemetry/<status>`: enable/disable telemetry (true/false)

## Vehicles

**Note**: for vehicle names see `vehicles` array in `/api/state` response.

- `POST /api/vehicles/<name>/minsoc/<soc>`: minimum soc in %
- `POST /api/vehicles/<name>/limitsoc/<soc>`: limit soc in %
- `POST /api/vehicles/<name>/plan/soc/<soc>/<time>`: soc in % / time in RFC3339 format \*\*
- `DELETE /api/vehicles/<name>/plan/soc`: disable plan charging

## Loadpoints

- `POST /api/loadpoints/<id>/mode/<mode>`: charge mode (off/pv/minpv/now)
- `POST /api/loadpoints/<id>/limitsoc/<soc>`: limit soc in % - only applicable for online vehicles
- `POST /api/loadpoints/<id>/limitenergy/<energy>`: limit energy in kWh - only applicable for offline vehicles
- `POST /api/loadpoints/<id>/plan/energy/<energy>/<time>`: energy in kWh / target time in RFC3339 format \*\*
- `DELETE /api/loadpoints/<id>/plan/energy`: disable plan charging
- `GET /api/loadpoints/<id>/plan`: charging plan details
- `POST /api/loadpoints/<id>/phases/<phases>`: allowed phases (0=auto/1=1p/3=3p)
- `POST /api/loadpoints/<id>/mincurrent/<current>`: current minCurrent value in A
- `POST /api/loadpoints/<id>/maxcurrent/<current>`: current maxCurrent value in A
- `POST /api/loadpoints/<id>/enable/threshold/<threshold>`: threshold value in W
- `POST /api/loadpoints/<id>/disable/threshold/<threshold>`: threshold value in W
- `POST /api/loadpoints/<id>/vehicle/<name>`: set currently selected vehicle
- `DELETE /api/loadpoints/<id>/vehicle`: remove vehicle
- `PATCH /api/loadpoints/<id>/vehicle`: start vehicle detection

:::note
Beispiel: `curl -X POST http://evcc:7070/api/loadpoints/1/mode/pv` um den Lademodus des 1. Ladepunkts auf `pv` zu stellen.
:::
4 changes: 2 additions & 2 deletions docs/reference/_category_.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"label": "Referenz",
"position": 6
}
"position": 7
}
114 changes: 0 additions & 114 deletions docs/reference/api.md

This file was deleted.

2 changes: 1 addition & 1 deletion docs/reference/configuration/mqtt.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ sidebar_position: 14

Stellt die Konnektivität mit einem MQTT-Broker her.
Bei bestehender Verbindung pusht evcc automatisch alle internen Werte via MQTT-Broker auf das angegebene Topic und empfängt dort auch Änderungen.
Siehe dazu auch die Dokumentation zur [`MQTT API`](/docs/reference/api#mqtt-api).
Siehe dazu auch die Dokumentation zur [`MQTT API`](/docs/integrations/mqtt-api).

---

Expand Down
6 changes: 0 additions & 6 deletions docs/reference/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,3 @@ Hier wird beschrieben wie man durch ein Plugin ein bisher nicht unterstütztes G
Hier befindet sich die Modbus Dokumentation, welche in verschiedenen Bereichen genutzt werden kann.

[Weiterlesen...](./reference/modbus)

### API

Hier befindet sich die Dokumentation um auf evcc von anderen Systemen zuzugreifen und zu steuern.

[Weiterlesen...](./reference/api)
2 changes: 1 addition & 1 deletion docs/sponsorship.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_position: 8
sidebar_position: 9
---

import SponsorToken from "/docs/_sponsortoken.mdx";
Expand Down
13 changes: 13 additions & 0 deletions docusaurus.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -154,5 +154,18 @@ import { themes as prismThemes } from "prism-react-renderer";
contextualSearch: true,
},
}),
plugins: [
[
"@docusaurus/plugin-client-redirects",
{
redirects: [
{
to: "/docs/integrations/rest-api",
from: "/docs/reference/api",
},
],
},
],
],
}
);
2 changes: 1 addition & 1 deletion i18n/en/docusaurus-plugin-content-docs/current/Home.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ evcc is installed onto a system in the local network, so that it can communicate
- Status [Notifications](/docs/reference/configuration/messaging) via [Telegram](https://telegram.org), [PushOver](https://pushover.net) and [many more](https://containrrr.dev/shoutrrr/)
- Data Export via [InfluxDB](https://www.influxdata.com) and [Grafana](https://grafana.com/grafana/)
- Stepless regulation of charging flows with supported wall boxes (e.g the smartWB's [OLC](https://board.evse-wifi.de/viewtopic.php?f=16&t=187) functionality)
- Rest & MQTT [APIs](/docs/reference/api) for integration into other home automation systems (such as [Home Assistant](https://github.com/evcc-io/evcc-hassio-addon))
- [REST](/docs/integrations/rest-api) & [MQTT](/docs/integrations/rest-api) APIs for integration into other home automation systems (such as [Home Assistant](/docs/integrations/home-assistant))

## Requirements

Expand Down
2 changes: 1 addition & 1 deletion i18n/en/docusaurus-plugin-content-docs/current/faq.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_position: 7
sidebar_position: 8
toc_max_heading_level: 2
---

Expand Down
Loading

0 comments on commit 3f121cc

Please sign in to comment.