Yeah, Iâll be trying to get an appointment with my car dealer to get this sorted out later today. Keep your fingers crossed that it will help! Otherwise my trust in this car will be more than just a little bit disturbed. I cannot rely on a car that occasionally just refuses to run with no way for me or even my dealer to fix it because it is a software issue and âVolvo is working to fix the problemâ (has been for ages). Because I know what that means in older companies that keep running so secretively. They all could take a page from Teslaâs book. Say what you will about the carsâ hardware, but at least the software seems to be pretty good.
I work with Volvo cars and we have looked at the traffic when you do a âforced dataâ and there are no traffic going to the car. Only to the cloud.
If you make a lock/unlock command, of course communication goes to the car.
I am seeing @thewindev has more sensors than my vehicle such as the charging_system_status
. Why is this? I have an XC90 2023 and using the latest version
The Volvo Energy API is enabled only in EMEA (Europe, Middle East, Africa), so if youâre in the North America or Asia/Pacific regions, youâre out of luck. At least until Volvo gets its act together!
I have a C40 fully electric in North America, and the only energy-related sensor I have is the batteryâs state of charge in percent.
Yup that checks out! Thanks
Going to share my dashboard too that was inspired by @thewindev but more minimalist approach
Dependencies:
Some elements only show up when a state is detected, i.e. you only get yellow triangle when your car needs service
device_tracker.tina_car_tracker
is a BLE beacon that tracks the car. Might be able to swap this with a location binary_sensor
, if you get that metric, to determine if car is Home
sensor.cph50_charging_status
and sensor.cph50_charging_cable
is my Level 2 Charging Station at home. I dont get electric metrics on my Volvo since Iâm in North America, so I use Chargepoint integration instead
Stylizing picture-elements
cards are tricky, this helped a lot: Styling elements in Picture elements card: a small tutorial - #15 by Ildar_Gabdullin
- type: 'custom:vertical-stack-in-card'
cards:
- type: picture-elements
entity: binary_sensor.volvo_yv4h600n7p1955232_engine_state
state_filter:
- Not Running: grayscale(100%)
image: /local/img/volvo_exterior.png
style: |
ha-card {
{% if not is_state('sensor.volvo_yv4h600n7p1955232_service_warning_status', 'NORMAL') %}
--service-warning-visible: block;
{% else %}
--service-warning-visible: none;
{% endif %}
{% if not is_state('device_tracker.tina_car_tracker', 'home') %}
--home-visible: none;
{% else %}
--home-visible: block;
{% endif %}
{% if is_state('device_tracker.tina_car_tracker', 'home') %}
--home-off-visible: none;
{% else %}
--home-off-visible: block;
{% endif %}
}
elements:
- type: state-icon
entity: switch.volvo_yv4h600n7p1955232_climate_status
style:
top: 52%
left: 22%
transform: scale(2.0,2.0)
filter: drop-shadow(1px 1px 1px black)
color: black
- type: state-icon
entity: lock.volvo_yv4h600n7p1955232_lock_status
style:
top: 52%
left: 47%
transform: scale(2.0,2.0)
filter: drop-shadow(1px 1px 1px black)
- type: state-icon
entity: binary_sensor.volvo_yv4h600n7p1955232_engine_state
style:
top: 52%
left: 72%
transform: scale(2.0,2.0)
filter: drop-shadow(1px 1px 1px black)
color: gray
- type: state-label
entity: sensor.volvo_yv4h600n7p1955232_distance_to_empty
prefix: 'Range: '
style:
top: 8%
left: 75%
color: white
filter: drop-shadow(1px 1px 1px black)
- type: state-icon
entity: sensor.volvo_yv4h600n7p1955232_service_warning_status
style:
top: 5%
left: 3%
transform: scale(2.0,2.0)
filter: drop-shadow(1px 1px 1px black)
'--paper-item-icon-color': orange
display: var(--service-warning-visible)
- type: icon
icon: mdi:home
style:
top: 5%
left: 90%
transform: scale(1.5,1.5)
color: rgba(var(--color-blue),1)
display: var(--home-visible)
opacity: 80%
- type: icon
icon: mdi:home-off
style:
top: 5%
left: 90%
transform: scale(1.5,1.5)
color: rgba(var(--color-red),1)
display: var(--home-off-visible)
opacity: 80%
- type: 'custom:bar-card'
entity: sensor.volvo_yv4h600n7p1955232_battery_charge_level
icon: mdi:battery-high
positions:
name: 'off'
icon: inside
severity:
- color: Red
from: 0
to: 25
- color: Orange
from: 26
to: 50
- color: Yellow
from: 51
to: 75
- color: Green
from: 76
to: 100
style: |-
#states {
padding-top: 0px;
padding-right: 0px;
padding-left: 0px;
padding-bottom: 1px;
}
bar-card-value {
font-weight: bold;
text-shadow: 1px 1px #0005;
font-size: 13px;
}
bar-card-currentbar {
border-radius: 0px;
}
bar-card-backgroundbar {
border-radius: 0px;
}
- type: 'custom:vertical-stack-in-card'
horizontal: true
cards:
- type: 'custom:button-card'
template: chip_icon_label
entity: sensor.cph50_charging_cable
label: '[[[ return entity.state ]]]'
state:
- operator: template
value: >
[[[
return entity.state != "Plugged In" && states['device_tracker.tina_car_tracker'].state == "home"
]]]
styles:
icon:
- animation: blink 5s ease infinite
- color: "rgba(var(--color-red),1)"
label:
- color: "rgba(var(--color-red),1)"
- type: 'custom:button-card'
template: chip_icon_label
entity: sensor.cph50_charging_status
label: >
[[[
return entity.state + ' - ' + states['sensor.cph50_power_output'].state + 'kW'
]]]
state:
- operator: template
value: '[[[ return entity.state == "Charging" ]]]'
styles:
icon:
- animation: blink 5s ease infinite
- color: "rgba(var(--color-green),1)"
label:
- color: "rgba(var(--color-green),1)"
- operator: template
value: '[[[ return entity.state != "Charging" ]]]'
styles:
card:
- display: none
- type: 'custom:button-card'
template: chip_icon_label
icon: mdi:car-door
entity: group.volvo_doors
label: >
[[[
if (entity.state == "on")
return "Doors Open"
return "Doors Closed"
]]]
state:
- value: "on"
styles:
icon:
- animation: blink 10s ease infinite
- color: "rgba(var(--color-red),1)"
label:
- color: "rgba(var(--color-red),1)"
- type: 'custom:button-card'
template: chip_icon_label
icon: mdi:window-closed-variant
entity: group.volvo_windows
label: >
[[[
if (entity.state == "on")
return "Windows Open"
return "Windows Closed"
]]]
state:
- value: "on"
icon: mdi:window-open-variant
styles:
icon:
- animation: blink 10s ease infinite
- color: "rgba(var(--color-red),1)"
label:
- color: "rgba(var(--color-red),1)"
Hope this gets some creative juices flowing!
Updated today (1.8.1) and addon fails to load -
Failed to save add-on configuration, Invalid list for option âvccapikeyâ in Volvo2Mqtt (982ee2c4_volvo2mqtt). Got {âupdateIntervalâ: 300, âbabelLocaleâ: âen_USâ, âTZâ: âAmerica/Chicagoâ, âdebugâ: False, âmqttâ: {âbrokerâ: âauto_brokerâ, âportâ: âauto_portâ, âusernameâ: âauto_userâ, âpasswordâ: âauto_passwordâ}, âvolvoDataâ: {âusernameâ: â@gmail.comâ, âpasswordâ: 'â, âvinâ: ââ, âvccapikeyâ: â*******************************â, âodometerMultiplierâ: 1, âaverageSpeedDividerâ: 1, âaverageFuelConsumptionMultiplierâ: 1}}
Verified key is correct. Any ideas?
Did you redact you vin or is there a typo in your config?
Edit: Look at releases for version 1.8.0. Itâs now a list
Yes, redacted for that post.
@Dielee I suggest capping the number of api keys to prevent abuse in v1.8.X, or maybe capping the interval?
Well, was the change you mentioned in 1.8.0. Though I was pretty sure I had already updated to that version without having to change the config. Thanks.
Same thing with mine. Latest update has killed it, rolling back now to see if it fixes it.
Yep, rolling back to 1.7.10 fixed it for me.
Jep, the intervall is already capped. I will cap the max amount of API keys to three.
Sorry Linus!
I only saw the v1.8.1 changelog and not v1.8.0.
Working now with the new vccapikey format. Cheers
I added some more info for the v1.8.1 release!
Can someone tell me what Iâm doing wrong? The Volvo ID and password are fine. Does the vccAPI Key still have to be published somewhere?
Thanks
I really like the looks of your card, I havenât done much on the UI side to my HA in years, but this got me a little inspired.
Mind sharing the YAML for this?
im having the same issue