Bonjour,
Liens vers le github : felix624/HomeAssistant at main · felix624/felix624 · GitHub
Après quelques mois sur le forum, j’ai décidé de présenter mon dashboard qui est minimaliste pour le moment mais chaque chose en son temps
Ps: ma configuration home assistant est entiérement décomposé (+infos sur ce lien merci a @Tank )
Fonctionnalités :
- Gestion des lumières et scénario (detecteur de mouvement…)
- Gestion infos générales: Saisons, levé /couché du soleil (angle, zenith…), éphemeride @papoo merci, astrologie, jours fériés, culture générale (sa ne fait pas de mal)+CAC40
- Gestion planning repas de la semaine
- Gestion du poste de télévision (Remote, ambilight, DLNA ect…)
- Gestion des volets roulants 4 Mode (je vous renvoie au liens du forum à ce sujet: Automatiser ses volets roulants en fonction du soleil été / hiver - #42 par titof2375) merci à @Yul pour le topic
- Gestion des batterie : super sujet (liens: Carte automatique pour suivi des batteries - #10 par Pulpy-Luke) merci @Pulpy-Luke
- Stations service: Essence/Diesel (voir lien: Récupérer les prix de carburants - #195 par Pbranly)
Automatisations:
- Purge de la BDD automatique
- Prise Lexman zigbee (toute appareil mobile connecté arrivant a 90% la prise s’éteint)
- Reboot auto de la prise du FAI si ping google ect… sans réponse. merci à @FillR2
- Gestion des volets 4 Mode (Normal, Auto froid, Auto chauf, Manuel)
- Notification Automatiques:
- Rafraichissement Nocturne / Matinal : Notification durant l’été quand il est conseillé d’ouvrir ou fermé les fenêtre
- Alerte Météo
- Anniversaire
- Poubelle
- Détection de mouvement
- Onduleur (si coupure de courant ou reprise)
- Fête du jour (éphéméride)
- Alerte pluie attendu dans l’heure et inversement
- Mise a jour dispo de HA ou HACS.
- Rafraichissement Nocturne / Matinal : Notification durant l’été quand il est conseillé d’ouvrir ou fermé les fenêtre
Bien d’autres fonction doivent arrivée:
- Mesure de la consommation (eau, elec, gaz…)
- Pilotage des volets (en cours)
- Capteur boîtes à lettre
ect…
Je vous avoue m’être inspiré de paradis artificiels avec certaines modifications.
Sujet / tuto rédiger:
Badge Applications : (me permet d’ouvrir des iframes)

Badge d’utilisateur:


Le graphique donnant la température intérieur / extérieur est liés a une automatisation merci à @papoo (lien du github: home-assistant-config/alerte_rafraichissement_nocturne.yaml at master · papo-o/home-assistant-config · GitHub) pour le rafraichissement nocturne ou j’ai combiné en 1 seul automatisation pour Nocturne et matinal la voici:
Input_datetime
############################################################
## SENSOR ##
############################################################
#sensor:
# - platform: min_max # https://www.home-assistant.io/integrations/min_max/
# name: "Température moyenne étage"
# type: mean
# entity_ids:
# - sensor.temperature_chambre_1
# - sensor.temperature_chambre_2
# - sensor.temperature_chambre_parents
# - sensor.temperature_douche
#
#
# - platform: min_max # https://www.home-assistant.io/integrations/min_max/
# name: "Température moyenne extérieure"
# type: mean
# entity_ids:
# - sensor.temperature_anemometre
# - sensor.temperature_exterieure_allee
# - sensor.temperature_exterieure_terrasse
##############################################################################################################
### INPUT_DATETIME #####################################################################################
##############################################################################################################
input_datetime:
# https://www.home-assistant.io/integrations/input_datetime/
##################################################################################
night_cooling_last_notification_sent:
has_date: true
morning_cooling_last_notification_sent:
has_date: true
Automatisation:
- id: Rafraîchissement Nocturne Matinal
alias: Rafraichissement Nocturne Matinal
trigger:
- platform: time_pattern
minutes: /5
seconds: 0
condition:
- condition: and
conditions:
- condition: template
value_template: '{{ now().month > 4 }}'
- condition: template
value_template: '{{ now().month < 10 }}'
action:
- choose:
- conditions:
- condition: template
value_template: "{{\n not is_state_attr('input_datetime.morning_cooling_last_notification_sent',
'day', now().day) \n}}"
- condition: template
value_template: '{{ states.sensor.temperature.state | float(0) <= (states.sensor.xxxx_temperature.state
| float(0) + 1) }}'
- condition: template
value_template: '{{ now().hour < 14 }}'
- condition: template
value_template: "{{\n not is_state_attr('input_datetime.morning_cooling_last_notification_sent',
'day', now().day) \n}}\n"
sequence:
- service: notify.notify
data_template:
message: "la Température intérieure {{ states.sensor.temperature.state | round
| int(0) }} °C\U0001F321️ est inférieur/égal à la température extérieure {{
states.sensor.xxx_temperature.state | round | int(0) }} °C\U0001F321️.
Fermeture des fenêtres recommandée \U0001FA9F"
- service: input_datetime.set_datetime
entity_id: input_datetime.morning_cooling_last_notification_sent
data_template:
date: '{{ now().strftime(''%Y-%m-%d'') }}'
- conditions:
- condition: template
value_template: '{{ (states.sensor.xxxx_temperature.state | float(0) ) >
21 }}'
- condition: template
value_template: '{{ states.sensor.temperature.state | float(0) > (states.sensor.xxx_temperature.state
| float(0) + 1) }}'
- condition: template
value_template: '{{ now().hour > 18 }}'
- condition: template
value_template: "{{\n not is_state_attr('input_datetime.night_cooling_last_notification_sent',
'day', now().day) \n}}\n"
sequence:
- service: notify.notify
data_template:
message: "la Température intérieure {{ states.sensor.temperature.state | round
| int(0) }} °C\U0001F321️ est superieure à la température extérieure {{ states.sensor.xxxx_temperature.state
| round | int(0) }} °C\U0001F321️. Ouverture des fenêtres recommandée \U0001FA9F"
- service: input_datetime.set_datetime
entity_id: input_datetime.night_cooling_last_notification_sent
data_template:
date: '{{ now().strftime(''%Y-%m-%d'') }}'
default: []
Page Informatique:
- regroupant : (Synology, Onduleur, Pi-hole, Reseau)
Energie: (interface à améliorer )
Energie obtenue au module supplémentaire: Enedis & GRDF (2MQTT)
liens:
- Enedisgateway2mqtt - #351 par Felix62
- GitHub - yukulehe/gazpar2mqtt: Python script to fetch GRDF's website data and publish data to a mqtt broker.
- Carte bien connue: Linky card encore merci @saniho
GitHub - saniho/content-card-linky: cardLinky comptatible with sensor apiEnedis - Gauge en barcard
GitHub - custom-cards/bar-card: Customizable Animated Bar card for Home Assistant Lovelace - graphique: apex
GitHub - RomRider/apexcharts-card: 📈 A Lovelace card to display advanced graphs and charts based on ApexChartsJS for Home Assistant
Page configuration:
peu fournit pour le moment mais reste très intuitif
- nouvelle fonction permettant d’envoyer des notifications sur apps mobile, google home alexa ect…
Groupes Cover:
cover:
############################################################
## COVERS GROUPS ##
############################################################
- platform: group
name: Volets de la maison
entities:
- cover.module_volet_salon
- cover.module_volet_sejour
- platform: group
name: Volets orientés sud
entities:
- cover.module_volet_salon
#- cover.module_volet_salon
- platform: group
name: Volets orientés ouest
entities:
- cover.module_volet_sejour
#- cover.module_volet_sejour
group:
############################################################
## ALL COVERS GROUPS ##
############################################################
all_covers_home:
name: Volets de la maison
entities:
- cover.module_volet_salon
- cover.module_volet_sejour
all_covers_sud:
name: Volets orientés sud
entities:
- cover.module_volet_salon
all_covers_ouest:
name: Volets orientés ouest
entities:
- cover.module_volet_sejour
############################################################
## COVER COUNT ##
############################################################
sensor:
- platform: template
sensors:
all_covers_home:
value_template: >
{{ states | selectattr('entity_id', 'in', state_attr('cover.volets_de_la_maison', 'entity_id')) |selectattr('state') | list | count}}
all_covers_sud:
value_template: >
{{ states | selectattr('entity_id', 'in', state_attr('cover.volets_orientes_sud', 'entity_id')) |selectattr('state') | list | count}}
all_covers_ouest:
value_template: >
{{ states | selectattr('entity_id', 'in', state_attr('cover.volets_orientes_ouest', 'entity_id')) |selectattr('state') | list | count}}
automation:
############################################################
## COVER COUNT UPDATE ##
############################################################
- alias: 'Mise a jour all_cover'
mode: single
max_exceeded: silent
initial_state: 'on'
trigger:
- platform: state
entity_id:
- group.all_covers_home
action:
- service: homeassistant.update_entity
data_template:
entity_id: group.all_covers_home
Binary _sensor:
############################
### BINARY_SENSOR ###
############################
binary_sensor:
- platform: threshold
name: "soleil volets sud"
upper: 250
lower: 90
entity_id: sensor.sunazimuth
- platform: threshold
name: "soleil volets ouest"
upper: 270
lower: 180
entity_id: sensor.sunazimuth
#on a donc créé une entité qui sera active si la valeur de sensor.sunazimuth est supérieure à 180 et inférieure à 270
Menu input_select: (configuration.yaml)
Ps: j’utilise personnelement la decomposition de mon fichier config.yaml grace à:
input_select: !include_dir_merge_named input_select/
Pour ceux qui l’intégre directement dans leur fichier configuration.yaml il vous faudra ajouter en debut de ligne inpu_select:
Comme ceci: voir sur le site officiel home assistant
# Example configuration.yaml entry
input_select:
who_cooks:
name: Who cooks today
options:
- Paulus
- Anne Therese
initial: Anne Therese
icon: mdi:panda
living_room_preset:
options:
- Visitors
- Visitors with kids
- Home Alone
############################
### Input_select ###
############################
mode_volet:
name: mode volet principale
options:
- Normal
- Auto chauf
- Auto froid
- Manuel
modevoletsud:
name: mode volet sud
options:
- Normal
- Auto chauf
- Auto froid
- Manuel
modevoletouest:
name: mode volet ouest
options:
- Normal
- Auto chauf
- Auto froid
- Manuel
Code de l’automatisation enfin
Petite resemblance:
alias: Volet
description: ''
trigger:
- platform: sun
event: sunrise
- platform: sun
event: sunset
- platform: state
entity_id:
- sensor.XX_weather_alert
attribute: Canicule
- platform: state
entity_id:
- input_select.mode_volet
id: Mode
for:
hours: 0
minutes: 0
seconds: 0
- platform: state
entity_id:
- sensor.time_2
condition: []
action:
- choose:
- conditions:
- condition: trigger
id: Mode
sequence:
- service: input_select.select_option
data_template:
entity_id:
- input_select.modevoletsud
- input_select.modevoletouest
option: '{{ states(''input_select.mode_volet'') }}'
- conditions:
- condition: sun
after: sunset
after_offset: 00:00:00
- condition: or
conditions:
- condition: state
entity_id: group.all_covers_ouest
state: open
- condition: state
entity_id: group.all_covers_sud
state: open
enabled: false
- condition: not
conditions:
- condition: state
entity_id: input_select.mode_volet
state: Manuel
sequence:
- service: cover.close_cover
data: {}
target:
entity_id:
- cover.volets_orientes_ouest
- cover.volets_orientes_sud
- conditions:
- condition: sun
after: sunrise
after_offset: 00:00:00
before: sunset
- condition: not
conditions:
- condition: state
state: 'on'
entity_id: binary_sensor.soleil_volets_ouest
- condition: state
entity_id: cover.volets_orientes_ouest
state: open
enabled: false
- condition: state
entity_id: input_select.modevoletouest
state: Auto froid
- condition: state
entity_id: sensor.XX_weather_alert
attribute: Canicule
state: Vert
sequence:
- service: cover.set_cover_position
data:
position: 100
target:
entity_id: cover.volets_orientes_ouest
- conditions:
- condition: sun
before: sunset
after: sunrise
after_offset: 00:00:00
- condition: not
conditions:
- condition: state
entity_id: binary_sensor.soleil_volets_sud
state: 'on'
- condition: state
state: open
entity_id: group.all_covers_sud
enabled: false
- condition: and
conditions:
- condition: state
entity_id: input_select.modevoletsud
state: Auto froid
- condition: state
entity_id: sensor.XX_weather_alert
attribute: Canicule
state: Vert
sequence:
- service: cover.set_cover_position
data:
position: 100
target:
entity_id: cover.volets_orientes_sud
- conditions:
- condition: state
entity_id: binary_sensor.soleil_volets_sud
state: 'on'
- condition: and
conditions:
- condition: state
entity_id: input_select.modevoletsud
state: Auto froid
- condition: device
device_id: 012fbd33f6b7cc0f9b5237f2a376a5a8
domain: cover
entity_id: cover.module_volet_salon
type: is_position
above: 50
sequence:
- service: cover.set_cover_position
data:
position: 0
target:
entity_id: cover.volets_orientes_sud
- conditions:
- condition: state
entity_id: binary_sensor.soleil_volets_ouest
state: 'on'
- condition: and
conditions:
- condition: state
entity_id: input_select.modevoletouest
state: Auto froid
- condition: state
state: open
entity_id: group.all_covers_ouest
enabled: false
sequence:
- service: cover.set_cover_position
data:
position: 0
target:
entity_id: cover.volets_orientes_ouest
- conditions:
- condition: state
state: Normal
entity_id: input_select.mode_volet
- condition: sun
before: sunset
after: sunrise
- condition: or
conditions:
- condition: state
entity_id: group.all_covers_sud
state: closed
- condition: state
entity_id: group.all_covers_ouest
state: closed
enabled: false
sequence:
- service: cover.set_cover_position
data:
position: 100
target:
entity_id:
- cover.volets_orientes_ouest
- cover.volets_orientes_sud
- conditions:
- condition: sun
before: sunset
after: sunrise
- condition: state
state: Auto chauf
entity_id: input_select.mode_volet
- condition: or
conditions:
- condition: state
entity_id: group.all_covers_ouest
state: open
- condition: state
entity_id: group.all_covers_sud
state: open
enabled: false
sequence:
- service: cover.close_cover
data: {}
target:
entity_id:
- cover.volets_orientes_sud
- cover.volets_orientes_ouest
default: []