Cupra Born EV integration

New version (0.4) on HACS / Github for download. A few people on the forums are having problems with their cars going offline unexpectedly, so the component now exposes an online state to allow you to monitor this and take action:

image

Ah, I assumed it was the same app.
I prefer not to shared my credentials, and I doubt I have the skill to reverse engineer it.
So I will stick to using the cupra app for now.

Thanks for your effort!

1 Like

No problem, completely understand!

Small update (v0.5) to fix a bug with binary_sensor.cupra_born_door_lock_status not working properly, and adding support for dutch translation to the component setup.

If anyone wishes to add translation in their own language (which is mostly centred around the component setup), please submit a PR!

Hi Mitch,

Nice looking - would it be possible for you to share the code for this?

Thanks for all the hard work, the add-on nowadays works flawless as long as the API is working.

A bonus thing to add would be support for ABRP, like VWsFriend does: GitHub - tillsteinbach/VWsFriend: VW WeConnect visualization and control

Any ideas if this is possible?

Interesting. ABRP is not something I’ve ever used myself.

How would you expect this to work? Click a button and push the location / SoC data into ABRP?

Ideally I wouldn’t want to push any button, just generate the ABRP token and set the integration up to send/passthrough the SoC information to ABRP.

Like VWsfriend: “…supports sending its data to ABPR out of the box. You just have to generate a user-token in ABRP and configure it for your car in the UI. Connecting VWsFriend to ABRP enables you to use the current SoC, position, parking and charging state (feature availability depends on your car!) when planning routes in ABRP”.

This saves us from the need to use an OBD2 dongle or a Tronity subscription to fully use ABRP with relevant battery SoC info available. Quite neat :slight_smile:

1 Like
square: false
columns: 1
type: grid
cards:
  - square: false
    columns: 1
    type: grid
    cards:
      - type: picture
        image: local/images/995.png
        card_mod:
          style: |
            ha-card
              {border-style: none;
              }
  - square: false
    columns: 2
    type: grid
    cards:
      - type: custom:mushroom-entity-card
        entity: sensor.cupra_born_range_in_kilometers
        fill_container: false
        icon: ''
        icon_color: purple
        name: Actieradius
      - type: custom:mushroom-entity-card
        entity: sensor.cupra_born_odometer_in_kilometers
  - square: false
    columns: 2
    type: grid
    cards:
      - type: custom:mushroom-entity-card
        entity: sensor.cupra_born_state_of_charge
        name: Batterij
        icon_color: teal
        fill_container: false
      - type: custom:mushroom-entity-card
        entity: sensor.werk
        icon: mdi:office-building-marker-outline
        icon_color: deep-purple
        name: Reistijd
  - square: false
    columns: 2
    type: grid
    cards:
      - type: custom:mushroom-entity-card
        entity: sensor.cupra_born_climatisation_state
        name: Klimatisering Status
      - type: custom:mushroom-entity-card
        entity: sensor.charge_finish_time_klimatisering
        icon: mdi:home-clock-outline
        name: Klimatisering Tijd
  - square: false
    columns: 2
    type: grid
    cards:
      - type: custom:mushroom-entity-card
        entity: sensor.cupra_born_charge_power
        icon_color: red
      - type: custom:mushroom-entity-card
        entity: sensor.cupra_born_charge_rate
        name: Laadsnelheid
        icon: mdi:ev-plug-type2
        icon_color: orange
  - square: false
    columns: 2
    type: grid
    cards:
      - type: custom:mushroom-entity-card
        icon: mdi:ev-station
        icon_color: blue-grey
        entity: sensor.batterij_kwh
      - type: custom:mushroom-entity-card
        entity: sensor.charge_finish_time_laden
        name: Laden klaar om
        icon: mdi:battery-clock
  - square: false
    columns: 3
    type: grid
    cards:
      - type: custom:mushroom-lock-card
        entity: binary_sensor.cupra_born_overall_status
        fill_container: false
        layout: vertical
        primary_info: name
        secondary_info: state
        name: Deuren
        icon: mdi:car-door
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_trunk_lock_status
        fill_container: true
        layout: vertical
        primary_info: name
        secondary_info: state
        name: Kofferbak
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_lights_status
        layout: vertical
        fill_container: true
