Home Assistant: Der ultimative Fernzugriff für dein Home Assistant und mehr !

Entdecke die ultimative Lösung für sichere Verbindungen zu deinem Home Assistant! In diesem Video zeige ich dir, wie du mithilfe von Wireguard auf einem V-Server in der Cloud eine absolut sichere Verbindung herstellen kannst. Egal, ob du IPV4, IPV6, DSLite verwendest oder von unterwegs aus zugreifen möchtest – dieser Guide deckt alle Szenarien ab. Ob dein Home Assistant sich in einem Camper, Boot oder zu Hause befindet, diese Methode ermöglicht nicht nur einen direkten Zugriff, sondern auch die Verbindung zu allen anderen Geräten in deinem Netzwerk. Erlebe die Freiheit und Sicherheit einer Wireguard VPN V-Server Variante für dein Smart Home Setup. Schließe dich uns an und entdecke, wie einfach es sein kann, deine Verbindungen zu schützen und gleichzeitig volle Kontrolle über dein Zuhause zu behalten!

Firmware des Mango Routers:

GL.iNet download center (gl-inet.com)

Den Router und auch andere GliNet Router mit mehr Leistung, findest du in meinem Shop * :

V-Server Konsolen Befehle:

ssh root@dieipdeinesvservers

Damit wird eine ssh Konsolenverbindung zum V-Server aufgebaut

Um alle Updates des Betriebssystems durchzuführen, werden folgende Befehle benötigt:

sudo apt-get update
sudo apt-get upgrade

Nun wird überprüft ob die Firewall des Betriebssystems deaktiviert ist. Da wir in der V-Server Verwaltungskonsole eine Firewall haben, wird für unseren Einsatzzweck keine zweite Firewall benötigt.

ufw status

Ist die Firewall aktiv, deaktivieren wir diese.

ufw disable

Um alle Pakete aus den Netzwerken richtig zu routen, muss das IPv4 Forwarding aktiviert sein.

cd /etc/
nano sysctl.conf # öffnet den Editor zur Bearbeitung der Konfiguration

Entferne das “#” vor dem Parameter “net.ip4.ip_forward=1”

Nun wird der Dienst neu gestartet:

sudo sysctl -p

Installation des Wireguard VPN-Servers:

curl -L https://install.pivpn.io | bash

Alle nun angezeigten Fenster bestätigen, bis die Aufforderung kommt einen User anzulegen, dort legen wir dann einen User und ein Password unserer Wahl an ( für die folgende Schritte füge ich Screenshots ein):

Alle weiteren Schritte mit OK bestätigen und am Ende des Prozesses Reboot durchführen.

Um nun auch in die Netzwerke routen zu können , müssen folgende Einstellungen in der wg0.conf ergänzt werden.

Dazu brauchen wir zunächst den Namen des Netzwerkadapters:

ifconfig
nano /etc/wireguard/wg0.conf

Jetzt wird das Routing für PostUp und PostDown konfiguriert, dazu füge hinter ListenPort folgende Zeilen in der wg0.conf ein ( ersetze ggf. ens6 durch den Namen deines Netzwerkadapters):

PostUp   = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o ens6 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o ens6 -j MASQUERADE

Als nächster Schritt muss bei jeder Änderung in der wg0.conf das Tunnelinterface neu gestartet werden.

wg-quick down wg0
wg-quick up wg0

Nun kann ein neuer VPN Client erzeugt werden:

pivpn add

Jetzt können wir die Konfigurationsdaten kopieren:

nano /home/vpn/configs/video_rechner.conf

Die Daten aus der Konfiguration kopieren wir uns in die Zwischenablage.

Nun brauchen wir für unseren Rechner einen Client. Diesen findet ihr unter:

Installation – WireGuard

Nach der Installation wird die Software gestartet und auf dem Rechner ein neuer Tunnel erstellt. Die kopierten Daten werden dort eingefügt

Ist dieser schritt erfolgt, kann der Tunnel aktiviert werden:

Nachdem der Tunnel aufgebaut wurde, können wir uns auf den V-Server wieder an der Konsole anmelden und den Status der Clients überprüfen:

pivpn clients

HomeAssistant WireguardClient Integration – Vorbereitungen

Wir legen einen neuen Client an, und nennen diesen z.B. homeassistant. Die Schritte sind die selben, wie im obigen Abschnitt.

