BMW ConnectedDrive component

image

doesn’t matter if I’m using " oder ’ - same error

any way to get more output than the 404 reply so i can specify whats going on there?

I have checked this with @irnqnet offline and it’s showing data (partly) when using
bmwcdapi.py -p.

Will do some extra checks what is causing the 404 in the script and release an updated version.

In the meanwhile of I have changed the script on Github so it contains some more information on what data to enter in the fields including some examples, where you have to replace the None parts with your data as shown in the examples in those lines.

# ----=================================================----
# Enter the data below to be able to login
# Your BMW ConnectedDrive username
USERNAME = None     # "[email protected]"

# Your BMW ConnectedDrive password
PASSWORD = None     # "your_password"

# 17!! chars Vehicle Identification Number (VIN) of the car, can be found in the app or on BMW ConnectedDrive online
VIN = None          # "vin_code"

# This is the URL you use to login to BMW ConnectedDrive, e.g. www.bmw-connecteddrive.nl or www.bmw-connecteddrive.de
URL = None          # "www.bmw-connecteddrive.nl"
# ----=================================================----

Useful hints right now:

the values for username, password, VIN and URL have to be included in " " or ’ ’

For registering my car in the german version of the BMW connected app I have to use the last 7 digits of my VIN. To use this script it is necessary to use the whole VIN (in my case 17 digits)

This is how the Volvo On Call looks like:

1 Like

Thanks for posting the script. Here’s the output.

...running bmwcdapi.py
--------------START CAR DATA--------------
DCS_CCH_Activation: None
DCS_CCH_Ongoing : None
gps_lat: 50.000000
gps_lng: 8.000000
head_unit: EntryNav
head_unit_pu_software: 11/15
lastUpdateReason: Error
unitOfCombustionConsumption: l/100km
unitOfElectricConsumption: kWh/100km
unitOfEnergy: kWh
unitOfLength: km
vehicle_tracking: 1
--------------END CAR DATA--------------
--------------START CAR NAV--------------
auxPowerEcoPro: 1.0
auxPowerEcoProPlus: 1.0
auxPowerRegular: 1.0
isoCountryCode: DEU
latitude: 50.000000
longitude: 8.000000
pendingUpdate: False
soc: 0.0
socMax: 17.84
vehicleTracking: True
--------------END CAR NAV--------------
--------------START CAR EFFICIENCY--------------
characteristicList: [{'characteristic': 'CONSUMPTION', 'quantity': 0}, {'characteristic': 'DRIVING_MODE', 'quantity': 0}, {'characteristic': 'CHARGING_BEHAVIOUR', 'quantity': 0}, {'characteristic': 'ELECTRIC_DRIVING', 'quantity': 0}]
efficiencyQuotient: 0
lastTripList: []
lifeTimeList: []
modelType: PHEV
--------------END CAR EFFICIENCY--------------
--------------START CAR SERVICEPARTNER--------------
businessFax: ...

The only useful information I get is the position. Which is nice. But for me the mileage and fuel-stats would be way more interesting. :-/
For reference (since we can’t change what data the API delivers), the exact type of my XY:

  • Model: X1 sDrive18d
  • E-Code: F48
  • Production Code: HT71
  • Manufactured late 2016

I wonder why there is such a difference between so similar (even same model) cars.

Got the same car, at least 2017 model. But the information you will get as result of the script depends on the connected drive subscription you have. Do you have the remote services subscribed in your account?

That are the subscriptions in my account:

result of the script:

...running bmwcdapi.py
--------------START CAR DATA--------------
DCS_CCH_Activation: None
DCS_CCH_Ongoing : None
beRemainingRangeFuel: 762.0
beRemainingRangeFuelKm: 762.0
beRemainingRangeFuelMile: 473.0
check_control_messages: 
condition_based_services: 00001,OK,2019-09,26000;00100,OK,2021-09,60000;00003,OK,2020-09,;00032,OK,2020-11,
door_driver_front: CLOSED
door_driver_rear: CLOSED
door_lock_state: SECURED
door_passenger_front: CLOSED
door_passenger_rear: CLOSED
gps_lat: 51.xxxx
gps_lng: 6.xxxx
head_unit: EntryEvo
head_unit_pu_software: 07/17
heading: 298
hood_state: CLOSED
kombi_current_remaining_range_fuel: 762
lastUpdateReason: VEHCSHUTDOWN_SECURED
lights_parking: OFF
lsc_trigger: VEHCSHUTDOWN_SECURED
mileage: 3872
remaining_fuel: 51
trunk_state: CLOSED
unitOfCombustionConsumption: l/100km
unitOfElectricConsumption: kWh/100km
unitOfEnergy: kWh
unitOfLength: km
updateTime: 20.01.2018 17:38:35 UTC
updateTime_converted: 20.01.2018 18:38
updateTime_converted_date: 20.01.2018
updateTime_converted_time: 18:38
updateTime_converted_timestamp: 1516473515000
vehicle_tracking: 1
window_driver_front: CLOSED
window_driver_rear: CLOSED
window_passenger_front: CLOSED
window_passenger_rear: CLOSED
--------------END CAR DATA--------------
--------------START CAR EFFICIENCY--------------
characteristicList: [{'characteristic': 'CONSUMPTION', 'quantity': 0}, {'characteristic': 'DRIVING_MODE', 'quantity': 0}, {'characteristic': 'CHARGING_BEHAVIOUR', 'quantity': 0}, {'characteristic': 'ELECTRIC_DRIVING', 'quantity': 0}]
efficiencyQuotient: 0
lastTripList: []
lifeTimeList: []
modelType: PHEV
--------------END CAR EFFICIENCY--------------
--------------START CAR SERVICEPARTNER--------------
businessFax: +49 xxxxxxxx
businessPartnerId: xxxxxxxxx
businessPhone: +49 xxxxxxxx
city: xxxxxxx
country: DE
countryIsoCode: DE
dealerName: xxxxxxxxxxxxxxxxxxxxxx
email: info@xxxxxxxxxxxx
lastChangeDate: 2018-01-20T21:12:29.000+01
partnerNumber: xxxxxxxxxx
portfolioCodes: B1,MI
portfolioNames: BMW Cars,MINI
street: xxxxxxxxxxxxxxxxx
subsidiaryNumber: 1
url: xxxxxxxxxxxxxxxxxxxx
zipCode: xxxxxx
--------------END CAR SERVICEPARTNER--------------
1 Like

These are my services:

I think it may be the BMW Connected+ that’s causing the trouble. Unfortunately, when I try to order the service it says my car is not compatible. Maybe mine has some older hardware installed. :frowning:

Mh might be, but I can’t imagine. Are you able to see more details using the BMW connected app?

https://play.google.com/store/apps/details?id=de.bmw.connected

No, these details are missing there as well. I knew that. I just hoped getting those numbers via this script could do more than the app.

What I have done now is that I have requested the CarData Archive. This seems to take a while. But maybe it has the interesting data as well. Which is rather useless, but nice to know.

I can confirm that I also have Connected+ available for my X1 2017 model. Probably something that changed with the new model which launched in June/July last year.

I did the same this afternoon. Maybe that data get’s visible in the CAR EFFICIENCY part, but we indeed have to wait for an email which will be send when the data is available.

Maybe another reference point: Does IFTTT work for you? For me it doesn’t. If it does for you, then clearly my X1 won’t work because it’s lacking something that’s needed.

No I don’t have IFTTT as it is not available in The Netherlands yet as part of BMW Labs.

Doing further research I more and more think it’s old software that I have.

My iDrive looks like this (although with the popout display like in the second picture):
https://blog.caranddriver.com/wp-content/uploads/2009/07/2011-BMW-X1-iDrive-infotainment-display-626x382.jpg

Whereas there seems to be a newer version available that looks like this:

Kinda disappointing having a car with general connective services, but not being able to make full use of it. :frowning_face:

The 2nd picture is the look a like in my X1, but I’ve got an 3GT before with the old UI (1st pic) and the remote services in the Android App worked the same way. May it depends on the software version of the connected drive controller in the car?

you should ask your local bmw dealer…

Just had a talk with customer service, and for other people that are interested in this:
The Connected+ service requires at least the iDrive software version id5.

Mine is id4++, pretty much the last version that’s not supported. So in case anyone else has trouble, that may be the reason if it’s not working properly.

great to see some work done here!! can’t wait to see some of my bmw’s data in home assistant!
i will try to help with testing as far as i can. i’ll start with posting the outcome of the script:

bmw 520d
01/2016 built
all connected services available are booked

good to see remaining fuel and mileage. but nothing else of importance it seems.
what i’d like to control is the “park heating”, starting time ideally based on “google time to work” and “outside temperature” dream

root@fileserver:~# ./bmwcdapi.py -p
…running bmwcdapi.py
--------------START CAR DATA--------------
DCS_CCH_Activation: None
DCS_CCH_Ongoing : None
condition_based_services: 00032,OK,12.2018,348,;00001,PENDING,12.2018,1800,348,28,24;00100,OK,12.2022,50000,1788,56,48;00003,OK,12.2018,348,24
gps_lat: 48.xxxxx
gps_lng: xxxxxx
head_unit: NBT
head_unit_pu_software: 07/14
lastUpdateReason: Error
mileage: 58641
remaining_fuel: 65
unitOfCombustionConsumption: l/100km
unitOfElectricConsumption: kWh/100km
unitOfEnergy: kWh
unitOfLength: km
vehicle_tracking: 1
--------------END CAR DATA--------------
--------------START CAR NAV--------------
auxPowerEcoPro: 1.0
auxPowerEcoProPlus: 1.0
auxPowerRegular: 1.0
driveTrain: konv_diesel
eco: 9c9,3df,30f,1f2,1c5,209,23d,222,254,286,31b
ecoEv: ffd,ffd,ffd,ffd,ffd,ffd,ffd,ffd,ffd,ffd,ffd
isoCountryCode: AUT
kAccEco: 13300000
kAccReg: 12250000
kDecEco: 31500000
kDecReg: 35000000
kDown: 17500000
kUp: 13300000
latitude: 48.xxxxx
longitude: 16.xxxx
norm: 9c9,3df,30f,1f2,1c5,209,23d,22e,261,294,32c
normEv: ffd,ffd,ffd,ffd,ffd,ffd,ffd,ffd,ffd,ffd,ffd
pendingUpdate: False
soc: 0.0
socMax: 17.84
vehicleMass: 1980
vehicleTracking: True
--------------END CAR NAV--------------
--------------START CAR EFFICIENCY--------------
characteristicList: [{‘quantity’: 0, ‘characteristic’: ‘CONSUMPTION’}, {‘quantity’: 0, ‘characteristic’: ‘DRIVING_MODE’}, {‘quantity’: 0, ‘characteristic’: ‘CHARGING_BEHAVIOUR’}, {‘quantity’: 0, ‘characteristic’: ‘ELECTRIC_DRIVING’}]
efficiencyQuotient: 0
lastTripList: []
lifeTimeList: []
modelType: PHEV
--------------END CAR EFFICIENCY--------------
--------------START CAR SERVICEPARTNER--------------
businessFax: +43 (1) 740083009
businessPartnerId: 00005675

--------------END CAR SERVICEPARTNER--------------

Do you have a valid subscription for remote services? Are you able to control the heating with the mobile remote app on your phone?

The condition based services didn’t not match in our accounts, as you can see the subscription for service 00001 is marked as pending.

your account:

condition_based_services: 00032,OK,12.2018,348,;00001,PENDING,12.2018,1800,348,28,24;00100,OK,12.2022,50000,1788,56,48;0000`

my account:

condition_based_services:
00001,OK,2019-09,26000;00100,OK,2021-09,60000;00003,OK,2020-09,;00032,OK,2020-11,

Not able to update the iDrive in your car?

I will ask a friend of mine (he got a X4), may i can do some tests with his account.

not sure that i understand your post. question is easy: YES. i can remote control all features (windows, doors, horn, heating) with my mobile phone.
no idea what the rest of your post means ;), and what i can do against/for it.

i just realized that the codes for service subscriptions differs in our accounts, in yours there is a pending status for one service. I have no idea right now which number is for which service.

can you check the post of @danielperna84 and take a look at your software versions in your iDrive?