Bonjour,
Étant toujours un grand débutant, je ne sais pas trop comment faire.
J’ai une mushroom-light-card afin de régler la vitesse du ventilateur de mon Raspberry.
Le code est si dessous.
Pour faire animer l’icône, c’est ok. Pour l’agrandir également.
Mais je tiens compte pour cela de l’état On/Off.
Ce que j’aimerai, c’est de pouvoir récupérer la valeur en pourcentage afin de changer la couleur de l’icône et du slider.
Genre de 0 à 50% en bleu, de 50 à 80 en orange et de 80 à 100 en rouge.
Je vous remercie
Pour l’instant j’ai ça, et en vrai ça tourne lol
type: custom:mushroom-light-card
entity: light.rpi_cooling_fan
icon: mdi:fan
fill_container: true
show_brightness_control: true
name: Ventilateur
icon_color: light-green
secondary_info: state
icon_type: icon
use_light_color: true
show_color_temp_control: false
layout: horizontal
primary_info: name
collapsible_controls: false
show_color_control: true
card_mod:
style:
mushroom-shape-icon$: |
ha-icon {
{% if is_state('light.rpi_cooling_fan', 'on') %}
--icon-animation: spin 1.6s linear infinite;
--icon-color: white;
{% endif %}
}
.shape {
--shape-color: none;
--icon-symbol-size: 1.5em;
.: |
:host {
ha-card {
height: 65px !important;
font-family: Days One;
--card-primary-font-size: 0.9rem;
}
Salut,
C’est pas le sujet mais pourquoi une mushroom-light-card
alors qu’il y a une mushroom-fan-card
?
1 « J'aime »
Herbs
Mai 11, 2023, 7:22
3
Salut @maxhome
Voilà :
type: custom:mushroom-fan-card
entity: fan.ventilateurs_baie
icon_animation: true
fill_container: true
show_percentage_control: true
hold_action:
action: none
double_tap_action:
action: none
layout: horizontal
tap_action:
action: none
card_mod:
style:
mushroom-card .actions mushroom-fan-percentage-control$: |
mushroom-slider {
{% if state_attr('fan.ventilateurs_baie', 'percentage') | float >= 80 %}
--main-color: rgb(220,20,60) !important;
--bg-color: rgba(220,20,60,0.2) !important;
{% elif state_attr('fan.ventilateurs_baie', 'percentage') | float >= 60 %}
--main-color: coral !important;
--bg-color: rgba(255,127,80,0.2) !important;
{% elif state_attr('fan.ventilateurs_baie', 'percentage') | float > 0 %}
--main-color: aqua !important;
--bg-color: rgba(0,255,255,0.2) !important;
{% else %}
--main-color: white !important;
--bg-color: rgba(255,255,255,0.2) !important;
{% endif %}
}
Je te laisse adapter les couleurs à ta guise
1 « J'aime »
Merci Herbs pour ta réponse.
Cela ne peut pas fonctionner dans mon cas.
En effet dans ma configuration j’ai cela:
# Raspberry configuration Fan
light:
- platform: rpi_gpio_pwm
leds:
- name: RPI Cooling Fan
pin: 14
Donc c’est pour cela que j’ai commencé à travailler avec la card light
Herbs
Mai 11, 2023, 8:25
5
Ok, donc tu as une correspondance (j’en sais rien exemple au hasard) % de « brightness » / fréquence de rotation du ventilo ?
Herbs:
% de « brightness
Oui je pense que le % que je vois correspond au % de « brightness mais dans mon cas, effectivement, cela régule la vitesse de mon ventilo.
Mais je ne sais pas comment récupérer ce fameux pourcentage, cette valeur
Herbs
Mai 11, 2023, 8:34
7
Dans les outils de dev dans l’onglet « état » essaie de voir ce que remonte le sensor.
Un peu comme ça :
Selon ce que ça remonte on pourra peut-être faire qqc
La brillance apparemment.
Je suis à 50% donc 128
Bon après c’est ton script qui force le type light …
6/On créer un ficher texte et colle ce code:
fan_speed = data.get("fan_speed")
service_data = {"entity_id": "light.rpi_cooling_fan", "brightness": fan_speed}
hass.services.call("light", "turn_on", service_data)
Bonsoir Pulpy, oui tu as raison, c’est surtout que je ne savais pas faire autrement donc j’ai suivi ce tuto.
Je suis un noob
Donc voila pourquoi j’ai ça dans le configuration.yaml
Tu dois pouvoir adapter :
fan au lieu de light
percentage au lieu de brigthness
Mais je ne me sers pas de mes scripts python dans ma card?
Je comprends pas tout là.
Mon problème n’est-il pas dans mon configuration.yaml
puisqu’il définit le type de l’entité non?
Si je dis une bêtise, ne pas hésitez à me reprendre lol, j’apprends
il faut aligner le nommage de l’entité dans la configuration ET dans le script.
Le script capte la valeur et la pousse dans l’entité, puis la carte affiche l’entité. Le script ne fait rien dans la carte directement
DOnc mon 1er problème est dans la Conf.
je ne sais pas comment remplacer ça
light:
- platform: rpi_gpio_pwm
leds:
- name: RPI Cooling Fan
pin: 14
par une sorte de
fan:
- platform: rpi_gpio_pwm
Fans:
- name: RPI Cooling Fan
pin: 14
Je ne connais pas la syntaxe
Herbs
Mai 11, 2023, 8:59
15
Je ne suis pas certain qu’on puisse déclarer un « fan » comme on déclare une « light ».
En tout cas dans la doc c’est pas préciser, sauf en mode « Template Fan »
Il faudrait que @WarC0zes nous explique comment il en est arrivé à utiliser cette méthode.
Après avoir lu pas mal de posts, c’est pour ça que je me suis rabattu sur cette « light » et qui fonctionne bien.
En tout cas merci à vous 2 pour votre aide
Herbs
Mai 11, 2023, 9:08
17
Faudrait quand même creuser la piste de @Pulpy-Luke
En attendant, voilà le code adapter à une carte « mushroom-light » :
type: custom:mushroom-light-card
entity: light.yeelight_bureau
show_brightness_control: true
layout: horizontal
card_mod:
style:
mushroom-card .actions mushroom-light-brightness-control$: |
mushroom-slider {
{% if state_attr('light.yeelight_bureau', 'brightness') | int >= 200 %}
--main-color: rgb(220,20,60) !important;
--bg-color: rgba(220,20,60,0.2) !important;
{% elif state_attr('light.yeelight_bureau', 'brightness') | int >= 128 %}
--main-color: coral !important;
--bg-color: rgba(255,127,80,0.2) !important;
{% elif state_attr('light.yeelight_bureau', 'brightness') | int > 0 %}
--main-color: aqua !important;
--bg-color: rgba(0,255,255,0.2) !important;
{% else %}
--main-color: white !important;
--bg-color: rgba(255,255,255,0.2) !important;
{% endif %}
}
Tu es au top, c’est nickel.
Merci beaucoup, j’étais pas prêt d’y arriver seul…
Ce qui me manque c’est de connaitre les attributs des « objets »
mushroom-light-brightness-control
ça je ne savais pas où chercher.
En tout cas, encore un grand merci.
par contre ça ne change pas la couleur de l’icône? ou j’ai fait une erreur?
Herbs
Mai 11, 2023, 9:24
19
Démo rapide :
Ça fonctionne pas à tous les coup de manière aussi simple.
Je te renvoie vers la vidéo de @Clemalex pour en savoir plus
Pour l’icône je te mets sur la piste :
type: custom:mushroom-light-card
entity: light.yeelight_bureau
show_brightness_control: true
layout: horizontal
card_mod:
style:
mushroom-card .actions mushroom-light-brightness-control$: |
mushroom-slider {
{% if state_attr('light.yeelight_bureau', 'brightness') | float >= 200 %}
--main-color: rgb(220,20,60) !important;
--bg-color: rgba(220,20,60,0.2) !important;
{% elif state_attr('light.yeelight_bureau', 'brightness') | float >= 128 %}
--main-color: coral !important;
--bg-color: rgba(255,127,80,0.2) !important;
{% elif state_attr('light.yeelight_bureau', 'brightness') | float > 0 %}
--main-color: aqua !important;
--bg-color: rgba(0,255,255,0.2) !important;
{% else %}
--main-color: white !important;
--bg-color: rgba(255,255,255,0.2) !important;
{% endif %}
}
.: |
mushroom-shape-icon {
--shape-color: transparent !important;
--icon-color: rgb(0,255,0) !important;
--shape-color-disabled: transparent !important;
}
Donc on a :
–shape-color => la couleur du halo à l’état ‹ on ›
–icon-color => bon là je crois que c’est assez explicite
–shape-color-disabled => la couleur du halo à l’état ‹ off ›
Bref à toi de jouer avec les templates maintenant
Oh génial tout simplement.
Des cours en ligne…
Merci beaucoup encore et encore.
Bonne fin de soirée à toi