SEAT Connect car integration in Hassio

@Farfar Thanks for the integration, working great with Cupra Formentor also. :+1:

My integration:

If anyone interested, it would be great to take this integration to the next level like animated doors for example.

6 Likes

Ciao, complimenti per la cardā€¦ anchā€™io ho una formentor. Se ti va , Riusciresti a passarmi la card? Grazie mille ciao

@stosoorok that looks really nice! Can you share the YAML of your solution?

1 Like

Thanks @kevine111

Left card:

type: vertical-stack
cards:
  - type: horizontal-stack
    cards:
      - type: markdown
        content: '## Cupra Formentor'
  - type: horizontal-stack
    cards:
      - image: /local/cupra/1_main.png
        type: picture-elements
        elements:
          - type: custom:stack-in-card
            mode: horizontal
            style:
              top: 13%
              left: 50%
            cards:
              - type: horizontal-stack
                cards:
                  - type: custom:button-card
                    entity: sensor.VIN_odometer
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    styles:
                      card:
                        - width: 81px
                        - height: 55px
                        - padding: 5px
                        - margin-top: 1px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
                  - type: custom:button-card
                    entity: sensor.VIN_fuel_level
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    styles:
                      card:
                        - width: 81px
                        - height: 55px
                        - padding: 5px
                        - margin-top: 1px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
                        - padding-left: 10px
                  - type: custom:button-card
                    entity: sensor.VIN_combustion_range
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    styles:
                      card:
                        - width: 81px
                        - height: 55px
                        - padding: 5px
                        - margin-top: 1px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
                        - padding-left: 10px
                  - type: custom:button-card
                    entity: sensor.VIN_outside_temperature
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    styles:
                      card:
                        - width: 81px
                        - height: 55px
                        - padding: 5px
                        - margin-top: 1px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
                        - padding-left: 10px
          - type: custom:stack-in-card
            mode: horizontal
            style:
              top: 91%
              left: 50%
            cards:
              - type: horizontal-stack
                cards:
                  - type: custom:button-card
                    entity: >-
                      sensor.VIN_last_trip_average_fuel_consumption
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    styles:
                      card:
                        - width: 85px
                        - height: 40px
                        - padding: 3px
                        - margin-top: 0px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
              - type: horizontal-stack
                cards:
                  - type: custom:button-card
                    entity: sensor.VIN_last_trip_average_speed
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    styles:
                      card:
                        - width: 85px
                        - height: 40px
                        - padding: 3px
                        - margin-top: 0px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
              - type: horizontal-stack
                cards:
                  - type: custom:button-card
                    entity: sensor.VIN_last_trip_length
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    styles:
                      card:
                        - width: 85px
                        - height: 40px
                        - padding: 3px
                        - margin-top: 0px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
              - type: horizontal-stack
                cards:
                  - type: custom:button-card
                    entity: sensor.VIN_last_trip_duration
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    styles:
                      card:
                        - width: 85px
                        - height: 40px
                        - padding: 3px
                        - margin-top: 0px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)

Right card:

type: vertical-stack
cards:
  - type: horizontal-stack
    cards:
      - type: markdown
        content: '## Status'
  - type: horizontal-stack
    cards:
      - image: /local/cupra/2_all_closed_top.png
        type: picture-elements
        elements:
          - type: custom:button-card
            show_name: true
            show_state: false
            show_icon: true
            style:
              top: 15%
              left: 10%
            state:
              - value: 'off'
                color: red
                service_data:
                  entity_id: switch.VIN_start_flashing
            entity: switch.VIN_start_flashing
            styles:
              card:
                - width: 75px
                - height: 75px
              icon:
                - width: 40px
                - width: 40px
          - type: custom:button-card
            show_name: true
            show_state: false
            show_icon: true
            style:
              top: 15%
              left: 90%
            state:
              - value: 'off'
                color: red
                service_data:
                  entity_id: switch.VIN_start_honking_and_flashing
            entity: switch.VIN_start_honking_and_flashing
            styles:
              card:
                - width: 75px
                - height: 75px
              icon:
                - width: 40px
                - width: 40px
          - type: custom:stack-in-card
            mode: vertical
            style:
              top: 52%
              left: 30%
            cards:
              - type: vertical-stack
                cards:
                  - type: custom:button-card
                    entity: binary_sensor.VIN_window_closed_left_front
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    state:
                      - value: 'on'
                        color: red
                      - value: 'off'
                        color: green
                    styles:
                      card:
                        - width: 55px
                        - height: 55px
                        - padding: 1px
                        - margin-top: 1px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
              - type: vertical-stack
                cards:
                  - type: custom:button-card
                    entity: binary_sensor.VIN_door_closed_right_front
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    state:
                      - value: 'on'
                        color: red
                      - value: 'off'
                        color: green
                    styles:
                      card:
                        - width: 55px
                        - height: 55px
                        - padding: 1px
                        - margin-top: 1px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
              - type: vertical-stack
                cards:
                  - type: custom:button-card
                    entity: binary_sensor.VIN_door_closed_right_back
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    state:
                      - value: 'on'
                        color: red
                      - value: 'off'
                        color: green
                    styles:
                      card:
                        - width: 55px
                        - height: 55px
                        - padding: 1px
                        - margin-top: 1px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
              - type: vertical-stack
                cards:
                  - type: custom:button-card
                    entity: binary_sensor.VIN_window_closed_left_back
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    state:
                      - value: 'on'
                        color: red
                      - value: 'off'
                        color: green
                    styles:
                      card:
                        - width: 55px
                        - height: 55px
                        - padding: 1px
                        - margin-top: 1px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
          - type: custom:button-card
            show_name: false
            show_state: true
            show_icon: false
            style:
              top: 17%
              left: 50%
            state:
              - value: 'off'
                color: green
              - value: 'on'
                color: red
                service_data:
                  entity_id: binary_sensor.VIN_hood_closed
            entity: binary_sensor.VIN_hood_closed
            styles:
              card:
                - width: 75px
                - height: 27px
          - type: custom:button-card
            show_name: false
            show_state: false
            show_icon: true
            style:
              top: 34%
              left: 49.8%
            state:
              - value: 'off'
                color: green
              - value: 'on'
                color: red
                service_data:
                  entity_id: switch.VIN_parking_heater_ventilation
            entity: switch.VIN_parking_heater_ventilation
            styles:
              card:
                - width: 55px
                - height: 55px
              icon:
                - width: 40px
                - width: 40px
          - type: custom:button-card
            show_name: false
            show_state: false
            show_icon: true
            style:
              top: 58%
              left: 49.8%
            state:
              - value: 'off'
                color: green
              - value: 'on'
                color: red
                service_data:
                  entity_id: lock.VIN_door_locked
            entity: lock.VIN_door_locked
            styles:
              card:
                - width: 55px
                - height: 55px
              icon:
                - width: 40px
                - width: 40px
          - type: custom:button-card
            show_name: false
            show_state: true
            show_icon: false
            style:
              top: 84%
              left: 50%
            state:
              - value: 'off'
                color: green
              - value: 'on'
                color: red
                service_data:
                  entity_id: binary_sensor.VIN_trunk_closed
            entity: binary_sensor.VIN_trunk_closed
            styles:
              card:
                - width: 75px
                - height: 27px
          - type: custom:stack-in-card
            mode: vertical
            style:
              top: 52%
              left: 70%
            cards:
              - type: vertical-stack
                cards:
                  - type: custom:button-card
                    entity: binary_sensor.VIN_window_closed_right_front
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    state:
                      - value: 'on'
                        color: red
                      - value: 'off'
                        color: green
                    styles:
                      card:
                        - width: 55px
                        - height: 55px
                        - padding: 1px
                        - margin-top: 1px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
              - type: vertical-stack
                cards:
                  - type: custom:button-card
                    entity: binary_sensor.VIN_door_closed_right_front
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    state:
                      - value: 'on'
                        color: red
                      - value: 'off'
                        color: green
                    styles:
                      card:
                        - width: 55px
                        - height: 55px
                        - padding: 1px
                        - margin-top: 1px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
              - type: vertical-stack
                cards:
                  - type: custom:button-card
                    entity: binary_sensor.VIN_door_closed_right_back
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    state:
                      - value: 'on'
                        color: red
                      - value: 'off'
                        color: green
                    styles:
                      card:
                        - width: 55px
                        - height: 55px
                        - padding: 1px
                        - margin-top: 1px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)
              - type: vertical-stack
                cards:
                  - type: custom:button-card
                    entity: binary_sensor.VIN_window_closed_left_back
                    show_entity_picture: true
                    show_name: false
                    show_state: true
                    state:
                      - value: 'on'
                        color: red
                      - value: 'off'
                        color: green
                    styles:
                      card:
                        - width: 55px
                        - height: 55px
                        - padding: 1px
                        - margin-top: 1px
                        - font-size: 12px
                        - border: 0px solid var(--primary-background-color)
                        - border-top: 0px solid var(--state-icon-color)

1 Like

Thanks for the quick reply! I will start experiment with it. Any chance you can also share the images?

Pictures are from the Cupra Connect app.

Does someone know how to install using a Python script? Iā€™m used to HACS and this is new for me.

Just add the repo to HACS and install as you normally do.

I do get this error:
image

On HACS the same:

image

Any idea what I do wrong?

Add the correct repo:

1 Like

Very cool concept. I have a photo of the car but I donā€™t have a photo of the view from the top. Can you share this graphic 2_all_closed_top.png? I donā€™t have it in the app.

My Cupra formentor icon of car is white. Can I changing this icon?
image

I am trying to implement these cards with my own entities but does not work. What am I doing wrong?

Edit: Answering myself, Stack in card and button-card in Hacs.

I am loving these integration and using it also for a power optimized charging of my vehicle with self produced solar power (my wallbox is not optimised yet). In the App i have the oportunity to change the charge power (5, 10, ā€¦ Amps) would be a great feature to further optimice the charging.

(Sorry but I am not good enougth in coding to handle that by mayself)

Thanks for all the fantastic work

Greetings Gam

My integration works fine for a day. But then it breaks. I canā€™t login on the Seat Connect app either. If I delete this integration, I can access again after a day. Anyone have the same problem?

it bc you are using all requests, u just have to wait to after midnightā€¦ you donā€™t need to delete the integrationā€¦

How do I prevent this?

Any news on this?

I did a fresh install and itā€™s just keeps spinning after I enter my credentials. Currently for more than 15 minutes. Tried it a second time without success.

Below the logs, does anyone has an idea?
The credentials are correct btw.

future problem

Logger: homeassistant.data_entry_flow
Source: data_entry_flow.py:819 
First occurred: 21:29:48 (2 occurrences) 
Last logged: 21:49:57

custom_components.seatconnect.config_flow::SeatConnectConfigFlow calls async_show_progress without passing a progress task, this is not valid and will break in Home Assistant Core 2024.8. Please report it to the custom integration author

I used the same credentials for the app

This error originated from a custom integration.

Logger: seatconnect.connection
Source: custom_components/seatconnect/config_flow.py:97 
integration: seatconnect (documentation, issues) 
First occurred: 21:29:49 (2 occurrences) 
Last logged: 21:49:58

Invalid credentials or invalid configuration. Make sure you have entered the correct credentials

I have the payed connect service

This error originated from a custom integration.

Logger: custom_components.seatconnect.config_flow
Source: custom_components/seatconnect/config_flow.py:99 
integration: seatconnect (documentation, issues) 
First occurred: 21:29:49 (2 occurrences) 
Last logged: 21:49:58

Login failed with error: User appears unauthorized

Edit: split log items to improve readability.
Edit 2: An issue seems already reported: Adding integration fails Ā· Issue #60 Ā· Farfar/homeassistant-seatconnect Ā· GitHub Letā€™s hope for a fix soon

Hi,

I also had a problem with the integration. It always worked for me without any problems, but a few days ago it stopped working. I registered on the Cupra Connect website and since then everything has been working again.

Greetings