Hello,
J’ai fini par avoir un truc acceptable pour la carte de mon robot tondeuse, du coup, si ça peut servir à quelqu’un d’autre.
type: entities
title: ' Robonect'
show_header_toggle: false
entities:
- type: custom:hui-vertical-stack-card
cards:
- type: horizontal-stack
cards:
- type: picture
style: |
ha-card {
width: 80%;
background: none;
box-shadow: none;
}
image: /local/images/devices/robonect.png
- type: entities
entities:
- entity: sensor.robonect_status_plain
type: custom:multiple-entity-row
name: Etat
icon: mdi:list-status
- entity: sensor.robonect_battery
name: Batterie
- type: entities
entities:
- entity: sensor.robonect_time_in_current_status_friendly
name: Durée état actuel
icon: mdi:timer
- entity: sensor.robonect_operation_hours_friendly
name: Temps de fonctionnement
icon: mdi:content-cut
- entity: sensor.robonect_stopped_friendly
icon: mdi:lock
- entity: sensor.robonect_blade_quality
icon: mdi:saw-blade
name: Qualité des lames
- entity: sensor.robonect_blade_usage_friendly
icon: mdi:calendar
name: Ancienneté des lames
Forcement il y aussi les sensors qui vont avec
- platform: mqtt
state_topic: "robonect/mower/battery/charge"
name: "robonect Battery"
unit_of_measurement: "%"
device_class: battery
- platform: mqtt
state_topic: "robonect/mower/stopped"
name: "robonect Stopped"
- platform: template
sensors:
robonect_stopped_friendly:
friendly_name: "Status verrouillage"
value_template: >
{% if is_state("sensor.robonect_mower_stopped", "true") %}
Actif
{% else %}
Inactif
{% endif %}
- platform: mqtt
state_topic: "robonect/wlan/rssi"
name: "robonect wifi signal"
unit_of_measurement: "dBm"
- platform: mqtt
state_topic: "robonect/mower/status"
name: "robonect status raw"
- platform: mqtt
state_topic: "robonect/mower/status/duration"
name: "robonect time in current status"
unit_of_measurement: "minutes"
- platform: mqtt
state_topic: "robonect/mower/status/plain"
name: "robonect status plain"
- platform: template
sensors:
robonect_time_in_current_status_friendly:
value_template: >
{% set time=states("sensor.robonect_time_in_current_status")|int*60 %}
{% set minutes = ((time % 3600) / 60) | int %}
{% set hours = ((time % 86400) / 3600) | int %}
{% set days = (time / 86400) | int %}
{%- if time < 60 -%}
Moins d'un minute
{%- else -%}
{%- if days > 0 -%}
{%- if days == 1 -%}
1 jour
{%- else -%}
{{ days }} jours
{%- endif -%}
{%- endif -%}
{%- if hours > 0 -%}
{%- if days > 0 -%}
{{ ', ' }}
{%- endif -%}
{%- if hours == 1 -%}
1 heure
{%- else -%}
{{ hours }} heures
{%- endif -%}
{%- endif -%}
{%- if minutes > 0 -%}
{%- if days > 0 or hours > 0 -%}
{{ ', ' }}
{%- endif -%}
{%- if minutes == 1 -%}
1 minute
{%- else -%}
{{ minutes }} minutes
{%- endif -%}
{%- endif -%}
{%- endif -%}
- platform: mqtt
state_topic: "robonect/mower/mode"
name: "robonect mode raw"
- platform: mqtt
state_topic: "robonect/mower/statistic/hours"
name: "robonect Operation Hours"
unit_of_measurement: "heures"
icon: mdi:timer-sand
- platform: template
sensors:
robonect_operation_hours_friendly:
value_template: >
{% set time=states("sensor.robonect_operation_hours")|int*60 %}
{% set minutes = ((time % 3600) / 60) | int %}
{% set hours = ((time % 86400) / 3600) | int %}
{% set days = (time / 86400) | int %}
{%- if time < 60 -%}
Moins d'un minute
{%- else -%}
{%- if days > 0 -%}
{%- if days == 1 -%}
1 jour
{%- else -%}
{{ days }} jours
{%- endif -%}
{%- endif -%}
{%- if hours > 0 -%}
{%- if days > 0 -%}
{{ ', ' }}
{%- endif -%}
{%- if hours == 1 -%}
1 heure
{%- else -%}
{{ hours }} heures
{%- endif -%}
{%- endif -%}
{%- if minutes > 0 -%}
{%- if days > 0 or hours > 0 -%}
{{ ', ' }}
{%- endif -%}
{%- if minutes == 1 -%}
1 minute
{%- else -%}
{{ minutes }} minutes
{%- endif -%}
{%- endif -%}
{%- endif -%}
- platform: mqtt
state_topic: "robonect/health/voltage/int33"
name: "robonect Operating Voltage Robonect"
unit_of_measurement: "V"
- platform: mqtt
state_topic: "robonect/health/voltage/ext33"
name: "robonect Operating Voltage Mower"
unit_of_measurement: "V"
- platform: mqtt
state_topic: "robonect/health/voltage/batt"
name: "robonect Battery Voltage"
unit_of_measurement: "V"
- platform: mqtt
state_topic: "robonect/mower/blades/quality"
name: "robonect blade quality"
unit_of_measurement: "%"
- platform: mqtt
state_topic: "robonect/mower/blades/days"
name: "robonect blade usage days"
unit_of_measurement: "jours"
- platform: mqtt
state_topic: "robonect/mower/blades/hours"
name: "robonect blade usage hours"
unit_of_measurement: "heures"
- platform: template
sensors:
robonect_blade_usage_friendly:
friendly_name: "Durée utilisation des lames"
value_template: >
{% if states("sensor.robonect_blade_usage_days")|int == 1 %}
{{ states("sensor.robonect_blade_usage_days") }} Jour
{% elif states("sensor.robonect_blade_usage_hours")|int >1 %}
{{ states("sensor.robonect_blade_usage_days") }} Jours
{% else -%}
Moins d'un jour
{%- endif %}
et l’image détourée