Volvo Oncall binding

Hi Michael,

here is the link to the repository

https://openhab.jfrog.io/openhab/libs-pullrequest-local/org/openhab/addons/bundles/org.openhab.binding.volvooncall/

Best regards

You’re right, I did normalize this information on the last update of the binding (small breaking change, sorry).
Here are the valid options :

<channel-type id="tyrePressure">
		<item-type>Number</item-type>
		<label>Tyre pressure</label>
		<category>alarm</category>
		<state readOnly="true">
			<options>
				<option value="0">Normal</option>
				<option value="1">Low Soft</option>
			</options>
		</state>

Excellent, thank you very much for the quick response!

I also have issues with action commands:

These items are updated properly:

Number			CarOdometer			"Laufleistung [%d km]"				(G_jdbc,G_Car,Group_HabPanel_Dashboard)						{channel="volvooncall:vehicle:pulpo:odometer#odometer"}
Number:Length   CarFuelL            "Reststrecke [%.1f]"                (G_jdbc,G_Car,Group_HabPanel_Dashboard)                     {channel="volvooncall:vehicle:pulpo:tank#distanceToEmpty"}

But when using:

val actions = getActions("volvooncall", "volvooncall:vehicle:pulpo")
actions.closeCarCommand()

I get:

Script execution of rule with UID 'car-4' failed: 'closeCarCommand' is not a member of 'org.openhab.core.thing.binding.ThingActions'

EDIT:
I just found out that actions are not required anymore.
You just need to send a command to start heater / lock car to the specific channel
CarLocked.sendCommand(ON)

1 Like

I just recognized that my XC60 went to Standby Mode.
https://www.volvocars.com/uk/support/topics/car-systems/volvo-on-call/volvo-on-call-standby-mode-stand-by
Is there any way to detect if the car goes into Standby?

For Openhab 3 will the volvo gateway actually detect items?

Or is manuall. Items required?

Hi folks,
I tried to install the binding yesterday and failed. The bridge is installed and online, but the car is not. In the log there is always the error that the car does not exist. I checked the VIN several times, but the VIN is correct.

Did you try using auto discovery or do you use a .things file ?

I use both. I created a thing with VS-Code and also with the Webinterface.
But both withe the error.

Sorry, I will not be able to help further - I do not own a volvo anymore, maybe some other volvo driver.

Did you found a solution? I just got a Volvo C40 2023, linked with the app of Volvo. That’s working, and I’m sure about the VIN number that way.

But when I try to add the binding, my account comes online, but he can’t find the car?
I tried web and text files.

Some extra info:

2022-09-14 09:13:24.107 [INFO ] [org.apache.felix.fileinstall        ] - Installing bundle org.openhab.binding.volvooncall / 3.4.0.202209042128
2022-09-14 09:13:24.402 [INFO ] [org.apache.felix.fileinstall        ] - Started bundle: file:/usr/share/openhab/addons/org.openhab.binding.volvooncall-3.4.0-SNAPSHOT.jar
2022-09-14 09:13:44.797 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'volvooncall:vocapi:c40' changed from UNINITIALIZED (HANDLER_MISSING_ERROR) to INITIALIZING
2022-09-14 09:13:45.116 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'volvooncall:vocapi:c40' changed from INITIALIZING to ONLINE: XXXXXX
2022-09-14 09:13:45.136 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'volvooncall:vehicle:c40:C40' changed from UNINITIALIZED (HANDLER_MISSING_ERROR) to INITIALIZING
2022-09-14 09:13:45.208 [WARN ] [oncall.internal.VolvoOnCallException] - Unhandled VoC error : VehicleDoesNotExist : The Vehicle does not exist
2022-09-14 09:13:45.210 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'volvooncall:vehicle:c40:C40' changed from INITIALIZING to OFFLINE (HANDLER_INITIALIZING_ERROR): VehicleDoesNotExist

1 Like

I don’t see much activity in this group, so hope that development group of his binding is still active. I just tried to install the binding and bridge is online, I added my new XC40 (model 2023) with correct VIN number but also have the VehicleDoesNotExist message. I’m running Openhab 3.3 (stable). What extra info is needed to continue troubleshooting?

2 Likes

Same problem here with a XC40 P6 Pure Electric (model 2022) with the 3.3 version of the Volvo on Call Add-on.

I think the issue of @mariobrx and me is related to the API limitations. Here, it is written that the API works only for a limited range of vehicles :

This API works for all connected vehicles up to model year 2021, excluding the XC40 Recharge BEV.

Is there another API elsewhere supporting the car released after 2021 ?

I opened an issue on GitHub related to this : https://github.com/openhab/openhab-addons/issues/13607

I have added some details to the issue about how to use the volvo connected car API. Hopefully someone can pickup development for a new binding based on the connected car API so more cars (including the ones after 2021 with Android Automotive) are supported.

2 Likes

Note that just by using items, rules and pages this can work quite well:

See my github:

I tried to install the Volvo Binding, bridge and API, but the ā€œCar does not existā€ (Volvo C40 P6)…
How did you manage to get all the channels of your XC40 ?

Volvo binding does not support Android Automotive cars (the new Pure Electric models like the XC40/C40 P6/P8). If you want to get this to work you will have to create the items, rules and page using the files in my github…

Thank you for your answer.
I tried and succeed in creating the page. But for the items and rules, i’m afraid i’m not an expert user of openHab enough to deal with it…
Too bad. I will have to stick with the poor privacy app Volvo supplies.

Hey Nika,

I tried it, but I’m afraid I need some extra explanation in ā€˜Readme’.
I’ve added all files, and added my username, password and VIN throught the widget page. Now I see every 5 minutes in my log:

2023-04-07 17:15:01.118 [INFO ] [org.openhab.core.model.script.Volvo ] - token_type = {"access_token":"eyJhbGciOiJSUzI1NiIs<knip>NR5jd","token_type":"Bearer","expires_in":1799}
2023-04-07 17:15:01.119 [INFO ] [org.openhab.core.model.script.Volvo ] - expires_in = {"access_token":"eyJhbGciOiJSUzI1NiIs<knip>giIG7w2w","refresh_token":"NLYNlze<knip>hiw.mNR5jd","token_type":"Bearer","expires_in":1799}
2023-04-07 17:15:01.122 [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'volvo-6' failed: For input string: "{"access_token":"eyJhbGciOiJSUzI1NiIs<knp>giIG7w2w","refresh_token":"NLYNlze<knp>hiw.mNR5jd","token_type":"Bearer","expires_in":1799}" in volvo

In the log, the part are pieces from the token I removed. Not sure how ā€˜privacy’ important this is.

I’ve got a Volvo C40 Recharge 2023. Not sure how important this is for the script.

Let me know if I do something wrong, if I can test something, if…

And thanks for your work so far!!!