Wir kopieren uns die Client Konfigurationsdaten aus dem Verzeichnis /home/vpn/homeassistant.conf ( die Schritte gleichen dem obigen Prozess)

Installation des Wireguard Clients im Add-On Store

Repository Url:

https://github.com/bigmoby/hassio-repository-addon

Wir übertragen aus den gespeicherten Informationen die Daten in die Konfiguration des Add-Ons

Nachdem der Client gestartet wurde, kontrollieren wir auf unserem V-Server , ob die Verbindung hergestellt werden konnte.

Wurden Daten gesendet und empfangen, steht die Verbindung

Um den Client (IP 172.16.0.18 ) im gesamten Netzwerk verfügbar zu machen, muss eine Route in der wg0.conf eingefügt werden.

nano /etc/wireguard/wg0.conf

Beim Peer “homeassistant” fügen wir nun unter AllowedIPs die IPAdresse des Home Assistant Clients hinzu.

Danach führen wir einen Reboot des V-Server aus ( Wenn die Firewall Regeln noch nicht gehärtet wurden, funktioniert auch ein wg-quick down wg0 und wg-quick up wg0 )

Mit route kann man nach dem Reboot kontrollieren, ob die Route gesetzt wurde.

Alle weiteren Schritte wiederholen sich und sind im Video ausführlich beschrieben. Es wird noch gezeigt, wie man ein Handy verbindet und auf einem mobilen Router den Zugriff auf das Netzwerk hinter dem Router erlaubt.

Home Assistant in Aktion: Anwesenheitssimulation leicht gemacht. Auch für Einsteiger !

Erlebe die Zukunft des Wohnens mit Home Assistant! Entdecke, wie du spielend leicht eine überzeugende Anwesenheitssimulation erstellst – perfekt auch für Neueinsteiger. Tauche ein in die Welt der DIY-Hausautomatisierung und sichere dein Zuhause mit innovativer Technologie.

In meinem Shop findest du interessante Produkte *

Hier findest du meine Beispielautomatisierung:

alias: Video_Präsenzsimulation_Urlaub
description: ""
trigger:
  - platform: sun
    event: sunset
    offset: "-00:30:00"
condition: []
action:
  - repeat:
      sequence:
        - service: light.turn_off
          metadata: {}
          data: {}
          target:
            entity_id: light.lichtergruppe1
        - delay:
            minutes: "{{ range(2,5) | random }}"
        - service: light.turn_on
          metadata: {}
          data_template:
            entity_id: |
              {{ state_attr('light.lichtergruppe1','entity_id') | random }}
        - delay:
            minutes: "{{ range(2,5) | random }}"
        - service: light.turn_off
          metadata: {}
          data: {}
          target:
            entity_id: light.lichtergruppe2
        - delay:
            minutes: "{{ range(2,5) | random }}"
        - service: light.turn_on
          metadata: {}
          data_template:
            entity_id: |
              {{ state_attr('light.lichtergruppe2','entity_id') | random }}
      while:
        - condition: and
          conditions:
            - condition: time
              before: "23:00:00"
            - condition: state
              entity_id: input_boolean.urlaubsmodus
              state: "on"
  - if:
      - condition: or
        conditions:
          - condition: time
            after: "23:00:00"
          - condition: state
            entity_id: input_boolean.urlaubsmodus
            state: "off"
    then:
      - service: light.turn_off
        metadata: {}
        data: {}
        target:
          entity_id:
            - light.lichtergruppe1
            - light.lichtergruppe2
mode: single

Möchte man die Automatisierung direkt beenden, wenn z.B. 23:00 Uhr ist , oder der Urlaubsmodus beendet wird, dann kann man die Automatisierung in den Modus “Neustart” setzen.

Hier ein Beispiel dazu:

alias: Video_Präsenzsimulation_Urlaub
description: ""
trigger:
  - platform: sun
    event: sunset
    offset: "-00:30:00"
  - platform: state
    entity_id:
      - input_boolean.urlaubsmodus
    to: "off"
    id: Urlaub ist beendet
  - platform: time
    at: "23:00:00"
    id: Es ist 23 Uhr
