seydx / homebridge-mercedesme

Mercedes plugin for homebridge
44 stars 4 forks source link

Tank at 0% — only for EVs? #25

Closed AdeTheux closed 3 years ago

AdeTheux commented 3 years ago

Thanks for v2, it's great! Just installed 2.0.5 to try the humidity sensor displaying tank level.

Describe the bug It always shows 0%.

To Reproduce Installed using README, then added all components via the MB console, and finally checked the humidity sensor in Home app. It's always at 0%.

image

Expected behavior I'm not actually sure it's supposed to show tank contents for non electric vehicles… but since it displays as "tank", I assume so.

Screenshots See above.

Additional context Homebridge 3.1.1 Mercedesme plugin 2.0.5

seydx commented 3 years ago

@AdeTheux

can u set debug to true in config and post your log and config pls

AdeTheux commented 3 years ago

Log:

[3/3/2021, 2:43:52 PM] [MercedesPlatform] AMG GLC 43: Get fuelstatus <success> https://api.mercedes-benz.com/vehicledata/v2/vehicles/<VIN>/containers/fuelstatus
[3/3/2021, 2:43:52 PM] [MercedesPlatform] AMG GLC 43: Get fuelstatus <response> ""
[3/3/2021, 2:43:52 PM] [MercedesPlatform] AMG GLC 43: Checking access token for vehiclelockstatus
[3/3/2021, 2:43:52 PM] [MercedesPlatform] AMG GLC 43: Access token NOT expired
[3/3/2021, 2:43:52 PM] [MercedesPlatform] AMG GLC 43: Get vehiclelockstatus <pending> https://api.mercedes-benz.com/vehicledata/v2/vehicles/<VIN>/containers/vehiclelockstatus
[3/3/2021, 2:43:53 PM] [MercedesPlatform] AMG GLC 43: Get vehiclelockstatus <success> https://api.mercedes-benz.com/vehicledata/v2/vehicles/<VIN>/containers/vehiclelockstatus
[3/3/2021, 2:43:53 PM] [MercedesPlatform] AMG GLC 43: Get vehiclelockstatus <response> [{"doorlockstatusvehicle":{"value":"2","timestamp":1614767682000}},{"doorlockstatusgas":{"value":"false","timestamp":1614767682000}},{"doorlockstatusdecklid":{"value":"false","timestamp":1614767682000}}]
[3/3/2021, 2:43:53 PM] [MercedesPlatform] AMG GLC 43: Checking access token for vehiclestatus
[3/3/2021, 2:43:53 PM] [MercedesPlatform] AMG GLC 43: Access token NOT expired
[3/3/2021, 2:43:53 PM] [MercedesPlatform] AMG GLC 43: Get vehiclestatus <pending> https://api.mercedes-benz.com/vehicledata/v2/vehicles/<VIN>/containers/vehiclestatus

So it seems to just get an empty response.

Config:

        {
            "platform": "MercedesPlatform",
            "name": "MercedesPlatform",
            "cars": [
                {
                    "name": "AMG GLC 43",
                    "clientID": "72...",
                    "clientSecret": "nj...",
                    "vin": "W...",
                    "humiditySensor": true,
                    "maxRange": 615,
                    "token": {
                        "access_token": "ey...",
                        "refresh_token": "ly...",
                        "token_type": "Bearer",
                        "expires_in": 7199,
                        "expires_at": "2021-03-03T13:53:24.109Z"
                    }
                }
            ],
            "debug": false
        },
seydx commented 3 years ago

@AdeTheux

Which model & year?

AdeTheux commented 3 years ago

@AdeTheux

Which model & year?

GLC 43 from Nov 2017.

seydx commented 3 years ago

@AdeTheux

Can you find your model and market in the list below?

https://developer.mercedes-benz.com/products/fuel_status/details

AdeTheux commented 3 years ago

@AdeTheux

Can you find your model and market in the list below?

https://developer.mercedes-benz.com/products/fuel_status/details

Model: GLC (X253), market is Switzerland (where I live) or Germany (where the car was bought new).

seydx commented 3 years ago

@AdeTheux

The response is only empty if the car didnt send any updates within 12 hours

Mercedes: The interface is a ISO 20078-compliant REST endpoint to query the latest data for a vehicle. If the vehicle did not send an update for a resource within 12 hours, the response will be empty.

In this case, the plugin will not update the battery/humdity sensor and will just use the last value. But since you did not have a correct last value, it is displayed as 0 for you. This is the last value that the plugin has from Homebridge.

Most of the time you can solve this by driving the car for a short time so that the car sends the data to the server

AdeTheux commented 3 years ago

Very clear, thanks for you quick help! And makes sense, the car hasn't run since Sunday evening. I'll drive tomorrow and will see how it behaves after that, but I guess you can close this one.

seydx commented 3 years ago

Aight. Feel free to open it again if the problem persists