square: false
columns: 1
type: grid
cards:
  - type: custom:mushroom-title-card
    title: Deuren
  - square: true
    columns: 4
    type: grid
    cards:
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_door_front_left_open_status
        layout: vertical
        name: Voor Links
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_door_front_right_open_status
        layout: vertical
        name: Voor Rechts
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_door_rear_left_open_status
        layout: vertical
        name: Achter Links
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_door_rear_right_open_status
        layout: vertical
        name: Achter Rechts
  - square: true
    columns: 4
    type: grid
    cards:
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_door_front_left_lock_status
        layout: vertical
        name: Voor Links
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_door_front_right_lock_status
        layout: vertical
        name: Voor Rechts
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_door_rear_left_lock_status
        layout: vertical
        name: Achter Links
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_door_rear_right_lock_status
        layout: vertical
        name: Achter Rechts
  - square: false
    columns: 3
    type: grid
    cards:
      - type: custom:mushroom-title-card
        title: Ramen
  - square: false
    columns: 4
    type: grid
    cards:
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_window_front_left_open_status
        layout: vertical
        name: Voor Links
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_window_front_left_open_status
        layout: vertical
        name: Voor Rechts
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_window_front_left_open_status
        layout: vertical
        name: Achter Links
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_window_front_left_open_status
        layout: vertical
        name: Achter Rechts
  - square: false
    columns: 1
    type: grid
    cards:
      - type: custom:mushroom-title-card
        title: Verwarming
  - square: false
    columns: 4
    type: grid
    cards:
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_front_window_heating_state
        fill_container: true
        layout: vertical
        primary_info: name
        name: Voorruit
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_rear_window_heating_state
        name: Achteruit
        fill_container: true
        layout: vertical
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_zone_front_left_enabled
        fill_container: true
        layout: vertical
        name: Voor Links
        icon: mdi:heat-wave
        icon_color: red
        primary_info: name
        secondary_info: state
      - type: custom:mushroom-entity-card
        entity: binary_sensor.cupra_born_zone_front_right_enabled
        name: Voor Rechts
        fill_container: true
        icon_color: red
        layout: vertical
        icon: mdi:heat-wave

2 Likes

Hi all,

Is there anything specific I need to do, in order to get all the sensors?
I don’t see the sensors for the doors and windows? Do I need to enable anything in the car before I can do that. When I open the app I am able to see if a door or window is open, but not in Home Assistant.

Hoi Mitch,

Trying to figure out where to put your code snippet into my raw configuration. I have created a new tab/view that I call ‘Test’. It’s completey blank still so all it has now is

  - title: Test
    path: test
    badges: []
    cards: []

So somewhere your code should be pasted into this. Can you help? (NB. I already noticed some local paths to images in your code, so that is not going to work, but I’ll figure that out later).

Thanks/Dank. :wink:

You have to install some hacs cards en themes
ios-dark-mode-blue-red
custom:horizontal-layout
custom:mushroom-entity-card

This is mine raw configuration

