Giter VIP home page Giter VIP logo

audi_connect_ha's Introduction

Audi Connect Integration for Home Assistant

GitHub Activity License Code Style

hacs

Notice

Due to API changes it might be that currently not all functionality is given. Please open a issue to report the topics you are missing.

Maintainers Wanted

Due to time limitations this project is not actively maintained anymore. It will continue to work as long as Audi does not change the API again. However, I'm open to someone else taking the lead. If you would like to become a maintainer, please contact me.

Description

The audiconnect component provides an integration with the Audi Connect cloud service. It adds presence detection, sensors such as range, mileage, and fuel level, and provides car actions such as locking/unlocking and setting the pre-heater.

Note: Certain functions require special permissions from Audi, such as position update via GPS.

Credit for initial API discovery go to the guys at the ioBroker VW-Connect forum, who were able to figure out how the API and the PIN hashing works. Also some implementation credit to davidgiga1993 of the original AudiAPI Python package, on which some of this code is loosely based.

Installation

There are two ways this integration can be installed into Home Assistant.

The easiest and recommended way is to install the integration using HACS, which makes future updates easy to track and install.

Alternatively, installation can be done manually by copying the files in this repository into the custom_components directory in the Home Assistant configuration directory:

  1. Open the configuration directory of your Home Assistant installation.
  2. If you do not have a custom_components directory, create it.
  3. In the custom_components directory, create a new directory called audiconnect.
  4. Copy all files from the custom_components/audiconnect/ directory in this repository into the audiconnect directory.
  5. Restart Home Assistant.
  6. Add the integration to Home Assistant (see Configuration).

Configuration

Configuration is done through the Home Assistant UI.

To add the integration, go to Settings ➤ Devices & Services ➤ Integrations, click ➕ Add Integration, and search for "Audi Connect".

Configuration

Configuration Variables

username

  • (string)(Required) The username associated with your Audi Connect account.

password

  • (string)(Required) The password for your Audi Connect account.

S-PIN

  • (string)(Optional) The S-PIN for your Audi Connect account.

region

  • (string)(Optional) The region where your Audi Connect account is registered.
    • 'DE' for Europe (or leave unset)
    • 'US' for United States of America
    • 'CA' for Canada
    • 'CN' for China

scan_interval

  • (number)(Optional) The frequency in minutes for how often to fetch status data from Audi Connect. (Optional. Default is 15 minutes, can be no more frequent than 15 min.)

Options

Find configuration options under Settings ➤ Devices & Services ➤ Integrations ➤ Audi Connect ➤ Configure:

  • Cloud Update at Startup (bool): Toggle cloud updates at integration startup. Ideal for development or frequent HA restarts.
  • Active Polling at Scan Interval (bool): Enable or disable active polling.
  • Scan Interval (int): Defines polling frequency in minutes (minimum 15). Effective only if "Active Polling at Scan Interval" is enabled.

Note: A Home Assistant restart is required for changes to take effect.

Services

Audi Connect: Refresh Vehicle Data

audiconnect.refresh_vehicle_data

Normal updates retrieve data from the Audi Connect cloud service, and don't interact directly with the vehicle. This service triggers an update request from the vehicle itself. When data is retrieved successfully, Home Assistant is automatically updated. The service requires a vehicle identification number (VIN) as a parameter.

Service Parameters

  • vin: The Vehicle Identification Number (VIN) of the Audi you want to control.

Audi Connect: Refresh Cloud Data

audiconnect.refresh_cloud_data

This service triggers an update request from the cloud.

  • Functionality: Updates data for all vehicles from the online source, mirroring the action performed at integration startup or during scheduled refresh intervals.
  • Behavior: Does not force a vehicle-side data refresh. Consequently, if vehicles haven't recently pushed updates, retrieved data might be outdated.
  • Note: This service replicates the function of active polling without scheduling, offering a more granular control over data refresh moments.
  • IMPORTANT: This service has no built in usage limits. Excessive use may result in a temporary suspension of your account.

Service Parameters

  • none

Audi Connect: Execute Vehicle Action

audiconnect.execute_vehicle_action

This service allows you to perform actions on your Audi vehicle, specified by the vehicle identification number (VIN) and the desired action.

Service Parameters

  • vin: The Vehicle Identification Number (VIN) of the Audi you want to control.
  • action: The specific action to perform on the vehicle. Available actions include:
    • lock: Lock the vehicle.
    • unlock: Unlock the vehicle.
    • start_climatisation: Start the vehicle's climatisation system. (Legacy)
    • stop_climatisation: Stop the vehicle's climatisation system.
    • start_charger: Start charging the vehicle.
    • start_timed_charger: Start the vehicle's charger with a timer.
    • stop_charger: Stop charging the vehicle.
    • start_preheater: Start the vehicle's preheater system.
    • stop_preheater: Stop the vehicle's preheater system.
    • start_window_heating: Start heating the vehicle's windows.
    • stop_window_heating: Stop heating the vehicle's windows.