condition: []
action:
  - repeat:
      sequence:
        - service: light.turn_off
          metadata: {}
          data: {}
          target:
            entity_id: light.lichtergruppe1
        - delay:
            minutes: "{{ range(2,5) | random }}"
        - service: light.turn_on
          metadata: {}
          data_template:
            entity_id: |
              {{ state_attr('light.lichtergruppe1','entity_id') | random }}
        - delay:
            minutes: "{{ range(2,5) | random }}"
        - service: light.turn_off
          metadata: {}
          data: {}
          target:
            entity_id: light.lichtergruppe2
        - delay:
            minutes: "{{ range(2,5) | random }}"
        - service: light.turn_on
          metadata: {}
          data_template:
            entity_id: |
              {{ state_attr('light.lichtergruppe2','entity_id') | random }}
      while:
        - condition: and
          conditions:
            - condition: time
              before: "23:00:00"
            - condition: state
              entity_id: input_boolean.urlaubsmodus
              state: "on"
  - if:
      - condition: or
        conditions:
          - condition: trigger
            id:
              - Urlaub ist beendet
          - condition: trigger
            id:
              - Es ist 23 Uhr
    then:
      - service: light.turn_off
        metadata: {}
        data: {}
        target:
          entity_id:
            - light.lichtergruppe1
            - light.lichtergruppe2
mode: restart

Wie du HACS installierst um die Integration von Simon zu nutzen, findest zu hier:

Simon vom Kanal Simon42 hat die HACS Integration Presence Simulation vorgestellt. Vielleicht eine alternative Lösung für Euch.

Home Assistant: Die Zukunft enthüllen: Prognosedaten ohne Grafana visualisieren!

Willst du der Zukunft einen Schritt voraus sein? Dann ist jetzt deine Gelegenheit! Mit Home Assistant und der Apex Chart Card kannst du tiefer in die Welt der Prognosedaten eintauchen – und das alles ohne Grafana! Keine langwierigen Konfigurationen mehr, keine Grafiken, die dich überfordern. Nur klare, präzise Vorhersagen direkt in deinem Smart-Home-Setup. Entdecke die mächtige Kombination von Technologie und Vorhersage und gestalte deine Zukunft – einfacher als je zuvor. Verpasse nicht diese Chance, deinen Alltag zu revolutionieren und dich an die Spitze zu katapultieren!

Wie du Forecast Daten z.B. von Solcast verarbeitest , wird im Video erläutert. Neben Solcast Forecast Daten ist es auch möglich sich Wetterforecast Daten zu generieren. Ab der Version Home Assistant 2024.3 hat sich einiges im Umgang mit Forecast Informationen bei Wetterdaten geändert. Wie man sich mit der neuen Variante einen Template Sensor erstellt, hat Simon vom Kanal Simon42 an einigen Beispielen erläutert.

In diesem Video wird auf die Erstellung von Forecast Daten nach der neuen Variante eingegangen und Code -Beispiele erläutert, die als Basis für einen Wetterforecast Template dienen können. Die Daten müssten noch für einen Forecast mit einem Stundenraster innerhalb von 24h aufbereitet werden. Aber alle nötigen Basics dazu werden in diesem Video vermittelt.

Weiterführende Infos und auch den dazugehörigen YAML Code, findet ihr auf seiner Blog-Seite: https://www.simon42.com/home-assistan…

Um ApexCharts Card zu nutzen, benötigt ihr HACS. Hier findet ihr einige Videos, die euch den Einrichtungsprozess erläutern:

Kanal von: Simon42 – HACS Installation
Kanal von : SteuerdeinLeben – HACS Installation

Hier findet ihr die Blogseite von SteuerdeinLeben-Blog

ApexCharts-Kartenkonfiguration – Code – Snippet

type: custom:apexcharts-card
apex_config:
  chart:
    height: 400px
all_series_config:
  unit: kWh
header:
  title: Solar Forecast
  show: true
  standard_format: true
  show_states: true
  colorize_states: true
graph_span: 2d
span:
  start: day
  offset: '+0'
now:
  show: true
  label: Jetzt
yaxis:
  - id: kwh
    min: 0
    apex_config:
      tickAmount: 5
  - id: header
    show: false
series:
  - entity: sensor.solcast_pv_forecast_prognose_heute
    yaxis_id: kwh
    type: line
    name: Forecast heute
    color: yellow
    data_generator: |
      return entity.attributes.detailedForecast.map((start, index) => {
        return [new Date(start["period_start"]).getTime(), entity.attributes.detailedForecast[index]["pv_estimate10"]];
      });
    show:
      legend_value: false
      in_header: false
    stroke_width: 4
    float_precision: 2
    extend_to: false
  - entity: sensor.evcc_pv_power
    transform: return x / 1000.00
    yaxis_id: kwh
    type: area
    name: PV
    color: green
    show:
      legend_value: false
      in_header: false
    stroke_width: 2
    float_precision: 2
    extend_to: false
    group_by:
      func: avg
  - entity: sensor.solcast_pv_forecast_prognose_morgen
    yaxis_id: kwh
    type: line
    name: Forecast morgen
    color: yellow
    data_generator: |
      return entity.attributes.detailedForecast.map((start, index) => {
        return [new Date(start["period_start"]).getTime(), entity.attributes.detailedForecast[index]["pv_estimate10"]];
      });
    show:
      legend_value: false
      in_header: false
    stroke_width: 4
    float_precision: 2
    extend_to: false
  - entity: sensor.solcast_pv_forecast_prognose_heute
    yaxis_id: header
    name: Heute
    color: orange
    show:
      legend_value: true
      in_header: true
      in_chart: false
  - entity: sensor.solcast_pv_forecast_prognose_verbleibende_leistung_heute
    yaxis_id: header
    name: Verbleibend
    color: orange
    show:
      legend_value: true
      in_header: true
      in_chart: false
  - entity: sensor.solcast_pv_forecast_prognose_morgen
    yaxis_id: header
    name: Morgen
    color: grey
    show:
      legend_value: true
      in_header: true
      in_chart: false
  - entity: sensor.sum_evcc_pv_energie_heute
    yaxis_id: header
    name: PV heute
    color: green
    show:
      legend_value: true
      in_header: true
      in_chart: false

Effizientes Home Assistant Management: DB komprimieren & Struktur optimieren

Frühling ist perfekt für eine Home-Assistant-Auffrischung! Entdecke in diesem Video einfache Schritte, um deine Datenbank zu optimieren und deine configuration.yaml zu organisieren. Hol dir das Beste aus deinem Smart-Home-Setup heraus und genieße eine reibungslose Steuerung deiner Geräte. Lass uns gemeinsam dein Zuhause smarter machen!

Link zur Dokumentation der Packages Integration:

Packages – Home Assistant (home-assistant.io)

Beispielautomatisierung Info Datenbankspeichergröße

alias: Test_Speicherbedarf
description: ""
trigger:
  - platform: numeric_state
    entity_id:
      - sensor.home_assistant_v2_db_grosse
    above: 5000
condition: []
action:
  - service: notify.persistent_notification
    metadata: {}
    data:
      message: >-
        Der Speicher der Datenbank hat die 5000 MB überschritten. Bitte Wartung
        vornehmen
mode: single

Configuration.Yaml ( Packages)

homeassistant:
  packages: !include_dir_named includes
  allowlist_external_dirs:
    - /config

Home Assistant: Dein Dashboard mit Card-Mod 3 individueller gestalten

Entdecke, wie du mit Home Assistant und Card-Mod dein Smart Home Dashboard individualisierst! Dieses Tutorial führt dich durch die Anpassung deiner Oberfläche an deine Bedürfnisse, von Geräten bis hin zum Erscheinungsbild. Das Video zeigt dir Schritt für Schritt die Verwendung der HACS Erweiterung Card-Mod in Kombination mit Templates um das Beste aus deinem Setup herauszuholen.

Links: Card-Mod3 : https://github.com/thomasloven/hass-config/wiki/Lovelace-Plugins

Wie du HACS installierst wird dir in diesem Video erklärt:

YAML Code:

Farbe Namen:

type: entities
entities:
  - entity: input_boolean.schalter1
    card_mod:
      style: |
        :host {
         color: red;
        }
  - entity: input_boolean.schalter1
    card_mod:
      style: |
        :host {
         color: green;
        }
  - entity: input_boolean.schalter1
title: Farbe von Entitätsnamen

Farbe Icons:

type: entities
entities:
  - entity: input_boolean.schalter1
    card_mod:
      style: |
        :host {
         --card-mod-icon-color: red;
        }
  - entity: input_boolean.schalter1
    card_mod:
      style: |
        :host {
         --card-mod-icon-color: blue;
         color: yellow
        }
  - entity: input_boolean.schalter1
title: Icon Farbe
card_mod:
  style: |
    ha-card {
    background: gray;
    }

Farbe Hintergrund:

type: entities
entities:
  - entity: input_boolean.schalter1
  - entity: input_boolean.schalter1
  - entity: input_boolean.schalter1
title: Background Color
card_mod:
  style: |
    ha-card {
    background: orange;
    }

Farbe , Icon, Schriftfarbe nach Zustand:

type: entities
entities:
  - entity: input_boolean.schalter1
    card_mod:
      style: |
        :host {
         {% if is_state('input_boolean.schalter1', 'on') %}
          --card-mod-icon: mdi:light-switch;
          --card-mod-icon-color: red;
          {% else %}
          --card-mod-icon: mdi:garage;
          --card-mod-icon-color: green;
          {% endif %}
         
        }
  - entity: input_boolean.schalter1
    card_mod:
      style: |
        :host {
         {% if is_state('input_boolean.schalter1', 'on') %}
          --card-mod-icon: mdi:light-switch;
          --card-mod-icon-color: red;
          {% else %}
          --card-mod-icon: mdi:light-switch-off;
          --card-mod-icon-color: green;
          {% endif %}
         
        }
  - entity: input_boolean.schalter1
title: Icon, Schrift, Background

Farbe, Icon, Schriftfarbe nach numerischen Zustand:

type: entities
entities:
  - entity: input_number.number1
    card_mod:
      style: |
        :host {  {% if states('input_number.number1') | int <=50  %}
          background: green;
          --card-mod-icon: mdi:light-switch;
          --card-mod-icon-color: orange
          {% elif states('input_number.number1') | int >50 and states('input_number.number1') | int < 80   %}
          background: yellow;
          --card-mod-icon: mdi:garage-open;
          {% elif states('input_number.number1') | int >= 80  %}
          background: red;
          {% endif %}

        }

Für eine “Tile” Card müssen ein paar andere Variablen verwendet werden. An dieser Stelle herzlichen Dank an @chrannen für diese super Ergänzung 💙

type: tile
entity: ENTITÄT
card_mod:
  style: |
    ha-card {
      {% if is_state("ENTITÄT", "on") %}
        --tile-color:crimson !important;
        --card-mod-icon: mdi:arrow-left-bold-box;
      {% else %}  
        --tile-color:darkgreen !important;
        --card-mod-icon: mdi:arrow-right-bold-box;
      {% endif %}  
    }

die wichtigsten Unterschiede sind:

– statt “:host” lautet der style “ha-card”

– hinter jede farbe muss der zusatz “!important;”

– statt “card-mod-icon-color” muss “tile-color” geschrieben werden

Zeit sparen mit Home Assistant: Kalenderereignisse für Smart-Home-Automatisierungen nutzen

Optimiere deine täglichen Abläufe, indem du Kalenderereignisse als Trigger für Automatisierungen in Home Assistant einsetzt. Verpasse nie wieder wichtige Termine – sei es ein Meeting oder ein Geburtstag. Dein Smart Home passt sich intelligent an deine Pläne an, sei es mit gedimmten Lichtern für ein Abendessen oder aktivierter Heizung bei deiner Rückkehr von der Arbeit. Entdecke eine neue Dimension des Wohnkomforts und spare Zeit mit Home Assistant.

Beispielautomatisierung aus Video:

alias: Kalender_Video
description: ""
trigger:
  - platform: calendar
    event: start
    offset: "0:0:0"
    entity_id: calendar.smarthomeandmore
    id: StartEvent
  - platform: calendar
    event: end
    offset: "0:0:0"
    entity_id: calendar.smarthomeandmore
    id: StopEvent
condition:
  - condition: trigger
    id:
      - StartEvent
action:
  - choose:
      - conditions:
          - condition: and
            conditions:
              - condition: template
                value_template: "{{ '@Licht' in trigger.calendar_event.summary }}"
        sequence:
          - service: light.turn_on
            metadata: {}
            data: {}
            target:
              device_id: fbb93a7f058686a3b2f0591978fb3497
      - conditions:
          - condition: and
            conditions:
              - condition: template
                value_template: "{{ '@Licht' in trigger.calendar_event.summary }}"
              - condition: trigger
                id:
                  - StopEvent
        sequence:
          - service: light.turn_off
            target:
              device_id:
                - fbb93a7f058686a3b2f0591978fb3497
            data: {}
mode: single

Mit Home Assistant Icons nach Zustand dynamisch ändern

Entdecken Sie die Vielfalt von Home Assistant in der Gestaltung dynamischer Icons basierend auf Zuständen. Erleben Sie die Vielseitigkeit mit zwei Beispielen: einem binären Templatesensor für eine variable Icon-Anzeige und einem Sensor, der den Zustand eines Garagentors mit integrierter Dienstausführungsfunktion enthält.

Links aus dem Video:

Pictogrammers Website mit Icons: https://pictogrammers.com/library/mdi/

Home Assistant Template Integration: https://www.home-assistant.io/integrations/template/

Home Assistant Template Cover : https://www.home-assistant.io/integrations/cover.template/

Beispiel Template Sensor (binary_sensor):

binary_sensor:
  - platform: template
    sensors:
      garage:
        friendly_name: Garage
        value_template: "{{ states('binary_sensor.garagentorsensor_contact') }}"
        unique_id: garage_id
        icon_template: >
          {% if is_state('binary_sensor.garagentorsensor_contact', 'on') %} mdi:garage-open
          {% else %} mdi:garage
          {% endif %}

Beispiel Template Sensor (cover):

cover:
- platform: template
  covers:
    garagen_tor:
      friendly_name: Garagentor
      unique_id: garagentor_id
      value_template: "{{is_state('binary_sensor.garagentorsensor_contact', 'on' )}}"
      open_cover:
        service: input_boolean.toggle
        data:
          entity_id: input_boolean.garage_test
      close_cover:
        service: input_boolean.toggle
        data:
          entity_id: input_boolean.garage_test
      icon_template: >
          {% if is_state('binary_sensor.garagentorsensor_contact', 'on') %} mdi:garage-open
          {% else %} mdi:garage
          {% endif %}

Home Assistant: Schritt für Schritt – MQTT-Sensor mit Hilfe des MQTT-Explorer einrichten.

Entdecken Sie, wie Sie mithilfe des MQTT-Explorers einen MQTT-Sensor einrichten können. Erfahren Sie, wie Sie MQTT-Werte von EVCC (Electric Vehicle Charge Controller) als Beispiel integrieren, überwachen und steuern können. Tauchen Sie ein in die Welt des MQTT und bringen Sie Ihr Projekt auf das nächste Level!

Links aus dem Video:

MQTT Explorer Add-On: https://github.com/GollumDom/addon-repository

MQTT Sensor Integration: https://www.home-assistant.io/integrations/sensor.mqtt/

MQTT Select Platform: https://www.home-assistant.io/integrations/select.mqtt/

Die Basisinstallation von evcc erkläre ich in diesem Video:

Hinweis ! Damit evcc die Daten über MQTT exportiert müsst ihr euren Broker in der evcc.yaml eintragen.

# mqtt message broker
mqtt:
   broker: 192.168.101.79:1883 # euer MQTT-Broker mit Port
   topic: evcc # das Topic lasst ihr so stehen, dann findet ihr im MQTT-Explorer alles unter evcc
  # user: euer_user
  # password: euer_kennwort

Code aus der Configuration.yaml:

mqtt:
  sensor:
    - name: "PV Leistung"
      unique_id: evcc_pv_leistung_w
      state_topic: "evcc/site/pvPower"
      value_template: "{{value | round(1) }}"
      unit_of_measurement: "W"
      availability_topic: "evcc/status"
  select:
      state_topic: "evcc/loadpoints/1/mode"
      command_topic: "evcc/loadpoints/1/mode/set"
      name: "Charge Mode"
      unique_id: evcc_charge_mode_select
      options:
        - "off"
        - "now"
        - "minpv"
        - "pv"

Hinweis von @richyholzy4120 : Wenn man mehrere Ladestationen hat , dann sollte vor dem state_topic ein – gesetzt werden.

Hinweis von meiner Seite, das kann auch schon bei einer Ladestation so gemacht werden. Durch das “-” vor dem state_topic lassen sich mehrere select Sensoren anlegen. Die Variante von @richyholzy4120 ist somit durchgängiger !

mqtt:
  select:
    - state_topic: "evcc/loadpoints/1/mode"
      command_topic: "evcc/loadpoints/1/mode/set"
      name: "Charge Mode"
      unique_id: evcc_charge_mode_select
      options:
        - "off"
        - "now"
        - "minpv"
        - "pv"