ESPHome : ajout des entités génériques

Bonjour,

Après avoir lu le tuto ESPHome

J’ai voulu intégrer le code du paragraphe 5 pour ajouter les entités génériques tel que conseillé, mais il m’affiche l’erreur suivante :
ps : la ligne 43 correspond au premier « sensor: »

Question préalable, doit-on insérer ce code avant ou après la ligne « captive_portal: » du code d’origine (je l’ai mis après) ?

Merci pour votre aide,

# Entités génériques
binary_sensor:
    # statut
      - platform: status
        name: "Statut"

    sensor:
    # Qualité du signal
      - platform: wifi_signal
        name: "Signal Wifi"
        update_interval: 60s
    # Temps de fonctionnement
      - platform: uptime
        name: "Allumé depuis (s)"
        id: uptime_sec
       
    switch:
    # Bouton de redémarrage
      - platform: restart
        name: "Redémarrage"

    # Transformation des secondes en jours
    text_sensor:
      - platform: template
        name: "Allumé depuis (j)"
        lambda: |-
          int seconds = (id(uptime_sec).state);
          int days = seconds / (24 * 3600);
          seconds = seconds % (24 * 3600); 
          int hours = seconds / 3600;
          seconds = seconds % 3600;
          int minutes = seconds /  60;
          seconds = seconds % 60;
          return { (String(days) +"d " + String(hours) +"h " + String(minutes) +"m "+ String(seconds) +"s").c_str() };          
        icon: mdi:clock-start
        update_interval: 60s
# Fin Entités génériques

Bonjour @patrickp78
Je pense qu’il y a un souci d’indentation

Idem pour les autres lignes.
Bob

J’avais essayer de tout décaler en bloc sans résultat,
J’ai modifié comme ci-dessous, voici le message d’erreur

Effectivement il y a deux binary_sensor dans le code
Je vais en supprimer un et intégrer la plateforme sur l’autre…
idem pour sensor: , switch: et text_sensor:

Et là, ça marche !
Merci @Bob pour le coup de main.

captive_portal:

# Entités génériques
binary_sensor:
# statut
  - platform: status
    name: "Statut"

sensor:
# Qualité du signal
  - platform: wifi_signal
    name: "Signal Wifi"
    update_interval: 60s
# Temps de fonctionnement
  - platform: uptime
    name: "Allumé depuis (s)"
    id: uptime_sec
       
switch:
# Bouton de redémarrage
  - platform: restart
    name: "Redémarrage"

# Transformation des secondes en jours
text_sensor:
  - platform: template
    name: "Allumé depuis (j)"
    lambda: |-
      int seconds = (id(uptime_sec).state);
      int days = seconds / (24 * 3600);
      seconds = seconds % (24 * 3600); 
      int hours = seconds / 3600;
      seconds = seconds % 3600;
      int minutes = seconds /  60;
      seconds = seconds % 60;
      return { (String(days) +"d " + String(hours) +"h " + String(minutes) +"m "+ String(seconds) +"s").c_str() };          
    icon: mdi:clock-start
    update_interval: 60s
# Fin Entités génériques
1 « J'aime »

J’ajoute pratiquement toujours sur mes ESP32 :

web_server:
  port: 80

C’est pratique pour accéder via l’IP à la bête.
Je ne sais pas par contre si c’est gourmand mais je n’ai jamais eu de souci.
Et ça aussi pour vérifier l’interaction :

switch:
  - platform: gpio
    name: "Led bleu"
    id: led
    pin: 2

Bob

1 « J'aime »

Merci @Bob pour la belle bleue, mais je l’ai installée sur un esp 2102 et un miniS2 et je ne vois pas de led s’allumer… ça se passe toujours sur le pin 2 ?

  • platform: gpio
    name: « Led bleu »
    id: led
    pin: 2

il faut voir les spécificités de ton esp, ou plutôt de la carte sur laquelle est soudé ton esp.

1 « J'aime »

Sur un ESP32 « classique » 30 pin, oui la pin 2, j’ai trois type d’ESP32…
Je regarderai plus tard :wink:
Bob

En fait, sur l’esp32 2102, la led s’allume en rouge (et s’éteint aussitôt) quand on met le switch sur ON. Idem sur OFF
Intéressant effectivement pour vérifier la bonne connexion, mais y a t’il consommation de courant supplémentaire si on laisse le switch sur ON ?

Ce sujet a été automatiquement fermé après 2 jours. Aucune réponse n’est permise dorénavant.