Usage Example

To initiate the lock action for a vehicle with VIN WAUZZZ4G7EN123456, use the following service call:

service: audiconnect.execute_vehicle_action
data:
  vin: "WAUZZZ4G7EN123456"
  action: "lock"

Notes

  • Certain action require the S-PIN to be set in the configuration.
  • When the action is successfully performed, an update request is automatically triggered.

Audi Connect: Start Climate Control

audiconnect.start_climate_control

This service allows you to start the climate control with options for temperature, glass surface heating, and auto seat comfort.

Service Parameters

  • vin: The Vehicle Identification Number (VIN) of the Audi you want to control.
  • temp_f (optional): Desired temperature in Fahrenheit. Default is 70.
  • temp_c (optional): Desired temperature in Celsius. Default is 21.
  • glass_heating (optional): Enable (True) or disable (False) glass heating. Default is False.
  • seat_fl (optional): Enable (True) or disable (False) the front-left seat heater. Default is False.
  • seat_fr (optional): Enable (True) or disable (False) the front-right seat heater. Default is False.
  • seat_rl (optional): Enable (True) or disable (False) the rear-left seat heater. Default is False.
  • seat_rr (optional): Enable (True) or disable (False) the rear-right seat heater. Default is False.

Usage Example

To start the climate control for a vehicle with VIN WAUZZZ4G7EN123456 with a temperature of 72°F, enable glass heating, and activate both front seat heaters, use the following service call:

service: audiconnect.start_climate_control
data:
  vin: "WAUZZZ4G7EN123456"
  temp_f: 72
  glass_heating: True
  seat_fl: True
  seat_fr: True

Notes

  • The temp_f and temp_c parameters are mutually exclusive. If both are provided, temp_f takes precedence.
  • If neither temp_f nor temp_c is provided, the system defaults to 70°F or 21°C.
  • Certain action require the S-PIN to be set in the configuration.
  • When the action is successfully performed, an update request is automatically triggered.

Example Dashboard Card

Below is an example Dashboard (Lovelace) card illustrating some of the sensors this Home Assistant addon provides.

Example Dashboard Card

The card requires the following front end mods:

These mods can (like this integration) be installed using HACS.

The card uses the following code in ui-lovelace.yaml (or wherever your Dashboard is configured).

     - type: picture-elements
        image: /local/pictures/audi_sq7.jpeg
        style: |
          ha-card {
            border-radius: 10px;
            border: solid 1px rgba(100,100,100,0.3);
            box-shadow: 3px 3px rgba(0,0,0,0.4);
            overflow: hidden;
          }
        elements:
        - type: image
          image: /local/pictures/cardbackK.png
          style:
            left: 50%
            top: 90%
            width: 100%
            height: 60px

        - type: icon
          icon: mdi:car-door
          entity: sensor.doors_trunk_sq7
          tap_action: more_info
          style: {color: white, left: 10%, top: 86%}
        - type: state-label
          entity: sensor.doors_trunk_sq7
          style: {color: white, left: 10%, top: 95%}

        - type: state-icon
          entity: sensor.windows_sq7
          tap_action: more_info
          style: {color: white, left: 30%, top: 86%}
        - type: state-label
          entity: sensor.windows_sq7
          style: {color: white, left: 30%, top: 95%}

        - type: icon
          icon: mdi:oil
          entity: sensor.audi_sq7_oil_level
          tap_action: more_info
          style: {color: white, left: 50%, top: 86%}
        - type: state-label
          entity: sensor.audi_sq7_oil_level
          style: {color: white, left: 50%, top: 95%}

        - type: icon
          icon: mdi:room-service-outline
          entity: sensor.audi_sq7_service_inspection_time
          tap_action: more_info
          style: {color: white, left: 70%, top: 86%}
        - type: state-label
          entity: sensor.audi_sq7_service_inspection_time
          style: {color: white, left: 70%, top: 95%}

        - type: icon
          icon: mdi:speedometer
          entity: sensor.audi_sq7_mileage
          tap_action: more_info
          style: {color: white, left: 90%, top: 86%}
        - type: state-label
          entity: sensor.audi_sq7_mileage
          style: {color: white, left: 90%, top: 95%}

        - type: custom:circle-sensor-card
          entity: sensor.audi_sq7_tank_level
          max: 100
          min: 0
          stroke_width: 15
          gradient: true
          fill: '#aaaaaabb'
          name: tank
          units: ' '
          font_style:
            font-size: 1.0em
            font-color: white
            text-shadow: '1px 1px black'
          style:
            top: 5%
            left: 80%
            width: 4em
            height: 4em
            transform: none

        - type: custom:circle-sensor-card
          entity: sensor.audi_sq7_range
          max: 630
          min: 0
          stroke_width: 15
          gradient: true
          fill: '#aaaaaabb'
          name: range
          units: ' '
          font_style:
            font-size: 1.0em
            font-color: white
            text-shadow: '1px 1px black'
          style:
            top: 5%
            left: 5%
            width: 4em
            height: 4em
            transform: none

audi_connect_ha's People

Contributors

actions-user avatar albatorsk avatar alphatangoalpha avatar andersop91 avatar arjenvrh avatar arnerek avatar cdnninja avatar coreywillwhat avatar dependabot[bot] avatar dfigus avatar divingup avatar gllmlbrt avatar hwikene avatar ibielopolskyi avatar ileodo avatar kolbi avatar pre-commit-ci[bot] avatar racailloux avatar reisfni avatar rklomp avatar samkirsch10 avatar sberkovitz avatar smau avatar svenc81 avatar t0bias-r avatar timpearce avatar titiviking avatar vbrolin avatar victorkp avatar viper5000 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

audi_connect_ha's Issues

Request to expose audi_services.set_battery_charger to Home Assistant

I noticed there is the code for set_battery_charger in audi_services.py that wasn't exposed as an action to Home Assistant. Being able to control when our car charges is a big win over the simple scheduling offered by Audi and opens the possibility of charging...

  • when time of use electricity rates are low
  • outside grid peak demand periods
  • when local solar production has excess

The good news is that I can confirm the api call to both start and stop charging works on our A3 Etron after coding up start_charging / stop_charging actions using start_climatisation as a template. is this something you are planning to add in a future update, or would you be agreeable for me to issue a Pull request with my changes.

Regards,
Iain

Door & window sensors returning incorrect status

Hello. I have an issue where some of the binary sensors for the doors and windows return incorrect values.

Vehicle is a 2018 S5 Coupé (UK) - 3 door.
The integration is added via HACS with the correct username, password & SPIN. The integration creates 1 device and 20 entities.
All functions and statuses report correctly within the myAudi App.

The Lock/Unlock via the integration created lock entity perform correctly and the system updates the 'Last Updated' sensor to the present date and time*. The mileage, range, oil level, service intervals, location, etc. all update with the correct values.

xxx represents the vehicle registration.

binary_sensor.xxx.doors_lock shows 'unlocked' and does not update irrespective of the state of the door locks - myAudi updates successfully (see note below). Changing the status of the actual door lock via the key, MyAudi App or HA lock function does not change this state.
binary_sensor.xxx_trunk_lock - changes status with the locking state of the car.

binary_sensor.xxx_doors shows 'open' even when doors are closed. App shows closed.
binary_sensor.xxx_windows shows 'open' even when Windows are closed. App shows closed.
binary_sensor.xxx_trunk - changes status with the opening of any door or trunk.

*sensor.xxx_last_update updates to the actual last updated date and time but then defaults back to 0002-11-29 23:00:00 within 5 minutes.

Many thanks for your help

Edit: Remove personal data

First Install Not Seeing Sensors

I live in North America, I see that you say we need a region but dont give an example, I tried using region: na but I am not seeing any sensors, also not seeing any errors in the log, what's the best way to trouble shoot this?

device tracker: source_type: null

ok, installed this component, all was working fine, i had a device tracker
now after a restart, all sensors are OK, but seems the device tracker = source_type: null

so doesnt update anymore?

i see n log files this : 2019-08-23 17:43:39 ERROR (MainThread) [custom_components.audiconnect.audi_connect_account] Expecting value: line 1 column 1 (char 0)

not sure if its related?

Getting information from Audi fails, just 2 entities created

I connected to myAudi account, but it only generated 2 entities (Car model and lock). Locking/unlocking fails, refreshing the data fails as well. Log entries:

2020-10-27 09:15:43 ERROR (MainThread) [custom_components.audiconnect.util] Unable to refresh vehicle data of <vinsnipped>: 403, message='Forbidden', url=URL('https://msg.volkswagen.de/fs-car/bs/vsr/v1/Audi/DE/vehicles/<vinsnipped>/requests')
2020-10-27 09:15:43 ERROR (MainThread) [custom_components.audiconnect.audi_account] Error refreshing vehicle data <vinsnipped> NoneType: None

charging power and charging rate not updated

charging power and charging rate status remain unavailable when the car is plugged in. However when I restart HA (and the car is charging) the status of the charging power and charging rate is updated.

I didn't look into the code yet, but it appears that you need to fetch charging power and charging rate when the "charging state" has changed to "charging".

Any idea how this can be improved?

Unable to Unlock/Lock Car

First off great project, its working almost perfectly for me.

When I attempt a lock/unlock I am getting an error in the Home Assistant Log:

Logger: custom_components.audiconnect.util
Source: custom_components/audiconnect/util.py:25
First occurred: 1:55:31 PM (1 occurrences)
Last logged: 1:55:31 PM

Unable to unlock wauzzzXX: 403, message='Forbidden', url='https://mal-1a.prd.ece.vwg-connect.com/api/rolesrights/authorization/v2/security-pin-auth-completed

It happens each time I unlock/lock from home assistant, and the car does not lock/unlock.

I can lock unlock from the myAudi App, and everything else is working fine.

I have also entered S-PIN in my setup which I guess is what is providing the lock operation.

Hope this helps!

Thanks

Report charging kW

Hi,

I like the integration, but would it be possible to get actual kW charging information, like in the app?

Regards,

jasper

GPS position shows not_home

I have integrated Audi connect into HA without a problem. Thanks for that.
I noticed a glitch that the car device tracker device_tracker.audi_* is showing not_home. I think this is because the coordinates have to be in a format. In configuration.yaml I have for instance latitude: 52.4 but in the device tracker I see latitude: 524xxxxx without the dot. Can you please convert the latitude and longitude?

BTW: Can more attributes like the gas percentage be also added?

Thanks,
Daniel

Last update time confused me

Hi!
My last update time is correct in case of car connection, if the car is parking the time change to "0002-11-28 00:00:00", after driving it is correct again till parking.
Is there a way to display the last updatet time all the time?

Unbenannt

Change scan_interval

Not really an issue, but I was wondering two things?

  • Is it possible to change the "scan_interval" setting after a successful installation?
  • Is it possible to change the heater timer? Now it seems to default to 10 minutes

Login failed (DE)

Hello,

this week I started to have an issue with login:

Login to Audi service failed: 403, message='Forbidden', url=URL('https://app-api.my.audi.com/myaudiappidk/v1/token')

It is not possible to login to myaudi account. I have tried to remove the integration and fill in login credentials again but now it I get message: Invalid credentials

I am able to log in to my audi account on address: my.audi.com without any issue.

2018 S5 vehicle info not supported?

I'm trying to use this component with my 2018 Audi S5 and it looks like none of the attributes are supported:

2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] Setting up dashboard with config :{}
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Position (Position:position) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Last Update (Sensor:last_update_time) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Mileage (Sensor:mileage) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Range (Sensor:range) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Service inspection time (Sensor:service_inspection_time) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Service inspection distance (Sensor:service_inspection_distance) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Oil change time (Sensor:oil_change_time) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Oil change distance (Sensor:oil_change_distance) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Oil level (Sensor:oil_level) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Charging state (Sensor:charging_state) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Max charge current (Sensor:max_charge_current) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Engine 1 (Sensor:engine_type1) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Engine 2 (Sensor:engine_type2) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Parking light (BinarySensor:parking_light) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Windows (BinarySensor:any_window_open) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Doors (BinarySensor:any_door_unlocked) is not supported
2019-05-27 08:38:07 DEBUG (MainThread) [custom_components.audiconnect.dashboard] <VIN> Trunk (BinarySensor:trunk_unlocked) is not supported

I don't have an active Audi Connect subscription, but those items became free last year and I can see those items in the MyAudi app. Is an Audi Connect subscription required to use this API?

Unable to import component

Just updated using HACS this morning and I am getting this error:

2020-01-22 10:22:42 ERROR (MainThread) [homeassistant.setup] Setup failed for audiconnect: Unable to import component

I have tried reverting back to a backup and it works. I have also tried a clean install (deleted directory manually) but nothing changes.

AudioLock and AudiSensor deprecated

Got these after upgrade to supervisor224 and hassio 0.110.2.:

Protokolldetails ( WARNING )
Logger: homeassistant.components.lock
Source: components/lock/init.py:72
Integration: Schloss (documentation, issues)
First occurred: 15:02:33 (1 occurrences)
Last logged: 15:02:33

LockDevice is deprecated, modify AudiLock to extend LockEntity
Verbindung getrennt. Verbinde erneut...

Protokolldetails ( WARNING )
Logger: homeassistant.components.binary_sensor
Source: components/binary_sensor/init.py:139
Integration: Binärsensor (documentation, issues)
First occurred: 15:02:33 (1 occurrences)
Last logged: 15:02:33

BinarySensorDevice is deprecated, modify AudiSensor to extend BinarySensorEntity

  • translations but there is already an opene issue

Invalid literal for int error

Unable to control car. Have spin with setup and was working before. This started a few days ago. Tried removing and reinstalling the integration as well.

Error code:

Unable to unlock : invalid literal for int() with base 16: 'R5'
Unable to update vehicle data of : Timeout error

Thanks!

Traceback with wrong login credentials

If I use the wrong login credentials, I get this traceback:

2019-05-27 08:08:31 INFO (MainThread) [homeassistant.setup] Setting up audiconnect
2019-05-27 08:08:32 ERROR (MainThread) [homeassistant.setup] Error during setup of component audiconnect
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/homeassistant/setup.py", line 153, in _async_setup_component
    hass, processed_config)
  File "/config/custom_components/audiconnect/__init__.py", line 101, in async_setup
    password=config[DOMAIN].get(CONF_PASSWORD))
  File "/config/custom_components/audiconnect/audi_connect_account.py", line 30, in __init__
    self.logon_service.login(username, password)
  File "/config/deps/lib/python3.7/site-packages/audiapi/Services.py", line 190, in login
    token = self.__login_request(user, password)
  File "/config/deps/lib/python3.7/site-packages/audiapi/Services.py", line 220, in __login_request
    reply = self._api.post(self.url('/token'), data, use_json=False)
  File "/config/deps/lib/python3.7/site-packages/audiapi/API.py", line 62, in post
    return self.__handle_error(r.json())
  File "/config/deps/lib/python3.7/site-packages/audiapi/API.py", line 68, in __handle_error
    raise Exception('API error: ' + str(error) + '\n' + error_msg)
Exception: API error: invalid_grant
Bitte überprüfen Sie Ihre eingegebenen Daten.

Doesn't happen with the correct credentials, but the exception should be caught.

audiconnect.execute_vehicle_action

Hey Arjen,

Sending along a VIN number when sending data isn't working for me.
So far I have this, which should be valid.

{ "action": "call_service", "service": "audiconnect.execute_vehicle_action", "action": "unlock" }

How can i send along the VIN number?

Kind regards,
Track

Password change or PIN change

Great feature!! Good work.
How can I change my password or PIN. The only way I found so far is te remove the integration, restart homeassistant and then reinstall integration. Is it possible to configure the username and password somewere so you can change it in an easy way? Or is it possible to start the dialog to enter the username and password and etc.

cardbackK.png

Would you mind saving a copy of the cardbackK.png file used in your Lovelace example somewhere please?
Thanks.

Support folding top (convertible)

Thank you very much for this integration. I did start my own, but didn't finish it to this level because of busy working days :(

Would it be possible to add support for the state of the folding top? I have only a german account, but it is available in webview and in the app:

image

Translations warnings since 109.0

i have a lot ot translation warnings since 109.x , i think an update is needed ....

020-04-29 19:14:31 WARNING (MainThread) [homeassistant.helpers.translation] audiconnect: the '.translations' directory has been moved, the new name is 'translations', starting with Home Assistant 0.111 your translations will no longer load if you do not move/rename this 
2020-04-29 19:14:31 WARNING (MainThread) [homeassistant.helpers.translation] audiconnect: the '.translations' directory has been moved, the new name is 'translations', starting with Home Assistant 0.111 your translations will no longer load if you do not move/rename this 
2020-04-29 19:14:31 WARNING (MainThread) [homeassistant.helpers.translation] audiconnect: the '.translations' directory has been moved, the new name is 'translations', starting with Home Assistant 0.111 your translations will no longer load if you do not move/rename this 
2020-04-29 19:14:31 WARNING (MainThread) [homeassistant.helpers.translation] esxi_stats: the '.translations' directory has been moved, the new name is 'translations', starting with Home Assistant 0.111 your translations will no longer load if you do not move/rename this 
2020-04-29 19:14:31 WARNING (MainThread) [homeassistant.helpers.translation] esxi_stats: the '.translations' directory has been moved, the new name is 'translations', starting with Home Assistant 0.111 your translations will no longer load if you do not move/rename this 
2020-04-29 19:14:31 WARNING (MainThread) [homeassistant.helpers.translation] audiconnect: the '.translations' directory has been moved, the new name is 'translations', starting with Home Assistant 0.111 your translations will no longer load if you do not move/rename this 
2020-04-29 19:14:31 WARNING (MainThread) [homeassistant.helpers.translation] audiconnect: the '.translations' directory has been moved, the new name is 'translations', starting with Home Assistant 0.111 your translations will no longer load if you do not move/rename this 
2020-04-29 19:14:31 WARNING (MainThread) [homeassistant.helpers.translation] audiconnect: the '.translations' directory has been moved, the new name is 'translations', starting with Home Assistant 0.111 your translations will no longer load if you do not move/rename this

Questions regarding interval config

Hi, really like this component and it works perfectly. I used default refresh interval at setup but would like to change it now. Is there a way to do so? Ideally I modify it dynamically or use the refresh service triggered by an external event (I failled to get the right syntax since I guess I am too newbie), i undertand something with VIN is missing...

type: button
tap_action:
action: call-service
service: audiconnect.refresh_vehicle_data
hold_action:
action: more-info
show_icon: true
show_name: false
entity: input_boolean.get_car_update

Only showing 1 entity (name, model of the car)

Hi team, just installed Audi connect on a brand new Home Assistant installation. The Audi connect integration finds only 1 entity (name, model etc). I have another raspberrypi with home assistant and there all works well and I see 21 entities. Any idea what i'm doing wrong?

Log Details (WARNING)
Logger: homeassistant.helpers.entity
Source: helpers/entity.py:443
First occurred: 1:42:31 AM (1 occurrences)
Last logged: 1:42:31 AM

Entity sensor.audi_a6_avant_model is incorrectly being triggered for updates while it is disabled. This is a bug in the audiconnect integration.

No informations for e-tron

Hey,
I have a SQ7 and everthing is fine, but the only information I get for the etron 2021 is the vehicle type.
I don't get any information about battery status, windows, etc.

Any ideas?

Thanks

Unable to import component: No module named 'bs4'

I just wanted to add the updated integration (thanks a lot!) to Home Assistant, but I get the following error after restarting Home Assistant:

[homeassistant.setup] Setup failed for audiconnect: Unable to import component: No module named 'bs4'

When trying to add the integration using the Home Assistant GUI it says

[homeassistant.config_entries] Error occurred loading configuration flow for integration audiconnect: No module named 'bs4'

Thanks

Climatisation still won't start

Hi Arjen,

Unfortunately, climatisation still does not start. HA logs the following message:

Unable to start climatisation of [vin]: 400, message='Bad Request', url='https://msg.volkswagen.de/fs-car/bs/climatisation/v1/Audi/DE/vehicles/[vin]/climater/actions
(I replaced the VIN number with [vin])

Thomas

CHange from Km to Miles?

Just got this setup and dialed in (way awesome by the way), is there anyway to change it to deliver Miles and such instead of metric units?

Suspecting that timeout during refresh_vehicle_data incorrectly returns success.

Hello,

I added debug logging and also added a loggning during requestStatus to see what answers we get.
This because i have issues with my car updating, this is an Audi issue, but when this happens i think that the code gets a success when a timeout really happens.
This is an example log.
2020-03-10 10:56:39 DEBUG (MainThread) [custom_components.audiconnect.audi_connect_account] Sending command to refresh data to vehicle <DELETED> 2020-03-10 10:56:50 DEBUG (MainThread) [custom_components.audiconnect.audi_services] {'requestStatusResponse': {'vin': '<DELETED>', 'status': 'request_in_progress'}} 2020-03-10 10:57:01 DEBUG (MainThread) [custom_components.audiconnect.audi_services] {'requestStatusResponse': {'vin': '<DELETED>', 'status': 'request_in_progress'}} 2020-03-10 10:57:11 DEBUG (MainThread) [custom_components.audiconnect.audi_services] {'requestStatusResponse': {'vin': '<DELETED>', 'status': 'request_in_progress'}} 2020-03-10 10:57:21 DEBUG (MainThread) [custom_components.audiconnect.audi_services] {'requestStatusResponse': {'vin': '<DELETED>', 'status': 'request_in_progress'}} 2020-03-10 10:57:32 DEBUG (MainThread) [custom_components.audiconnect.audi_services] {'requestStatusResponse': {'vin': '<DELETED>', 'status': 'request_in_progress'}} 2020-03-10 10:57:43 DEBUG (MainThread) [custom_components.audiconnect.audi_services] {'requestStatusResponse': {'vin': '<DELETED>', 'status': 'request_in_progress'}} 2020-03-10 10:57:54 DEBUG (MainThread) [custom_components.audiconnect.audi_services] {'requestStatusResponse': {'vin': '<DELETED>', 'status': 'request_in_progress'}} 2020-03-10 10:58:04 DEBUG (MainThread) [custom_components.audiconnect.audi_services] {'requestStatusResponse': {'vin': '<DELETED>', 'status': 'request_in_progress'}} 2020-03-10 10:58:15 DEBUG (MainThread) [custom_components.audiconnect.audi_services] {'requestStatusResponse': {'vin': '<DELETED>', 'status': 'request_in_progress'}} 2020-03-10 10:58:26 DEBUG (MainThread) [custom_components.audiconnect.audi_services] {'requestStatusResponse': {'vin': '<DELETED>', 'status': 'request_in_progress'}} 2020-03-10 10:58:26 DEBUG (MainThread) [custom_components.audiconnect.audi_connect_account] Successfully refreshed data of vehicle <DELETED> 2020-03-10 10:58:39 DEBUG (MainThread) [custom_components.audiconnect.audi_connect_account] Sending command to refresh data to vehicle <DELETED> 2020-03-10 10:58:54 DEBUG (MainThread) [custom_components.audiconnect.audi_services] {'requestStatusResponse': {'vin': '<DELETED>', 'status': 'request_in_progress'}} 2020-03-10 10:59:04 DEBUG (MainThread) [custom_components.audiconnect.audi_services] {'requestStatusResponse': {'vin': '<DELETED>', 'status': 'request_successful'}} 2020-03-10 10:59:04 DEBUG (MainThread) [custom_components.audiconnect.audi_connect_account] Successfully refreshed data of vehicle <DELETED>

As you see the first try never gets a 'request_successful' but still says it does.

BTW. Thank you for the great work. I have bought you a beer :)

Skoda / VolksWagen support

Thanks for great component!

Sad that it does not support my Skoda.

I did looked into it a bit, seems that Skoda implementation is very similar. It has a bit different login procedure but not much more than that.

Example of universal implementation of similar component (which partly works for my car): https://github.com/TA2k/ioBroker.vw-connect/blob/master/main.js

Would you like to change implementation into something more generic? I.e. remove audi_ from file names and add ability to change some services based on vendor.
I might be able to help with Skoda specifics.

Doesn't work anymore. 'Unauthorized'

It seems Audi has changes something and now it doesn't work anymore:

2020-05-18 08:25:35 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/config/custom_components/audiconnect/audi_account.py", line 158, in update
    if not await self.connection.update(None):
  File "/config/custom_components/audiconnect/audi_connect_account.py", line 105, in update
    vehicles_response = await self._audi_service.get_vehicle_information()
  File "/config/custom_components/audiconnect/audi_services.py", line 129, in get_vehicle_information
    "https://msg.audi.de/myaudi/vehicle-management/v1/vehicles"
  File "/config/custom_components/audiconnect/audi_api.py", line 54, in get
    r = await self.request(METH_GET, url, data=None, headers=self.__get_headers())
  File "/config/custom_components/audiconnect/audi_api.py", line 46, in request
    message=response.reason,
aiohttp.client_exceptions.ClientResponseError: 401, message='Unauthorized', url='https://msg.audi.de/myaudi/vehicle-management/v1/vehicles

Initialize problem

Initialize problem since update to HA 103.0
2019-12-13 19:22:01 ERROR (MainThread) [custom_components.audiconnect.audi_connect_account] 502, message='Bad Gateway', url='https://msg.audi.de/fs-car/core/auth/v1/Audi/DE/token 2019-12-13 19:22:11 ERROR (MainThread) [homeassistant.setup] Setup failed for audiconnect: Integration failed to initialize.

Errors after upgrade

With the new upgrade I get a lot of errors in my log. It also seems to lock up Hassio when the occur (I edited out some potentially sensitive data):

Error saving event: <Event audiconnect_refresh_vehicle_data_completed[L]: vin=EDITED> 18:36 components/recorder/__init__.py (ERROR)

Error executing query: (MySQLdb._exceptions.DataError) (1406, "Data too long for column 'event_type' at row 1") [SQL: INSERT INTO events (event_type, event_data, origin, time_fired, created, context_id, context_user_id) VALUES (%s, %s, %s, %s, %s, %s, %s)] [parameters: ('audiconnect_refresh_vehicle_data_completed', '{"vin": "EDITED"}', 'LOCAL', datetime.datetime(2019, 8, 13, 16, 36, 7, 656247, tzinfo=<UTC>), datetime.datetime(2019, 8, 13, 16, 36, 7, 738772), 'EDITED', None)] (Background on this error at: http://sqlalche.me/e/9h9h) 18:36 components/recorder/util.py (ERROR)

Unhandled exception 18:36 /usr/local/lib/python3.7/site-packages/aiohttp/web_protocol.py (ERROR) - message first occured at 18:36 and shows up 3 times

websocket connection is closing. 18:36 components/websocket_api/http.py (WARNING)

Ignoring data because we're disconnected! 18:36 __main__.py (WARNING)

Got empty response. We think it's disconnect. 18:36 __main__.py (WARNING) - message first occured at 18:31 and shows up 2 times

Got exception: 0 bytes read on a total of None expected bytes. Most likely the other side has disconnected! 18:36 __main__.py (WARNING) - message first occured at 18:31 and shows up 2 times

API error: {'errorCode': 'gw.error.timeout', 'description': 'Backend Connection Timeout'} 18:36 custom_components/audiconnect/audi_connect_account.py (ERROR) - message first occured at 18:31 and shows up 2 times

Login has changed after maintenance (no longer works)

It would seem that Audi has changed the login over the last maintenance period, and the integration is no longer able to login.

Log Details (ERROR)
Logger: custom_components.audiconnect.audi_connect_account
Source: custom_components/audiconnect/audi_connect_account.py:93
Integration: Audi Connect (documentation)
First occurred: August 10, 2020, 8:19:13 AM (777 occurrences)
Last logged: 6:35:25 AM

Login to Audi service failed, trying again in 10 seconds
Login to Audi service failed: 400, message='', url='https://id.audi.com/v1/token

Everything was fine with my car yesterday, but today after the maintenance I can no longer login, incidentally when I attempt to login via myAudi, the login is different and after the maintenance the existing session was logged out, with a session expired message.

I guess that is what is causing this on login attempts.

audi connect

Up until today, it has worked flawlessly for me, (albeit with trouble caused only by me!)

Hope this helps

Shunts...

Issue: Getting auth failures after recent update to fix auth failures. :)

Looks like the recent update to fix logging into Audi Connect for non-US(?) users (#40) broke my ability to login to Audi Connect. Up until this latest update, everything was working fine.

I applied the update via HACS, restarted HA and the integration failed to pull any information for my car. I deleted the integration for HA and deleted this component from HACS then re-installed it fresh via HACS. Restarted HA and then went to add the integration back to HA. I filled in all the info, hit submit and then received an auth failure message.

I reverted back to the b85121a commit from May 26, 2020 by manually removing the latest version HASC installed in the custom_components folder and copying b85121a files in place. Reboot HA and then re-added the integration in HA and this time after submitting my information it worked. No auth issues and my status card for my car is showing information once again.

Integration Stopped working

Hi

Is anyone getting the same problem, it looks like this has stopped working for me.

Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/config_entries.py", line 220, in async_setup hass, self File "/config/custom_components/audiconnect/__init__.py", line 106, in async_setup_entry return await data.update(utcnow()) File "/config/custom_components/audiconnect/audi_account.py", line 158, in update if not await self.connection.update(None): File "/config/custom_components/audiconnect/audi_connect_account.py", line 105, in update vehicles_response = await self._audi_service.get_vehicle_information() File "/config/custom_components/audiconnect/audi_services.py", line 125, in get_vehicle_information "https://msg.audi.de/myaudi/vehicle-management/v1/vehicles" File "/config/custom_components/audiconnect/audi_api.py", line 54, in get r = await self.request(METH_GET, url, data=None, headers=self.__get_headers()) File "/config/custom_components/audiconnect/audi_api.py", line 46, in request message=response.reason, aiohttp.client_exceptions.ClientResponseError: 502, message='Bad Gateway', url='https://msg.audi.de/myaudi/vehicle-management/v1/vehicles

This is all that I am getting in the logs.

I removed and reinstalled the integration but it still fails, working perfectly up until today, my Audi is still working fine though.

Thanks

Unable to Un/Lock car from Hassio

Whenever i hit the Un/Lock button it doesn't work and the logs show 2020-04-17 17:01:09 ERROR (MainThread) [custom_components.audiconnect.util] Unable to unlock "{secret vinn number}": invalid literal for int() with base 16: 'wa'

Home Assistant Depreciated Services

With the latest update I am getting these entries in the Log:

Logger: homeassistant.components.binary_sensor
Source: components/binary_sensor/init.py:139
Integration: Binary Sensor (documentation, issues)
First occurred: 17:08:00 (1 occurrences)
Last logged: 17:08:00

BinarySensorDevice is deprecated, modify AudiSensor to extend BinarySensorEntity

WARNING (MainThread) [homeassistant.components.lock] LockDevice is deprecated, modify AudiLock to extend LockEntity

Any ideas how to resolve? - it seems to be working for now!

Thanks

Error messages: batterycharge, carfinder, and statusreport not found

Hi,
trying to get audi_connect to work - but get the error messages shown below.
My A3 is connected to "my audi" and I can track location data etc. using the audi app - so the connection is available.

My setup is
hass.io: 0.94.3
audi_connect_ha: all files updates as pr. today

configuration.yaml:
(have tried without "region", with EU, with DA, and DK - no difference - and yes, I checked my VIN number a zillion times).

Any suggestions what could be the problem?

Regards,
Chr.

audiconnect:
  username: '[not_published_here]'
  password: '[not_published_here]'
  region: EU
  scan_interval:
    minutes: 2
  name:
    [not_published_here]: 'Audi A3'
API error: {'errorCode': 'batterycharge.bs.entitynotfound', 'description': "entity '[not_published_here]' not found."}
7:57 PM custom_components/audiconnect/audi_connect_account.py (ERROR) - message first occured at 7:55 PM and shows up 2 times
API error: {'errorCode': 'CF.security.9007', 'description': 'The service: carfinder_v1 for VIN: [not_published_here] could not be found.'}
7:57 PM custom_components/audiconnect/audi_connect_account.py (ERROR) - message first occured at 7:55 PM and shows up 2 times
API error: {'errorCode': 'VSR.security.9007', 'description': 'The service: statusreport_v1 for VIN: [not_published_here] could not be found.'}
7:57 PM custom_components/audiconnect/audi_connect_account.py (ERROR) - message first occured at 7:55 PM and shows up 2 times

problem of integration

Hi,
I have HASSIO 0.117.2; I installed this integration using HCAS, but now I don't it in HACS and if I go to:

Configuration->Integrations, click + and search for Audi Connect

I don't found anything...

you can help me?

Tank Level

Hello,

the Tank level is stuck to 100%. All the other sensor is working fine.

Thanks!

Login Failing "Invalid Credentials"

Hello
It seems that something isn't working again:

halogin

It stopped working this afternoon.

I can login with the Audi App on my phone, but not Home Assistant.

I had removed and reinstalled the integration before all my entities were unavailable up until I reinstalled it, now I cannot log in.

I think it may be something to do with home assistant generally though because at the same time my colleagues BMW connected drive has started doing the exact same thing. Could it be some kind of authentication error globally on Home Assistant?

home-assistant/core#42139

I don't seem to be able to get the logs from my HA to be able to post them, from earlier.

Thanks

Shunts...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.