BMW ConnectedDrive component

There’s an option for it in my 2019 iDrive. Mine has always been enabled, but tracking has been lost since updating. Must remember this is in beta…

Yup I have all enabled as well in idrive as well and worked ok until the update

I just pressed every button in the MyBMW app and I can’t see anything. I don’t think it’s us.

I don’t think this is BMW app settings driven. I can get location data from bimmerconnected fingerprint. These data are anonymized, so mean nothing, but technically latitude and longitude seems returned:

"vehicleLocation": {
        "address": {
          "formatted": "some_formatted_address"
        },
        "coordinates": {
          "latitude": 12.3456,
          "longitude": 34.5678
        },
        "heading": 123

I think is a bug as in the fingerprint of my F36, the flag has been introduced in the code is set to true but no location is retrieved

Looks like the issue is fixed in the latest beta.

Any idea when we’ll be able to update through HA and fix these issues? I keep checking HA for the update, but it just shows it’s broken and no update available.

It’s an integration with HA core, so the soonest will be with the next HA core release.

Now :slight_smile: ==> core-2021.12.2 is available and fixes the issue

FFS… again!?

I’m fully up to date…


Logger: homeassistant.components.bmw_connected_drive
Source: components/bmw_connected_drive/__init__.py:324
Integration: BMW Connected Drive (documentation, issues)
First occurred: 11:30:41 (4 occurrences)
Last logged: 11:45:41

401 Client Error: Unauthorized for url: https://customer.bmwgroup.com/gcdm/oauth/authenticate
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/bmw_connected_drive/__init__.py", line 324, in update
    self.account.update_vehicle_states()
  File "/usr/local/lib/python3.9/site-packages/bimmer_connected/account.py", line 415, in update_vehicle_states
    self._get_vehicles()
  File "/usr/local/lib/python3.9/site-packages/bimmer_connected/account.py", line 376, in _get_vehicles
    self._get_oauth_token()
  File "/usr/local/lib/python3.9/site-packages/bimmer_connected/account.py", line 108, in _get_oauth_token
    raise ex
  File "/usr/local/lib/python3.9/site-packages/bimmer_connected/account.py", line 94, in _get_oauth_token
    token_data = self._login_row_na()
  File "/usr/local/lib/python3.9/site-packages/bimmer_connected/account.py", line 220, in _login_row_na
    raise ex
  File "/usr/local/lib/python3.9/site-packages/bimmer_connected/account.py", line 170, in _login_row_na
    response.raise_for_status()
  File "/usr/local/lib/python3.9/site-packages/requests/models.py", line 953, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 401 Client Error: Unauthorized for url: https://customer.bmwgroup.com/gcdm/oauth/authenticate

Happened to me as well this morning. Turned out BMW services were down for a moment, so a restart of HA one hour later solved the problem

After update to 2012.12 it worked again… but now after going to 2012.12.7 it’s broken again…?

Retrying setup: 401 Client Error: Unauthorized for url: https://customer.bmwgroup.com/gcdm/oauth/authenticate

Logger: bimmer_connected.account
Source: /usr/local/lib/python3.9/site-packages/bimmer_connected/account.py:107
First occurred: 19:53:19 (6 occurrences)
Last logged: 19:56:50

401 Client Error: Unauthorized for url: https://customer.bmwgroup.com/gcdm/oauth/authenticate
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/bimmer_connected/account.py", line 94, in _get_oauth_token
    token_data = self._login_row_na()
  File "/usr/local/lib/python3.9/site-packages/bimmer_connected/account.py", line 220, in _login_row_na
    raise ex
  File "/usr/local/lib/python3.9/site-packages/bimmer_connected/account.py", line 170, in _login_row_na
    response.raise_for_status()
  File "/usr/local/lib/python3.9/site-packages/requests/models.py", line 953, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 401 Client Error: Unauthorized for url: https://customer.bmwgroup.com/gcdm/oauth/authenticate
Logger: bimmer_connected.account
Source: /usr/local/lib/python3.9/site-packages/bimmer_connected/account.py:217
First occurred: 19:53:19 (6 occurrences)
Last logged: 19:56:50

Authentication failed (invalid_client): Client authentication failed (e.g., login failure, unknown client, no client authentication included or unsupported authentication method)

Hi,

How do I post a feature request for the BMW ConnectedDrive component? When trying via Github Im just redirected to the HomeAssistant main feature request page.

Hope its ok to post it here:
With the soaring electricityprices, at least in europe, Im getting increasingly interested in doing some smarter charging on my BMW when prices are low. They usually are at night but the exact hours differ, depending on a lot of variables.
In HomeAssistant I have information on the tarifs at each hour 24hours ahead of time. In code I can identify the hours where cheap charging can be done.
Now I miss the last piece of the puzzle: Being able to inform my BMW to start charging. I can sort of do this by setting chargewindows within the MyBMW app, so I was wondering if the BMW ConnectedDrive component could do the same. That way we could inform the car to start charging now+n hours. After the set charing duration finishes, the component should remove the charge schedule to avoid it starting automatically next time.

I understand that I can buy a charger that has this integration with Home Assistant, but its considerably more expensive compared to one that will just charge whenever the car decides to allow it.

If this is not the place to put this, please feel free to delete or point me in the right direction.

Thanks.

2 Likes

I have an general question about the component:
Is it correct that data from car isn’t synced with BMW servers while car is moving?
I have problems to read the actual data on my phone while I’m on the road. The device tracker doesn’t update and the values (SoC, remaining range, …) are not correct until car is parked at home again.

Yes, that is correct as far as I was told by bmw customer care.

1 Like

If you are using the EVSE that came with the car just add a smart plug and control when to charge the car through the smart plug. No control of the power amount, but at least you control on/off.

Im already planning on something like that. (Shelly 3EM and a quality contactor) but since thats expensive, and the functionality is already in our cars, I prefer using that instead.

Hi all, updated to HA 2021.12.7 today and now the BMW component fails to start with the following error:

Logger: homeassistant.setup
Source: setup.py:153
First occurred: 17:16:28 (1 occurrences)
Last logged: 17:16:28
Setup failed for bmw_connected_drive: Unable to import component: cannot import name 'ConnectedDriveAccount' from 'bimmer_connected.account' (/usr/local/lib/python3.9/site-packages/bimmer_connected/account.py)

Any ideas?

Hello everyone I would like to know how to get the street, the house number and the city where the car is at the moment from BMW connected, i.e. its positioning currently I only get the latitude and longitude coordinates could you help me?
Since this application I am also using it for a latest generation mini cooper S, I wanted to know if you can obtain the opening of the left or right door or the boot etc in a distinct way. I ask this because this happens on the mini connected application. thank you all

You can use the device tracker entity and “places” integration (GitHub - custom-components/places: Component to integrate with OpenStreetMap Reverse Geocode (PLACE)), but only if car stands still! BMW api doesn’t send data while car is moving!