- title: Cupra Born
    path: cupra-born
    icon: mdi:car-electric
    type: custom:horizontal-layout
    theme: ios-dark-mode-blue-red
    badges: []
    cards:
      - square: false
        columns: 1
        type: grid
        cards:
          - square: false
            columns: 1
            type: grid
            cards:
              - type: picture
                image: local/images/995.png
                card_mod:
                  style: |
                    ha-card
                      {border-style: none;
                      }
          - square: false
            columns: 2
            type: grid
            cards:
              - type: custom:mushroom-entity-card
                entity: sensor.cupra_born_range_in_kilometers
                fill_container: false
                icon: ''
                icon_color: purple
                name: Actieradius
              - type: custom:mushroom-entity-card
                entity: sensor.cupra_born_odometer_in_kilometers
          - square: false
            columns: 2
            type: grid
            cards:
              - type: custom:mushroom-entity-card
                entity: sensor.cupra_born_state_of_charge
                name: Batterij
                icon_color: teal
                fill_container: false
              - type: custom:mushroom-entity-card
                entity: sensor.werk
                icon: mdi:office-building-marker-outline
                icon_color: deep-purple
                name: Reistijd
          - square: false
            columns: 2
            type: grid
            cards:
              - type: custom:mushroom-entity-card
                entity: sensor.cupra_born_climatisation_state
                name: Klimatisering Status
              - type: custom:mushroom-entity-card
                entity: sensor.charge_finish_time_klimatisering
                icon: mdi:home-clock-outline
                name: Klimatisering Tijd
          - square: false
            columns: 2
            type: grid
            cards:
              - type: custom:mushroom-entity-card
                entity: sensor.cupra_born_charge_power
                icon_color: red
              - type: custom:mushroom-entity-card
                entity: sensor.cupra_born_charge_rate
                name: Laadsnelheid
                icon: mdi:ev-plug-type2
                icon_color: orange
          - square: false
            columns: 2
            type: grid
            cards:
              - type: custom:mushroom-entity-card
                icon: mdi:ev-station
                icon_color: blue-grey
                entity: sensor.batterij_kwh
              - type: custom:mushroom-entity-card
                entity: sensor.charge_finish_time_laden
                name: Laden klaar om
                icon: mdi:battery-clock
          - square: false
            columns: 3
            type: grid
            cards:
              - type: custom:mushroom-lock-card
                entity: binary_sensor.cupra_born_overall_status
                fill_container: false
                layout: vertical
                primary_info: name
                secondary_info: state
                name: Deuren
                icon: mdi:car-door
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_trunk_lock_status
                fill_container: true
                layout: vertical
                primary_info: name
                secondary_info: state
                name: Kofferbak
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_lights_status
                layout: vertical
                fill_container: true
      - square: false
        columns: 1
        type: grid
        cards:
          - type: custom:mushroom-title-card
            title: Deuren
          - square: true
            columns: 4
            type: grid
            cards:
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_door_front_left_open_status
                layout: vertical
                name: Voor Links
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_door_front_right_open_status
                layout: vertical
                name: Voor Rechts
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_door_rear_left_open_status
                layout: vertical
                name: Achter Links
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_door_rear_right_open_status
                layout: vertical
                name: Achter Rechts
          - square: true
            columns: 4
            type: grid
            cards:
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_door_front_left_lock_status
                layout: vertical
                name: Voor Links
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_door_front_right_lock_status
                layout: vertical
                name: Voor Rechts
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_door_rear_left_lock_status
                layout: vertical
                name: Achter Links
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_door_rear_right_lock_status
                layout: vertical
                name: Achter Rechts
          - square: false
            columns: 3
            type: grid
            cards:
              - type: custom:mushroom-title-card
                title: Ramen
          - square: false
            columns: 4
            type: grid
            cards:
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_window_front_left_open_status
                layout: vertical
                name: Voor Links
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_window_front_left_open_status
                layout: vertical
                name: Voor Rechts
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_window_front_left_open_status
                layout: vertical
                name: Achter Links
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_window_front_left_open_status
                layout: vertical
                name: Achter Rechts
          - square: false
            columns: 1
            type: grid
            cards:
              - type: custom:mushroom-title-card
                title: Verwarming
          - square: false
            columns: 4
            type: grid
            cards:
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_front_window_heating_state
                fill_container: true
                layout: vertical
                primary_info: name
                name: Voorruit
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_rear_window_heating_state
                name: Achteruit
                fill_container: true
                layout: vertical
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_zone_front_left_enabled
                fill_container: true
                layout: vertical
                name: Voor Links
                icon: mdi:heat-wave
                icon_color: red
                primary_info: name
                secondary_info: state
              - type: custom:mushroom-entity-card
                entity: binary_sensor.cupra_born_zone_front_right_enabled
                name: Voor Rechts
                fill_container: true
                icon_color: red
                layout: vertical
                icon: mdi:heat-wave

Hey,
im new to HA, so be nice :smiley:
I was able to set up the Cupra Connect Integration on my HA, it works perfectly fine.
Now id love to give @_Mitch07 s Configuration a shot, since it look visually very good!

But im confused on where exactly i need to put that raw configuration in to make use of it.
Is ur config a fully dashboard with all diverse cards included?
Thanks!
Furkan

In one of your views in Lovelace, click the overflow menu in the upper right (three dots), click Configure UI, click the dots again, then click Raw config editor

Hey,
for me it was:
Lovelace → 3 Dots → Edit Dashboard → 3 Dots → Raw Configuration Editor

I dont if thats the right spot, but when i try to copy paste ur config, i get this error when saving:

Unable to parse YAML: YAMLException: bad indentation of a mapping entry (2:9) 1 | - title: Cupra Born 2 | path: cupra-born -------------^ 3 | icon: mdi:car-electric 4 | type: custom:horizontal-layout

Furkan

It’s not a matter of deploying the code and you’re done.
You need to make sure everything is aligned properly. I can’t help you with that.

If you have no experience in this, it might be an idea to search on “home assistant create dashboard” via Google and look further from there.

Aight, thanks!

The eagle-eyed will have noticed 0.6 is out. Nothing very exciting, but it now cohabits a bit nicer with the VW integration so for those who have both cars, they can use both integrations. It also now reports if the hood (bonnet, for UKers) is open in case that’s something you really want to know about.

All working fine with the latest 2023.8.x release of HA too.

2 Likes

Seems that the Cupra WebAPI is completely down today. Neither the intregration nor the smartphone app is working.

HA log shows:
2023-08-16 WARNING (SyncWorker_14) [urllib3.connectionpool] Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1002)'))'

To my mind VW or SEAT did forget to renew the ssl certificate. Rookies.

1 Like

Hahaha, you are indeed correct:

Also, some LOL for using a freebie LE certificate too :wink: