Skip to main content
Scripts om Sessy's ...
 
Meldingen
Alles wissen

Scripts om Sessy's aan/uit te zetten vanuit HA

4 Berichten
2 Gebruikers
0 Reactions
49 Bekeken
(@dizzl)
Berichten: 6
Active Member
Topic starter
 

Sinds vorige week heb ik twee Sessy's hangen op zolder. Afgelopen dagen heb ik een aantal scripts geschreven voor HA om Sessy's aan te sturen. In eerste instantie om mijn twee Sessy's uit te zetten wanneer mijn EV gaat laden. Daarmee voorkom ik dat stroom uit de Sessy's de EV invloeit.

Ik deel de scripts hieronder ter leering ende vermaeck.

Twee rest_command scripts, de om een Sessy's power strategy uit te lezen:

rest_command:
  sessy_get_power_strategy:
    url: "http://{{host}}/api/v1/power/active_strategy"
    method: GET
    headers:
      authorization: "Basic {{auth}}"

  sessy_set_power_strategy:
    url: "http://{{host}}/api/v1/power/active_strategy"
    method: POST
    headers:
      authorization: "Basic {{auth}}"
    content_type: "application/json"
    payload: '{"strategy":"{{power_strategy}}"}'

Script om de power strategy van een Sessy aan te passen indien afwijkend van huidige strategie:

script:
  sessy_set_power_strategy:
    sequence:
      - action: rest_command.sessy_get_power_strategy
        data:
          host: "{{host}}"
          auth: "{{auth}}"
        response_variable: sessy_response
      - if: "{{ sessy_response['status'] == 200 }}"
        then:
          - variables:
              current_strategy: "{{ sessy_response['content']['strategy'] }}"
          - if: "{{ current_strategy != strategy }}"
            then:
              - action: system_log.write
                data:
                  message: "Transition {{host}} from {{current_strategy}} to {{strategy}}"
                  level: info
              - action: rest_command.sessy_set_power_strategy
                data:
                  host: "{{host}}"
                  auth: "{{auth}}"
                  power_strategy: "{{strategy}}"
                response_variable: sessy_response
              - if: "{{ sessy_response['status'] != 200 }}"
                then:
                  - action: system_log.write
                    data:
                      message: "Could not set new power strategy: {{sessy_response}}"
                      level: error

 Vervolgens twee scripts om mijn twee Sessy's om te schakelen:

script:
  sessy_pause:
    sequence:
      - action: script.sessy_set_power_strategy
        data:
          host: sessy1.mijndomein.nl
          auth: !secret sessy1_auth
          strategy: POWER_STRATEGY_IDLE
      - action: script.sessy_set_power_strategy
        data:
          host: sessy2.mijndomein.nl
          auth: !secret sessy2_auth
          strategy: POWER_STRATEGY_IDLE

  sessy_resume:
    sequence:
      - action: script.sessy_set_power_strategy
        data:
          host: sessy1.mijndomein.nl
          auth: !secret sessy1_auth
          strategy: POWER_STRATEGY_ECO
      - action: script.sessy_set_power_strategy
        data:
          host: sessy2.mijndomein.nl
          auth: !secret sessy2_auth
          strategy: POWER_STRATEGY_ECO

En vier bijbehorende automatiseringen. Deze zorgen ervoor dat de Sessy's gepauzeerd worden wanneer mijn auto thuis laadt (niet-thuis laden moet natuurlijk geen invloed hebben op mijn thuisbatterijen). De vier automatiseringen doen het volgende:

1. Wanneer EV begint met laden, en indien auto thuis is, dan Sessy's pauzeren

2. Wanneer EV thuis komt, en indien auto aan het laden is, dan Sessy's pauzeren

3. Indien EV stopt met laden, dan Sessy's in ECO modus

4. Indien EV thuis wegrijdt, dan Sessy's in ECO modus

Dit is zo gekozen omdat je niet weet welke sensor in Home Assistant eerst geüpdate wordt wanneer je thuis komt en meteen gaat laden, de geo-positie of de laadstatus. Regel 1 en 2 zorgen ervoor dat volgorde van het bijwerken van de sensoren niet uitmaakt. En regels 3 en 4 zorgen dat de Sessy's altijd terugvallen in ECO modus wanneer het thuis-laden stopt.

automation:
  - id: on_car_starts_charging
    triggers:
      trigger: state
      entity_id: sensor.car_charging_status
      to: "charging"
    condition:
      - condition: state
        entity_id: device_tracker.car
        state: "home"
    actions:
      - action: script.sessy_pause

  - id: on_car_comes_home
    triggers:
      trigger: state
      entity_id: device_tracker.car
      to: "home"
    condition:
      - condition: state
        entity_id: sensor.car_charging_status
        state: "charging"
    actions:
      - action: script.sessy_pause

  - id: on_car_stops_charging
    triggers:
      trigger: state
      entity_id: sensor.car_charging_status
      from: "charging"
    actions:
      - action: script.sessy_resume

  - id: on_car_leaves_home
    triggers:
      trigger: state
      entity_id: device_tracker.car
      from: "home"
    actions:
      - action: script.sessy_resume

 Tot zover. Hopelijk is dit nuttig voor mensen die nog weinig van HA weten maar wel hun Sessy's willen aansturen. Commentaar en suggesties welkom.

 

Het resultaat van deze scripts en automatiseringen is in bijgevoegd plaatje te zien. Zodra de EV gaat laden gaan de Sessy's op IDLE. En zodra de auto stopt met laden, of het laden even pauzeert (EV laden wordt bij mij aangestuurd door Frank Energie), dan gaan de Sessy's weer op ECO.

 
Geplaatst : 07/03/2025 10:12 am
(@dizzl)
Berichten: 6
Active Member
Topic starter
 

Ineens kwam ik in een andere thread de repo van PimDoos tegen. Daarin gezien dat de ruwe API calls die ik hierboven deed helemaal niet nodig zijn. Heb inmiddels de pause en resume scripts aangepast:

script:
  sessy_pause:
    sequence:
      - action: select.select_option
        target:
          entity_id: select.sessy1_power_strategy
        data:
          option: "idle"
      - action: select.select_option
        target:
          entity_id: select.sessy2_power_strategy
        data:
          option: "idle"

  sessy_resume:
    sequence:
      - action: select.select_option
        target:
          entity_id: select.sessy1_power_strategy
        data:
          option: "eco"
      - action: select.select_option
        target:
          entity_id: select.sessy2_power_strategy
        data:
          option: "eco"
 
Geplaatst : 07/03/2025 12:08 pm
(@johan_w)
Berichten: 64
Trusted Member
 

Waarom niet de sessy intergratie gebruikt binnen HA gemaakt door Pim doos zie : https://github.com/PimDoos/ha-sessy

Had je veel werkt gescheelt en door vele Sessy eigenearen in gebruik.

 
Geplaatst : 07/03/2025 4:56 pm
(@dizzl)
Berichten: 6
Active Member
Topic starter
 

Haha ja klopt, zie mijn tweede bericht. Ik had me niet voldoende verdiept in wat die integratie allemaal kon. Maar toch een middagje leuk zelf geprobeerd 🙂

 
Geplaatst : 11/03/2025 7:34 pm
Deel: