@@ -276,54 +276,61 @@ defmodule TeslaMate.Mqtt.PubSub.HomeAssistant do
276276 name: "Power" ,
277277 device_class: "power" ,
278278 unit_of_measurement: "kW" ,
279- icon: "mdi:flash"
279+ icon: "mdi:flash" ,
280+ state_class: "measurement"
280281 } } ,
281282 { "sensor" , "speed" ,
282283 % {
283284 state_topic_key: :speed ,
284285 name: "Speed" ,
285286 device_class: "speed" ,
286287 unit_of_measurement: "km/h" ,
287- icon: "mdi:speedometer"
288+ icon: "mdi:speedometer" ,
289+ state_class: "measurement"
288290 } } ,
289291 { "sensor" , "heading" ,
290292 % {
291293 state_topic_key: :heading ,
292294 name: "Heading" ,
293295 unit_of_measurement: "°" ,
294- icon: "mdi:compass"
296+ icon: "mdi:compass" ,
297+ state_class: "measurement_angle"
295298 } } ,
296299 { "sensor" , "elevation" ,
297300 % {
298301 state_topic_key: :elevation ,
299302 name: "Elevation" ,
300303 device_class: "distance" ,
301304 unit_of_measurement: "m" ,
302- icon: "mdi:image-filter-hdr"
305+ icon: "mdi:image-filter-hdr" ,
306+ state_class: "measurement"
303307 } } ,
304308 { "sensor" , "inside_temp" ,
305309 % {
306310 state_topic_key: :inside_temp ,
307311 name: "Inside Temp" ,
308312 device_class: "temperature" ,
309313 unit_of_measurement: "°C" ,
310- icon: "mdi:thermometer-lines"
314+ icon: "mdi:thermometer-lines" ,
315+ state_class: "measurement"
311316 } } ,
312317 { "sensor" , "outside_temp" ,
313318 % {
314319 state_topic_key: :outside_temp ,
315320 name: "Outside Temp" ,
316321 device_class: "temperature" ,
317322 unit_of_measurement: "°C" ,
318- icon: "mdi:thermometer-lines"
323+ icon: "mdi:thermometer-lines" ,
324+ state_class: "measurement"
319325 } } ,
320326 { "sensor" , "odometer" ,
321327 % {
322328 state_topic_key: :odometer ,
323329 name: "Odometer" ,
324330 device_class: "distance" ,
325331 unit_of_measurement: "km" ,
326- icon: "mdi:counter"
332+ icon: "mdi:counter" ,
333+ state_class: "total_increasing"
327334 } } ,
328335 { "sensor" , "est_battery_range" ,
329336 % {
@@ -355,15 +362,17 @@ defmodule TeslaMate.Mqtt.PubSub.HomeAssistant do
355362 name: "Battery Level" ,
356363 device_class: "battery" ,
357364 unit_of_measurement: "%" ,
358- icon: "mdi:battery-80"
365+ icon: "mdi:battery-80" ,
366+ state_class: "measurement"
359367 } } ,
360368 { "sensor" , "usable_battery_level" ,
361369 % {
362370 state_topic_key: :usable_battery_level ,
363371 name: "Usable Battery Level" ,
364372 device_class: "battery" ,
365373 unit_of_measurement: "%" ,
366- icon: "mdi:battery-80"
374+ icon: "mdi:battery-80" ,
375+ state_class: "measurement"
367376 } } ,
368377 { "sensor" , "charge_energy_added" ,
369378 % {
@@ -380,15 +389,17 @@ defmodule TeslaMate.Mqtt.PubSub.HomeAssistant do
380389 name: "Charge Limit Soc" ,
381390 device_class: "battery" ,
382391 unit_of_measurement: "%" ,
383- icon: "mdi:battery-charging-100"
392+ icon: "mdi:battery-charging-100" ,
393+ state_class: "measurement"
384394 } } ,
385395 { "sensor" , "charger_actual_current" ,
386396 % {
387397 state_topic_key: :charger_actual_current ,
388398 name: "Charger Actual Current" ,
389399 device_class: "current" ,
390400 unit_of_measurement: "A" ,
391- icon: "mdi:lightning-bolt"
401+ icon: "mdi:lightning-bolt" ,
402+ state_class: "measurement"
392403 } } ,
393404 { "sensor" , "charger_phases" ,
394405 % { state_topic_key: :charger_phases , name: "Charger Phases" , icon: "mdi:sine-wave" } } ,
@@ -398,22 +409,24 @@ defmodule TeslaMate.Mqtt.PubSub.HomeAssistant do
398409 name: "Charger Power" ,
399410 device_class: "power" ,
400411 unit_of_measurement: "kW" ,
401- icon: "mdi:lightning-bolt"
412+ icon: "mdi:lightning-bolt" ,
413+ state_class: "measurement"
402414 } } ,
403415 { "sensor" , "charger_voltage" ,
404416 % {
405417 state_topic_key: :charger_voltage ,
406418 name: "Charger Voltage" ,
407419 device_class: "voltage" ,
408420 unit_of_measurement: "V" ,
409- icon: "mdi:lightning-bolt"
421+ icon: "mdi:lightning-bolt" ,
422+ state_class: "measurement"
410423 } } ,
411424 { "sensor" , "scheduled_charging_start_time" ,
412425 % {
413426 state_topic_key: :scheduled_charging_start_time ,
414427 name: "Scheduled Charging Start Time" ,
415428 device_class: "timestamp" ,
416- icon: "mdi:clock-outline"
429+ icon: "mdi:clock-outline" ,
417430 } } ,
418431 { "sensor" , "time_to_full_charge" ,
419432 % {
@@ -431,31 +444,35 @@ defmodule TeslaMate.Mqtt.PubSub.HomeAssistant do
431444 name: "TPMS Pressure Front Left" ,
432445 device_class: "pressure" ,
433446 unit_of_measurement: "bar" ,
434- icon: "mdi:car-tire-alert"
447+ icon: "mdi:car-tire-alert" ,
448+ state_class: "measurement"
435449 } } ,
436450 { "sensor" , "tpms_pressure_fr" ,
437451 % {
438452 state_topic_key: :tpms_pressure_fr ,
439453 name: "TPMS Pressure Front Right" ,
440454 device_class: "pressure" ,
441455 unit_of_measurement: "bar" ,
442- icon: "mdi:car-tire-alert"
456+ icon: "mdi:car-tire-alert" ,
457+ state_class: "measurement"
443458 } } ,
444459 { "sensor" , "tpms_pressure_rl" ,
445460 % {
446461 state_topic_key: :tpms_pressure_rl ,
447462 name: "TPMS Pressure Rear Left" ,
448463 device_class: "pressure" ,
449464 unit_of_measurement: "bar" ,
450- icon: "mdi:car-tire-alert"
465+ icon: "mdi:car-tire-alert" ,
466+ state_class: "measurement"
451467 } } ,
452468 { "sensor" , "tpms_pressure_rr" ,
453469 % {
454470 state_topic_key: :tpms_pressure_rr ,
455471 name: "TPMS Pressure Rear Right" ,
456472 device_class: "pressure" ,
457473 unit_of_measurement: "bar" ,
458- icon: "mdi:car-tire-alert"
474+ icon: "mdi:car-tire-alert" ,
475+ state_class: "measurement"
459476 } } ,
460477
461478 # TPMS pressure (psi) - derived via value_template from the bar topic
@@ -467,7 +484,8 @@ defmodule TeslaMate.Mqtt.PubSub.HomeAssistant do
467484 unit_of_measurement: "psi" ,
468485 icon: "mdi:car-tire-alert" ,
469486 value_template: "{{ (value | float * 14.50377) | round(2) }}" ,
470- suggested_display_precision: 2
487+ suggested_display_precision: 2 ,
488+ state_class: "measurement"
471489 } } ,
472490 { "sensor" , "tpms_pressure_fr_psi" ,
473491 % {
@@ -477,7 +495,8 @@ defmodule TeslaMate.Mqtt.PubSub.HomeAssistant do
477495 unit_of_measurement: "psi" ,
478496 icon: "mdi:car-tire-alert" ,
479497 value_template: "{{ (value | float * 14.50377) | round(2) }}" ,
480- suggested_display_precision: 2
498+ suggested_display_precision: 2 ,
499+ state_class: "measurement"
481500 } } ,
482501 { "sensor" , "tpms_pressure_rl_psi" ,
483502 % {
@@ -487,7 +506,8 @@ defmodule TeslaMate.Mqtt.PubSub.HomeAssistant do
487506 unit_of_measurement: "psi" ,
488507 icon: "mdi:car-tire-alert" ,
489508 value_template: "{{ (value | float * 14.50377) | round(2) }}" ,
490- suggested_display_precision: 2
509+ suggested_display_precision: 2 ,
510+ state_class: "measurement"
491511 } } ,
492512 { "sensor" , "tpms_pressure_rr_psi" ,
493513 % {
@@ -497,7 +517,8 @@ defmodule TeslaMate.Mqtt.PubSub.HomeAssistant do
497517 unit_of_measurement: "psi" ,
498518 icon: "mdi:car-tire-alert" ,
499519 value_template: "{{ (value | float * 14.50377) | round(2) }}" ,
500- suggested_display_precision: 2
520+ suggested_display_precision: 2 ,
521+ state_class: "measurement"
501522 } } ,
502523
503524 # --- Active route sensors (derived from the JSON active_route topic) ---
0 commit comments